wiki:psy/hax0r

Version 6 (modified by Edwin Eefting, 13 years ago) (diff)

--

RAM:004E003C superpassset:                           # CODE XREF: sub_4E0278+14p
RAM:004E003C
RAM:004E003C .set var_30, -0x30
RAM:004E003C .set var_4, -4
RAM:004E003C .set arg_4,  4
RAM:004E003C
RAM:004E003C                 stwu    %sp, -0x30(%sp)          // put %sp in adress (-0x30 + %sp) and substract 0x30 from sp after that
RAM:004E0040                 mflr    %r0                      // %r0 = %lr
RAM:004E0044                 stw     %r31, 0x30+var_4(%sp)    // var_4 = %r31 (backup?)
RAM:004E0048                 stw     %r0, 0x30+arg_4(%sp)     // arg_4 = %r0 (backup?)
RAM:004E004C                 mr      %r31, %sp                // %r31 = %sp
RAM:004E0050                 addi    %r0, %r31, 0x20          // %r0 = %r31+0x20
RAM:004E0054                 mr      %r3, %r0                 // %r3 = %r0
RAM:004E0058                 li      %r4, 0                   // %r4 = 0
RAM:004E005C                 li      %r5, 8                   // %r5 = 8
RAM:004E0060                 bl      sub_27BD8                // branch if LT =1 or EQ = 1
RAM:004E0064                 addi    %r0, %r31, 0x20
RAM:004E0068                 mr      %r3, %r0
RAM:004E006C                 bl      sub_4DFDF8
RAM:004E0070                 addi    %r0, %r31, 0x20
RAM:004E0074                 addi    %r3, %r31, 8
RAM:004E0078                 mr      %r4, %r0
RAM:004E007C                 li      %r5, 8
RAM:004E0080                 bl      sub_A78CEC
RAM:004E0084                 li      %r0, 0
RAM:004E0088                 stb     %r0, 0x18(%r31)
RAM:004E008C                 lis     %r9, 0x267 # 0x266D738
RAM:004E0090                 addi    %r3, %r9, -0x28C8 # 0x266D738
RAM:004E0094                 li      %r4, 0
RAM:004E0098                 li      %r5, 9
RAM:004E009C                 bl      sub_27BD8
RAM:004E00A0                 lis     %r9, 0x267 # 0x266D738
RAM:004E00A4                 addi    %r3, %r9, -0x28C8 # 0x266D738
RAM:004E00A8                 lis     %r9, ((a__super_0+0x10000)@h) # "__super"
RAM:004E00AC                 addi    %r4, %r9, -0x6830 # a__super_0
RAM:004E00B0                 li      %r5, 8
RAM:004E00B4                 bl      sub_2814C
RAM:004E00B8                 lis     %r9, 0x267 # 0x266D741
RAM:004E00BC                 addi    %r3, %r9, -0x28BF # 0x266D741
RAM:004E00C0                 li      %r4, 0
RAM:004E00C4                 li      %r5, 0x11
RAM:004E00C8                 bl      sub_27BD8
RAM:004E00CC                 lis     %r9, 0x267 # 0x266D741
RAM:004E00D0                 addi    %r3, %r9, -0x28BF # 0x266D741
RAM:004E00D4                 addi    %r4, %r31, 8
RAM:004E00D8                 li      %r5, 0x10
RAM:004E00DC                 bl      sub_27B28
RAM:004E00E0                 lis     %r9, 0x267 # 0x266D4F8
RAM:004E00E4                 addi    %r11, %r9, -0x2B08 # 0x266D4F8
RAM:004E00E8                 li      %r0, 0x10
RAM:004E00EC                 stw     %r0, 0x25C(%r11)
RAM:004E00F0                 lis     %r9, 0x267 # 0x266D4F8
RAM:004E00F4                 addi    %r11, %r9, -0x2B08 # 0x266D4F8
RAM:004E00F8                 li      %r0, 1
RAM:004E00FC                 stw     %r0, 0x260(%r11)
RAM:004E0100                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0104                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0108                 li      %r0, 1
RAM:004E010C                 stw     %r0, 0(%r11)
RAM:004E0110                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0114                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0118                 li      %r0, 0
RAM:004E011C                 stw     %r0, 4(%r11)
RAM:004E0120                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0124                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0128                 li      %r0, 0
RAM:004E012C                 stw     %r0, 8(%r11)
RAM:004E0130                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0134                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0138                 li      %r0, 1
RAM:004E013C                 stw     %r0, 0xC(%r11)
RAM:004E0140                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0144                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0148                 li      %r0, 0
RAM:004E014C                 stw     %r0, 0x10(%r11)
RAM:004E0150                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0154                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0158                 li      %r0, 0
RAM:004E015C                 stw     %r0, 0x14(%r11)
RAM:004E0160                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0164                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0168                 li      %r0, 1
RAM:004E016C                 stw     %r0, 0x18(%r11)
RAM:004E0170                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0174                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0178                 li      %r0, 0
RAM:004E017C                 stw     %r0, 0x1C(%r11)
RAM:004E0180                 lis     %r9, 0x267 # 0x266D91C
RAM:004E0184                 addi    %r11, %r9, -0x26E4 # 0x266D91C
RAM:004E0188                 li      %r0, 0
RAM:004E018C                 stw     %r0, 0x20(%r11)
RAM:004E0190                 lis     %r9, 0x267 # 0x266D940
RAM:004E0194                 addi    %r11, %r9, -0x26C0 # 0x266D940
RAM:004E0198                 li      %r0, 1
RAM:004E019C                 stw     %r0, 0(%r11)
RAM:004E01A0                 lis     %r9, 0x267 # 0x266D940
RAM:004E01A4                 addi    %r11, %r9, -0x26C0 # 0x266D940
RAM:004E01A8                 li      %r0, 0
RAM:004E01AC                 stw     %r0, 4(%r11)
RAM:004E01B0                 lis     %r9, 0x267 # 0x266D940
RAM:004E01B4                 addi    %r11, %r9, -0x26C0 # 0x266D940
RAM:004E01B8                 li      %r0, 0
RAM:004E01BC                 stw     %r0, 8(%r11)
RAM:004E01C0                 lis     %r9, 0x267 # 0x266D950
RAM:004E01C4                 addi    %r11, %r9, -0x26B0 # 0x266D950
RAM:004E01C8                 li      %r0, 3
RAM:004E01CC                 stw     %r0, 0(%r11)
RAM:004E01D0                 lis     %r9, 0x267 # 0x266D94C
RAM:004E01D4                 addi    %r11, %r9, -0x26B4 # 0x266D94C
RAM:004E01D8                 li      %r0, 3
RAM:004E01DC                 stw     %r0, 0(%r11)
RAM:004E01E0                 lwz     %r11, 0x30+var_30(%sp)
RAM:004E01E4                 lwz     %r0, 4(%r11)
RAM:004E01E8                 mtlr    %r0
RAM:004E01EC                 lwz     %r31, -4(%r11)
RAM:004E01F0                 mr      %sp, %r11
RAM:004E01F4                 blr
RAM:004E01F4 # End of function superpassset