Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Game: Persona 5
- # Subject: File access log
- # Author: TGE
- p5_FileAccessLog: &p5_FileAccessLog
- # branch to trampoline
- - [ be32, 0x00AC0A78, 0x48B44ABF ] # bla 0xB44ABC
- - [ be32, 0x00AC0A7C, 0x60000000 ] # nop
- # trampoline
- # prologue
- - [ be32, 0x00B44ABC, 0xF821FF41 ] # stdu r1, -STACK_SIZE(r1)
- - [ be32, 0x00B44AC0, 0x7C0802A6 ] # mflr r0
- - [ be32, 0x00B44AC4, 0xF80100D0 ] # std r0, STACK_SIZE + 0x10(r1)
- # save volatile regs
- - [ be32, 0x00B44AC8, 0xF86100B8 ] # std r3, STACK_SIZE - 0x08(r1)
- - [ be32, 0x00B44ACC, 0xF88100B0 ] # std r4, STACK_SIZE - 0x10(r1)
- - [ be32, 0x00B44AD0, 0xF8A100A8 ] # std r5, STACK_SIZE - 0x18(r1)
- - [ be32, 0x00B44AD4, 0xF8C100A0 ] # std r6, STACK_SIZE - 0x20(r1)
- - [ be32, 0x00B44AD8, 0xF8E10098 ] # std r7, STACK_SIZE - 0x28(r1)
- - [ be32, 0x00B44ADC, 0xF9010090 ] # std r8, STACK_SIZE - 0x30(r1)
- - [ be32, 0x00B44AE0, 0xF9210088 ] # std r9, STACK_SIZE - 0x38(r1)
- - [ be32, 0x00B44AE4, 0xF9410080 ] # std r10, STACK_SIZE - 0x40(r1)
- - [ be32, 0x00B44AE8, 0xF9610078 ] # std r11, STACK_SIZE - 0x48(r1)
- - [ be32, 0x00B44AEC, 0xF9810070 ] # std r12, STACK_SIZE - 0x50(r1)
- # print file name
- - [ be32, 0x00B44AF0, 0x80630004 ] # lwz r3, 0x04(r3)
- - [ be32, 0x00B44AF4, 0x7C6307B4 ] # extsw r3, r3
- - [ be32, 0x00B44AF8, 0x48AD546F ] # bla PTR_PRINTF
- - [ be32, 0x00B44AFC, 0x60000000 ] # nop
- # print newline
- - [ be32, 0x00B44B00, 0x3C6000B9 ] # lis r3, PTR_NEWLINECHAR@ha
- - [ be32, 0x00B44B04, 0x30631820 ] # addic r3, r3, PTR_NEWLINECHAR@l
- - [ be32, 0x00B44B08, 0x48AD546F ] # bla PTR_PRINTF
- - [ be32, 0x00B44B0C, 0x60000000 ] # nop
- # restore volatile regs
- - [ be32, 0x00B44B10, 0xE86100B8 ] # ld r3, STACK_SIZE - 0x08(r1)
- - [ be32, 0x00B44B14, 0xE88100B0 ] # ld r4, STACK_SIZE - 0x10(r1)
- - [ be32, 0x00B44B18, 0xE8A100A8 ] # ld r5, STACK_SIZE - 0x18(r1)
- - [ be32, 0x00B44B1C, 0xE8C100A0 ] # ld r6, STACK_SIZE - 0x20(r1)
- - [ be32, 0x00B44B20, 0xE8E10098 ] # ld r7, STACK_SIZE - 0x28(r1)
- - [ be32, 0x00B44B24, 0xE9010090 ] # ld r8, STACK_SIZE - 0x30(r1)
- - [ be32, 0x00B44B28, 0xE9210088 ] # ld r9, STACK_SIZE - 0x38(r1)
- - [ be32, 0x00B44B2C, 0xE9410080 ] # ld r10, STACK_SIZE - 0x40(r1)
- - [ be32, 0x00B44B30, 0xE9610078 ] # ld r11, STACK_SIZE - 0x48(r1)
- - [ be32, 0x00B44B34, 0xE9810070 ] # ld r12, STACK_SIZE - 0x50(r1)
- # destroy stack frame
- - [ be32, 0x00B44B38, 0xE80100D0 ] # ld r0, STACK_SIZE + 0x10(r1)
- - [ be32, 0x00B44B3C, 0x7C0803A6 ] # mtlr r0
- - [ be32, 0x00B44B40, 0x382100C0 ] # addi r1, r1, STACK_SIZE
- # return
- - [ be32, 0x00B44B44, 0xFB2100F8 ] # std r25, 0xF8(r1)
- - [ be32, 0x00B44B48, 0xFAA100D8 ] # std r21, 0xD8(r1)
- - [ be32, 0x00B44B4C, 0x4E800020 ] # blr
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement