From 96d9708dcf20c7537773bbc67f171b68b00e36d3 Mon Sep 17 00:00:00 2001 From: Max Date: Wed, 23 Sep 2020 15:16:07 -0400 Subject: split ut_list, ut_LinkList, and ut_BinaryFileFormat --- asm/NW4R/ut_binaryFileFormat.s | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 asm/NW4R/ut_binaryFileFormat.s (limited to 'asm/NW4R/ut_binaryFileFormat.s') diff --git a/asm/NW4R/ut_binaryFileFormat.s b/asm/NW4R/ut_binaryFileFormat.s new file mode 100644 index 0000000..092a5cf --- /dev/null +++ b/asm/NW4R/ut_binaryFileFormat.s @@ -0,0 +1,39 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +.global IsValidBinaryFile__Q24nw4r2utFPCQ34nw4r2ut16BinaryFileHeaderUlUsUs +IsValidBinaryFile__Q24nw4r2utFPCQ34nw4r2ut16BinaryFileHeaderUlUsUs: +/* 80362CA4 0035E904 80 03 00 00 */ lwz r0, 0(r3) +/* 80362CA8 0035E908 7C 00 20 40 */ cmplw r0, r4 +/* 80362CAC 0035E90C 41 82 00 0C */ beq lbl_80362CB8 +/* 80362CB0 0035E910 38 60 00 00 */ li r3, 0 +/* 80362CB4 0035E914 4E 80 00 20 */ blr +lbl_80362CB8: +/* 80362CB8 0035E918 A0 03 00 04 */ lhz r0, 4(r3) +/* 80362CBC 0035E91C 28 00 FE FF */ cmplwi r0, 0xfeff +/* 80362CC0 0035E920 41 82 00 0C */ beq lbl_80362CCC +/* 80362CC4 0035E924 38 60 00 00 */ li r3, 0 +/* 80362CC8 0035E928 4E 80 00 20 */ blr +lbl_80362CCC: +/* 80362CCC 0035E92C A0 03 00 06 */ lhz r0, 6(r3) +/* 80362CD0 0035E930 7C 00 28 40 */ cmplw r0, r5 +/* 80362CD4 0035E934 41 82 00 0C */ beq lbl_80362CE0 +/* 80362CD8 0035E938 38 60 00 00 */ li r3, 0 +/* 80362CDC 0035E93C 4E 80 00 20 */ blr +lbl_80362CE0: +/* 80362CE0 0035E940 54 C4 1B 78 */ rlwinm r4, r6, 3, 0xd, 0x1c +/* 80362CE4 0035E944 80 A3 00 08 */ lwz r5, 8(r3) +/* 80362CE8 0035E948 38 04 00 10 */ addi r0, r4, 0x10 +/* 80362CEC 0035E94C 7C 05 00 40 */ cmplw r5, r0 +/* 80362CF0 0035E950 40 80 00 0C */ bge lbl_80362CFC +/* 80362CF4 0035E954 38 60 00 00 */ li r3, 0 +/* 80362CF8 0035E958 4E 80 00 20 */ blr +lbl_80362CFC: +/* 80362CFC 0035E95C A0 63 00 0E */ lhz r3, 0xe(r3) +/* 80362D00 0035E960 7C 06 18 50 */ subf r0, r6, r3 +/* 80362D04 0035E964 7C 63 33 38 */ orc r3, r3, r6 +/* 80362D08 0035E968 54 00 F8 7E */ srwi r0, r0, 1 +/* 80362D0C 0035E96C 7C 00 18 50 */ subf r0, r0, r3 +/* 80362D10 0035E970 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80362D14 0035E974 4E 80 00 20 */ blr -- cgit v1.2.3