Function at 0x53d100
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x58860c
push eax
mov dword fs:[0], esp
sub esp, 0x828
lea eax, [esp + 7]
push esi
mov esi, dword [esp + 0x83c]
push 1
push esi
push eax
call fcn.00538f20
mov al, byte [esp + 0x17]
add esp, 0xc
cmp al, 1
je 0x53d14a
mov ecx, dword [esp + 0x840]
mov byte [ecx], 1
jmp 0x53f221
mov ecx, dword [0xab5b48]
push 0
add esi, 5
call fcn.004fa2b0
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x844]
test eax, eax
mov dword [esp + 0x14], 0xb1983c
je 0x53d179
mov dword [esp + 0x14], 0xb19828
mov edx, dword [esp + 0x840]
push ebx
push ebp
push edi
mov byte [edx], 0
xor edi, edi
xor ebx, ebx
call fcn.00538f00
cmp esi, eax
je 0x53f1ca
push 1
lea eax, [esp + 0x1b]
push esi
push eax
call fcn.00538f20
mov ecx, dword [esp + 0x23]
add esp, 0xc
mov eax, ecx
and eax, 0xff
cmp eax, 0x49
ja case.default.0x53df42
jmp dword [eax*4 + 0x53f23c]
cmp dword [0xb1edb4], 1
jne 0x53d1cc
add esi, 5
jmp case.default.0x53df42
inc esi
push 4
lea ecx, [esp + 0xf0]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0xf8]
push edx
call fcn.0040bea0
push eax
mov dword [esp + 0x100], eax
add esi, 4
call fcn.00462240
add esp, 0x14
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53d210
add esi, 0x19
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0xa4]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0xac]
push ecx
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x17c]
push esi
push edx
mov dword [esp + 0xbc], eax
call fcn.00538f20
add esi, 4
push 4
lea eax, [esp + 0x18c]
push esi
push eax
call fcn.00538f20
add esi, 4
push 4
lea ecx, [esp + 0xc8]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0xd0]
push edx
call fcn.0040bea0
add esi, 4
push 4
lea ecx, [esp + 0x94]
push esi
push ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0xe0], eax
call fcn.00538f20
add esp, 0x44
lea edx, [esp + 0x58]
push edx
call fcn.0040bea0
add esi, 4
push 4
lea ecx, [esp + 0x114]
push esi
push ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0x68], eax
call fcn.00538f20
lea edx, [esp + 0x11c]
push edx
call fcn.0040bea0
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x180]
or al, 8
push ebx
mov dword [esp + 0x124], eax
push eax
mov eax, dword [esp + 0x74]
add esi, 4
push eax
mov eax, dword [esp + 0x188]
push ecx
mov ecx, dword [esp + 0xc4]
push edx
push eax
push ecx
call fcn.00466210
add esp, 0x30
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53d31f
add esi, 0x25
jmp case.default.0x53df42
inc esi
push 0xc
lea edx, [esp + 0x140]
push esi
push edx
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0x3f800000
call fcn.00538f20
lea eax, [esp + 0x148]
push eax
call fcn.0040bea0
lea edx, [esp + 0x150]
mov ecx, eax
push edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x150], ecx
call fcn.0040bea0
lea ecx, [esp + 0x158]
mov dword [esp + 0x24], eax
push ecx
mov dword [esp + 0x158], eax
call fcn.0040bea0
mov dword [esp + 0x28], eax
mov edx, eax
add esi, 0xc
push 4
lea eax, [esp + 0xac]
push esi
push eax
mov dword [esp + 0x168], edx
call fcn.00538f20
lea ecx, [esp + 0xb4]
push ecx
call fcn.0040bea0
mov dword [esp + 0x38], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0x74]
push esi
push eax
mov dword [esp + 0xc4], edx
call fcn.00538f20
lea ecx, [esp + 0x7c]
push ecx
call fcn.0040bea0
mov dword [esp + 0x48], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0x114]
push esi
push eax
mov dword [esp + 0x8c], edx
call fcn.00538f20
add esp, 0x44
lea ecx, [esp + 0xd8]
push ecx
call fcn.0040bea0
mov dword [esp + 0x14], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0xd8]
push esi
push eax
mov dword [esp + 0xe8], edx
call fcn.00538f20
lea ecx, [esp + 0xe0]
push ecx
call fcn.0040bea0
mov dword [esp + 0x24], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0xac]
push esi
mov dword [esp + 0xec], edx
push eax
call fcn.00538f20
lea ecx, [esp + 0xb4]
push ecx
call fcn.0040bea0
mov dword [esp + 0x34], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0x15c]
push esi
push eax
mov dword [esp + 0xc4], edx
call fcn.00538f20
lea ecx, [esp + 0x164]
push ecx
call fcn.0040bea0
mov ecx, dword [esp + 0x104]
mov dword [esp + 0x44], eax
mov edx, eax
push eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x16c], edx
mov edx, dword [esp + 0x110]
push eax
mov eax, dword [esp + 0x84]
push ecx
mov ecx, dword [esp + 0xd0]
push edx
push eax
lea edx, [esp + 0x184]
push ecx
push edx
add esi, 4
call fcn.00466ec0
add esp, 0x50
jmp case.default.0x53df42
inc esi
push 0xc
lea eax, [esp + 0xf8]
push esi
push eax
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0x3f800000
call fcn.00538f20
lea ecx, [esp + 0x100]
push ecx
call fcn.0040bea0
mov dword [esp + 0x20], eax
mov edx, eax
lea eax, [esp + 0x108]
mov dword [esp + 0x104], edx
push eax
call fcn.0040bea0
lea edx, [esp + 0x110]
mov ecx, eax
push edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x110], ecx
call fcn.0040bea0
add esi, 0xc
push 0xc
lea ecx, [esp + 0x16c]
push esi
push ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x174], 0
mov dword [esp + 0x178], 0
mov dword [esp + 0x17c], 0
mov dword [esp + 0x180], 0x3f800000
call fcn.00538f20
lea edx, [esp + 0x174]
push edx
call fcn.0040bea0
lea ecx, [esp + 0x17c]
mov dword [esp + 0x38], eax
push ecx
mov dword [esp + 0x17c], eax
call fcn.0040bea0
mov dword [esp + 0x3c], eax
mov edx, eax
lea eax, [esp + 0x184]
mov dword [esp + 0x180], edx
push eax
call fcn.0040bea0
add esi, 0xc
push 4
lea edx, [esp + 0x108]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x194], ecx
call fcn.00538f20
lea eax, [esp + 0x110]
push eax
call fcn.0040bea0
add esp, 0x40
add esi, 4
lea edx, [esp + 0x50]
mov ecx, eax
push 4
push esi
push edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0xe0], ecx
call fcn.00538f20
lea eax, [esp + 0x5c]
push eax
call fcn.0040bea0
mov ecx, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x60], ecx
add esi, 4
push 1
lea edx, [esp + 0x140]
push esi
push edx
call fcn.00538f20
mov eax, dword [esp + 0x148]
inc esi
and eax, 0xff
lea ecx, [esp + 0x22c]
push eax
push esi
push ecx
call fcn.00538f20
mov eax, dword [esp + 0x154]
push 4
and eax, 0xff
lea edx, [esp + 0x178]
add esi, eax
push esi
push edx
mov byte [esp + eax + 0x244], 0
call fcn.00538f20
lea eax, [esp + 0x180]
push eax
call fcn.0040bea0
mov ecx, dword [0xb1edb4]
add esp, 0x38
add esi, 4
cmp ecx, 1
mov dword [esp + 0x14c], eax
je case.default.0x53df42
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x210]
push eax
mov eax, dword [esp + 0xd8]
push ecx
push edx
lea ecx, [esp + 0x15c]
push eax
lea edx, [esp + 0x104]
push ecx
push edx
call fcn.00466920
add esp, 0x18
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53d71e
add esi, 5
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x10c]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x114]
push ecx
call fcn.0040bea0
push eax
mov dword [esp + 0x11c], eax
add esi, 4
call fcn.00461690
add esp, 0x14
cmp eax, ebx
je case.default.0x53df42
mov dl, byte [esp + 0x17]
mov ecx, eax
cmp dl, 0x43
sete dl
push edx
call fcn.0046e2a0
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53d77f
add esi, 5
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x12c]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x134]
push ecx
call fcn.0040bea0
mov cl, byte [esp + 0x27]
add esp, 0x10
add esi, 4
cmp cl, 0x46
push ebx
mov dword [esp + 0x12c], eax
push ebx
jne 0x53d7c5
push ebx
push ebx
push eax
call fcn.00413090
add esp, 0x14
jmp case.default.0x53df42
mov edx, dword [esp + 0x24]
push edx
push ebx
push eax
call fcn.00413090
add esp, 0x14
jmp case.default.0x53df42
inc esi
push 1
lea eax, [esp + 0x13c]
push esi
push eax
call fcn.00538f20
inc esi
push 4
lea ecx, [esp + 0x120]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0x128]
push edx
call fcn.0040bea0
mov ecx, dword [esp + 0x86c]
add esp, 0x1c
add esi, 4
cmp ecx, ebx
mov ecx, dword [esp + 0x138]
mov dword [esp + 0x110], eax
jne 0x53d839
and ecx, 0xff
mov dword [ecx*4 + 0xb1981c], eax
jmp case.default.0x53df42
and ecx, 0xff
push eax
push ecx
mov dword [ecx*4 + 0xb19800], eax
mov ecx, dword [esp + 0x24]
call fcn.004ca680
mov ecx, eax
call fcn.00541fe0
jmp case.default.0x53df42
mov eax, dword [esp + 0x850]
inc esi
cmp eax, ebx
jne 0x53d87a
cmp cl, 0x48
sete dl
mov byte [0xb19824], dl
jmp case.default.0x53df42
cmp cl, 0x48
sete al
xor ebp, ebp
mov byte [0xb19808], al
test al, al
je 0x53d8a8
mov ecx, dword [esp + 0x1c]
push ebx
push ebp
call fcn.004ca680
mov ecx, eax
call fcn.00541fe0
inc ebp
cmp ebp, 2
jl 0x53d88b
jmp case.default.0x53df42
mov eax, dword [ebp*4 + 0xb19800]
mov ecx, dword [esp + 0x1c]
push eax
push ebp
call fcn.004ca680
mov ecx, eax
call fcn.00541fe0
inc ebp
cmp ebp, 2
jl 0x53d8a8
jmp case.default.0x53df42
inc esi
push 4
lea ecx, [esp + 0x28]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0x30]
push edx
call fcn.0040bea0
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x860]
fld dword [esp + 0x34]
add esp, 0x10
add esi, 4
fst dword [esp + 0x24]
cmp eax, ebx
jne 0x53d913
fstp dword [0xb19810]
mov byte [0xb1980c], 1
jmp case.default.0x53df42
mov ecx, dword [0xab5b48]
push ebx
fstp dword [0xb197f4]
mov byte [0xb197f0], 1
call fcn.004fa2b0
mov ecx, eax
call fcn.004b77c0
mov ecx, dword [esp + 0x24]
push ecx
push 1
mov ecx, eax
call fcn.004f6e90
jmp case.default.0x53df42
mov eax, dword [esp + 0x850]
inc esi
cmp eax, ebx
jne 0x53d968
mov byte [0xb1980c], 0
mov dword [0xb19810], 0
jmp case.default.0x53df42
mov ecx, dword [0xab5b48]
push ebx
mov byte [0xb197f0], 0
mov dword [0xb197f4], 0
call fcn.004fa2b0
mov ecx, eax
call fcn.004b77c0
push ebx
push ebx
mov ecx, eax
call fcn.004f6e90
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0x2c]
push esi
push edx
call fcn.00538f20
lea eax, [esp + 0x34]
push eax
call fcn.0040bea0
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x860]
fld dword [esp + 0x38]
add esp, 0x10
add esi, 4
fst dword [esp + 0x28]
cmp eax, ebx
jne 0x53d9e1
fstp dword [0xb19818]
mov byte [0xb19814], 1
jmp case.default.0x53df42
mov ecx, dword [0xab5b48]
push ebx
fstp dword [0xb197fc]
mov byte [0xb197f8], 1
call fcn.004fa2b0
mov ecx, eax
call fcn.004b77c0
mov ecx, dword [esp + 0x28]
push ecx
push 1
mov ecx, eax
call fcn.004f6e60
jmp case.default.0x53df42
mov eax, dword [esp + 0x850]
inc esi
cmp eax, ebx
jne 0x53da36
mov byte [0xb19814], 0
mov dword [0xb19818], 0
jmp case.default.0x53df42
mov ecx, dword [0xab5b48]
push ebx
mov byte [0xb197f8], 0
mov dword [0xb197fc], 0
call fcn.004fa2b0
mov ecx, eax
call fcn.004b77c0
push ebx
push ebx
mov ecx, eax
call fcn.004f6e60
jmp case.default.0x53df42
mov eax, dword [edi + 0x1a4]
inc esi
cmp cl, 0x2f
jne 0x53da78
or al, 1
jmp 0x53da7a
and al, 0xfe
mov dword [edi + 0x1a4], eax
mov eax, dword [esp + 0x850]
cmp eax, 1
jne case.default.0x53df42
mov eax, dword [edi + 0x34c]
cmp eax, ebx
je case.default.0x53df42
mov ecx, dword [eax + 8]
cmp ecx, ebx
je case.default.0x53df42
mov dl, byte [edi + 0x1a4]
push ebx
and dl, 1
push ebx
push edx
push ebx
call fcn.00479570
jmp case.default.0x53df42
mov eax, dword [edi + 0x1a4]
inc esi
cmp cl, 0x31
jne 0x53dad0
or al, 4
jmp 0x53dad2
and al, 0xfb
mov dword [edi + 0x1a4], eax
mov eax, dword [esp + 0x850]
cmp eax, 1
jne case.default.0x53df42
mov ecx, dword [edi + 0x34c]
cmp ecx, ebx
je case.default.0x53df42
mov eax, dword [edi + 0x1a4]
shr eax, 2
and al, 1
push eax
call fcn.00468eb0
jmp case.default.0x53df42
mov eax, dword [0xb1edb4]
inc esi
cmp eax, 1
je case.default.0x53df42
mov ecx, dword [esp + 0x1c]
push ebx
push ecx
push ebx
push str.sparks_on
call fcn.00413420
add esp, 0x10
jmp case.default.0x53df42
mov eax, dword [0xb1edb4]
inc esi
cmp eax, 1
je case.default.0x53df42
mov edx, dword [esp + 0x1c]
push ebx
push edx
push ebx
push str.sparks_off
call fcn.00413420
add esp, 0x10
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x64]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x6c]
push ecx
call fcn.0040bea0
add esi, 4
push eax
lea edx, [esp + 0x39c]
push esi
push edx
mov dword [esp + 0x7c], eax
call fcn.00538f20
mov ecx, dword [esp + 0x7c]
mov eax, dword [0xb1edb4]
add esp, 0x1c
add esi, ecx
cmp eax, 1
je case.default.0x53df42
cmp dword [0xb084cc], ebx
je 0x53dc0f
mov ecx, dword [0xb084b8]
cmp ecx, ebx
jne 0x53dbe0
mov eax, dword [str.Null_Pointer]
push eax
push 0x158
push str.._sys_mem_memman.h
call fcn.00401090
mov ecx, dword [0xb084b8]
add esp, 0xc
cmp ecx, ebx
jne 0x53dbe0
call fcn.0052ff20
mov ecx, dword [0xb084b8]
mov eax, dword [ecx + 0x108]
push eax
call fcn.00533cd0
push ebx
push 1
push 8
call fcn.00401180
mov ecx, eax
call fcn.00533b80
mov ebp, eax
call fcn.00401180
mov ecx, eax
call fcn.00533d40
mov eax, ebp
jmp 0x53dc38
mov ecx, dword [0x5ca258]
mov ecx, dword [ecx*4 + 0x5ca24c]
cmp ecx, ebx
je 0x53dc27
call fcn.005331c0
jmp 0x53dc38
push ebx
push 1
push 8
call fcn.00401180
mov ecx, eax
call fcn.00533b80
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x840], ebx
je 0x53dc52
mov ecx, eax
call fcn.00415710
mov ebp, eax
jmp 0x53dc54
xor ebp, ebp
lea edx, [esp + 0x388]
mov dword [esp + 0x840], 0xffffffff
push edx
push ebp
call fcn.0041ad10
push ebx
push ebx
push ebp
push str.Create_Panel_Message
call fcn.00413420
add esp, 0x18
cmp ebp, ebx
je case.default.0x53df42
mov ecx, ebp
call fcn.004159e0
cmp dword [0xb084cc], ebx
je 0x53dca6
push ebp
call fcn.00401180
mov ecx, eax
call fcn.00533cb0
jmp case.default.0x53df42
mov eax, dword [0x5ca258]
mov ecx, dword [eax*4 + 0x5ca24c]
cmp ecx, ebx
je 0x53dcc1
push ebp
call fcn.005331e0
jmp case.default.0x53df42
cmp dword [0xb084b8], ebx
jne 0x53dcf0
mov ecx, dword [str.Null_Pointer]
push ecx
push 0x158
push str.._sys_mem_memman.h
call fcn.00401090
mov eax, dword [0xb084b8]
add esp, 0xc
cmp eax, ebx
jne 0x53dcf0
call fcn.0052ff20
mov ecx, dword [0xb084b8]
push ebp
call fcn.00533cb0
jmp case.default.0x53df42
inc esi
push 1
lea edx, [esp + 0x11c]
push esi
push edx
call fcn.00538f20
mov eax, dword [esp + 0x124]
add esp, 0xc
inc esi
cmp al, 0x64
jae 0x53dd51
and eax, 0xff
push eax
lea eax, [esp + 0x1b0]
push esi
push eax
call fcn.00538f20
mov eax, dword [esp + 0x124]
add esp, 0xc
mov ecx, eax
and ecx, 0xff
mov byte [esp + ecx + 0x1ac], 0
jmp 0x53dd59
mov byte [esp + 0x1ac], 0
and eax, 0xff
add esi, eax
mov eax, dword [0xb1edb4]
cmp eax, 1
je case.default.0x53df42
mov ecx, dword [esp + 0x1c]
mov ebp, dword [0xab4b80]
call fcn.004ca780
add eax, 0xf4d3a70e
push ebx
lea edx, [esp + 0x17c]
push eax
push edx
mov ecx, ebp
call fcn.004748f0
mov ecx, dword [esp + 0x178]
mov ebp, dword [eax]
cmp ecx, ebx
je 0x53ddb4
lea eax, [esp + 0x178]
push eax
call fcn.004287f0
mov dword [esp + 0x178], ebx
cmp ebp, ebx
je case.default.0x53df42
lea ecx, [esp + 0x1ac]
push ecx
mov ecx, ebp
call fcn.0047a3d0
jmp case.default.0x53df42
inc esi
push 1
lea edx, [esp + 0x1a]
push esi
push edx
call fcn.00538f20
mov al, byte [esp + 0x22]
add esp, 0xc
inc esi
xor ebx, ebx
test al, al
mov ebp, 0xb17c68
mov byte [esp + 0x1b], bl
jbe 0x53de82
push 1
lea eax, [esp + 0xc0]
push esi
push eax
call fcn.00538f20
mov ecx, dword [esp + 0xc8]
add esp, 0xc
mov eax, ecx
inc esi
and eax, 0xff
mov edx, eax
sub edx, 0xb17c68
lea edx, [edx + ebp + 1]
cmp edx, 0x1388
jge 0x53de64
cmp ebx, 0xfa
jge 0x53de64
push eax
push esi
mov dword [esp + ebx*4 + 0x458], ebp
push ebp
inc ebx
call fcn.00538f20
mov eax, dword [esp + 0xc8]
add esp, 0xc
and eax, 0xff
add ebp, eax
mov byte [ebp], 0
mov ecx, dword [esp + 0xbc]
inc ebp
mov al, byte [esp + 0x1b]
and ecx, 0xff
add esi, ecx
mov cl, byte [esp + 0x16]
inc al
cmp al, cl
mov byte [esp + 0x1b], al
jb 0x53ddf9
cmp dword [0xb1edb4], 1
je 0x53d188
mov ecx, dword [esp + 0x1c]
mov ebp, dword [0xab4b80]
call fcn.004ca780
add eax, 0x44727dae
push 0
lea ecx, [esp + 0x188]
push eax
push ecx
mov ecx, ebp
call fcn.004748f0
mov ecx, dword [esp + 0x184]
mov ebp, dword [eax]
test ecx, ecx
je 0x53deda
lea edx, [esp + 0x184]
push edx
call fcn.004287f0
mov dword [esp + 0x184], 0
test ebp, ebp
je 0x53deee
lea eax, [esp + 0x450]
push ebx
push eax
mov ecx, ebp
call fcn.0047b850
mov byte [0xb1eda3], 0
jmp 0x53d188
mov eax, dword [0xb1edb4]
inc esi
cmp eax, 1
je case.default.0x53df42
mov al, byte [0xb1eda3]
test al, al
jne case.default.0x53df42
mov ecx, dword [esp + 0x1c]
call fcn.004ca780
mov ecx, dword [esp + 0x1c]
mov ebp, eax
call fcn.004b77c0
mov edx, dword [esp + 0x17]
mov ecx, eax
and edx, 0xff
lea eax, [edx - 0x24]
cmp eax, 3
ja case.default.0x53df42
jmp dword [eax*4 + 0x53f364]
push ebp
call fcn.004f4ad0
jmp case.default.0x53df42
push ebp
call fcn.004f4d50
jmp case.default.0x53df42
push ebp
call fcn.004f4fd0
jmp case.default.0x53df42
push ebp
call fcn.004f5250
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x6c]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x74]
push ecx
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x40]
push esi
push edx
mov dword [esp + 0x84], eax
call fcn.00538f20
lea eax, [esp + 0x48]
push eax
call fcn.0040bea0
mov edi, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
add esp, 0x20
add esi, 4
cmp dword [edi + 4], ebx
jne 0x53dfda
mov ecx, dword [str.Null_Pointer]
push ecx
push 0x113
push str..core_hashtable.h
call fcn.00401090
add esp, 0xc
mov ecx, dword [edi]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x68]
dec eax
and eax, ecx
lea edx, [eax + eax*2]
mov eax, dword [edi + 4]
lea eax, [eax + edx*4]
cmp eax, ebx
je 0x53e007
cmp dword [eax], ecx
jne 0x53e000
cmp dword [eax + 4], ebx
jne 0x53e00e
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x53dff7
xor edi, edi
jmp case.default.0x53df42
mov edi, dword [eax + 4]
cmp edi, ebx
je case.default.0x53df42
mov ecx, dword [esp + 0x2c]
mov dword [edi + 0x354], ecx
mov ecx, dword [edi + 0x34c]
cmp ecx, ebx
je case.default.0x53df42
mov edx, dword [esp + 0x2c]
push edx
call fcn.00469180
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53e051
add esi, 0x15
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x7c]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x84]
push ecx
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0xe0]
push esi
push edx
mov dword [esp + 0x94], eax
call fcn.00538f20
lea eax, [esp + 0xe8]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x94]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0xf8], ecx
call fcn.00538f20
lea eax, [esp + 0x9c]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0xd8]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0xac], ecx
call fcn.00538f20
lea eax, [esp + 0xe0]
push eax
call fcn.0040bea0
add esp, 0x40
add esi, 4
lea edx, [esp + 0x130]
mov ecx, eax
push 4
push esi
push edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0xb0], ecx
call fcn.00538f20
lea eax, [esp + 0x13c]
push eax
call fcn.0040bea0
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x80]
push 1
mov dword [esp + 0x144], eax
push eax
mov eax, dword [esp + 0xe4]
push ecx
mov ecx, dword [esp + 0x94]
push edx
push eax
push ecx
add esi, 4
call fcn.0042c200
add esp, 0x28
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53e168
add esi, 5
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0x124]
push esi
push edx
call fcn.00538f20
lea eax, [esp + 0x12c]
push eax
call fcn.0040bea0
push eax
mov dword [esp + 0x134], eax
add esi, 4
call fcn.0042bdf0
add esp, 0x14
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53e1af
add esi, 0x1d
jmp case.default.0x53df42
inc esi
push 4
lea ecx, [esp + 0xb0]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0xb8]
push edx
call fcn.0040bea0
mov dword [esp + 0xbc], eax
add esi, 4
push 4
lea eax, [esp + 0x58]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x60]
push ecx
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x64]
push esi
push edx
mov dword [esp + 0x70], eax
call fcn.00538f20
lea eax, [esp + 0x6c]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0xe8]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x7c], ecx
call fcn.00538f20
lea eax, [esp + 0xf0]
push eax
call fcn.0040bea0
add esp, 0x40
add esi, 4
lea edx, [esp + 0x88]
mov ecx, eax
push 4
push esi
push edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0xc0], ecx
call fcn.00538f20
lea eax, [esp + 0x94]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0xd8]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0xa4], ecx
call fcn.00538f20
lea eax, [esp + 0xe0]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea ecx, [esp + 0xa4]
push esi
push ecx
mov dword [esp + 0xf0], eax
call fcn.00538f20
lea edx, [esp + 0xac]
push edx
call fcn.0040bea0
mov edi, dword [esp + 0x50]
add esp, 0x30
mov dword [esp + 0x80], eax
add esi, 4
cmp dword [edi + 4], ebx
jne 0x53e2e8
mov eax, dword [str.Null_Pointer]
push eax
push 0x113
push str..core_hashtable.h
call fcn.00401090
add esp, 0xc
mov ecx, dword [edi]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0xac]
dec eax
and eax, ecx
lea edx, [eax + eax*2]
mov eax, dword [edi + 4]
lea eax, [eax + edx*4]
cmp eax, ebx
je 0x53e007
cmp dword [eax], ecx
jne 0x53e315
cmp dword [eax + 4], ebx
jne 0x53e323
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x53e30c
xor edi, edi
jmp case.default.0x53df42
mov edi, dword [eax + 4]
cmp edi, ebx
je case.default.0x53df42
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0xc4]
mov eax, dword [esp + 0x88]
push ecx
mov ecx, dword [esp + 0xb8]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x50]
push ecx
push edx
push eax
push edi
call fcn.0042bfe0
add esp, 0x1c
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53e377
add esi, 0x15
jmp case.default.0x53df42
inc esi
push 4
lea ecx, [esp + 0x50]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0x58]
push edx
call fcn.0040bea0
mov dword [esp + 0x5c], eax
add esi, 4
push 4
lea eax, [esp + 0x80]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x88]
push ecx
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x78]
push esi
push edx
mov dword [esp + 0x98], eax
call fcn.00538f20
lea eax, [esp + 0x80]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x90]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x90], ecx
call fcn.00538f20
lea eax, [esp + 0x98]
push eax
call fcn.0040bea0
add esp, 0x40
add esi, 4
lea edx, [esp + 0x64]
mov ecx, eax
push 4
push esi
push edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x68], ecx
call fcn.00538f20
lea eax, [esp + 0x70]
push eax
call fcn.0040bea0
mov edi, dword [esp + 0x30]
mov dword [esp + 0x20], eax
mov ecx, eax
add esp, 0x10
mov eax, dword [edi + 4]
add esi, 4
cmp eax, ebx
mov dword [esp + 0x64], ecx
jne 0x53e45f
mov edx, dword [str.Null_Pointer]
push edx
push 0x113
push str..core_hashtable.h
call fcn.00401090
add esp, 0xc
mov ecx, dword [edi]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x4c]
mov edx, dword [edi + 4]
dec eax
and eax, ecx
lea eax, [eax + eax*2]
lea eax, [edx + eax*4]
cmp eax, ebx
je 0x53e007
cmp dword [eax], ecx
jne 0x53e489
cmp dword [eax + 4], ebx
jne 0x53e497
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x53e480
xor edi, edi
jmp case.default.0x53df42
mov edi, dword [eax + 4]
cmp edi, ebx
je case.default.0x53df42
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x194], eax
mov dword [esp + 0x190], ecx
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x190]
push edi
push eax
push ecx
mov ecx, dword [0x63d290]
mov dword [esp + 0x1a4], edx
call fcn.00437b00
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53e4f2
add esi, 0x19
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0x80]
push esi
push edx
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0x3f800000
call fcn.00538f20
lea eax, [esp + 0x88]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea ecx, [esp + 0x88]
push esi
push ecx
mov dword [esp + 0x98], eax
call fcn.00538f20
lea edx, [esp + 0x90]
push edx
call fcn.0040bea0
mov dword [esp + 0x94], eax
add esi, 4
push 4
lea eax, [esp + 0x100]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x108]
push ecx
call fcn.0040bea0
mov dword [esp + 0x40], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0x114]
push esi
push eax
mov dword [esp + 0x118], edx
call fcn.00538f20
lea ecx, [esp + 0x11c]
push ecx
call fcn.0040bea0
add esp, 0x40
mov dword [esp + 0x10], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0xe8]
push esi
push eax
mov dword [esp + 0xec], edx
call fcn.00538f20
lea ecx, [esp + 0xf0]
push ecx
call fcn.0040bea0
mov dword [esp + 0x20], eax
mov edx, eax
add esi, 4
push 4
lea eax, [esp + 0x104]
push esi
push eax
mov dword [esp + 0x100], edx
call fcn.00538f20
lea ecx, [esp + 0x10c]
push ecx
call fcn.0040bea0
mov ecx, dword [esp + 0x94]
add esp, 0x20
mov dword [esp + 0x10], eax
mov edx, eax
push ebx
push eax
lea eax, [esp + 0xe4]
mov dword [esp + 0xf8], edx
push eax
add esi, 4
push ecx
mov edx, dword [esp + 0x8c]
mov ecx, dword [0xab5be0]
push edx
call fcn.00506550
jmp case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53e662
add esi, 0x11
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x9c]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0xa4]
push ecx
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0xa0]
push esi
push edx
mov dword [esp + 0xb4], eax
call fcn.00538f20
lea eax, [esp + 0xa8]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0xa8]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0xb8], ecx
call fcn.00538f20
lea eax, [esp + 0xb0]
push eax
call fcn.0040bea0
add esi, 4
push 4
lea edx, [esp + 0x138]
mov ecx, eax
push esi
push edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0xc0], ecx
call fcn.00538f20
lea eax, [esp + 0x140]
push eax
call fcn.0040bea0
mov edx, dword [esp + 0xc4]
add esp, 0x40
mov ecx, eax
mov dword [esp + 0x10], eax
push ebx
push eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x10c], ecx
mov ecx, dword [esp + 0xa0]
push edx
push eax
push ecx
mov ecx, dword [0x63d290]
add esi, 4
call fcn.00437100
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0x3c]
push esi
push edx
call fcn.00538f20
lea eax, [esp + 0x44]
push eax
call fcn.0040bea0
mov dword [esp + 0x48], eax
mov dword [edi + 0x35c], eax
mov eax, dword [esp + 0x860]
add esp, 0x10
add esi, 4
cmp eax, 1
jne 0x53e7a9
mov eax, dword [edi + 0x358]
mov ebp, dword [0x63d290]
cmp eax, ebx
je 0x53e78a
push eax
mov ecx, ebp
call fcn.004373c0
mov ecx, dword [esp + 0x38]
push ebx
push 0x42c80000
push ebx
push ebx
push ecx
mov ecx, ebp
call fcn.00437100
mov dword [edi + 0x358], eax
jmp case.default.0x53df42
mov dword [edi + 0x358], ebx
jmp case.default.0x53df42
mov eax, dword [esp + 0x850]
inc esi
cmp eax, 1
jne 0x53e7d7
mov eax, dword [edi + 0x358]
cmp eax, ebx
je 0x53e7d7
mov ecx, dword [0x63d290]
push eax
call fcn.004373c0
mov dword [edi + 0x358], ebx
mov dword [edi + 0x35c], ebx
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0x34]
push esi
push edx
call fcn.00538f20
lea eax, [esp + 0x3c]
push eax
call fcn.0040bea0
mov dword [esp + 0x40], eax
mov al, byte [esp + 0x27]
fld dword [esp + 0x40]
add esp, 0x10
add esi, 4
fst dword [esp + 0x30]
cmp al, 0x1d
jne 0x53e825
fstp dword [edi + 0x360]
jmp case.default.0x53df42
fstp dword [edi + 0x364]
jmp case.default.0x53df42
inc esi
push 4
lea ecx, [esp + 0xac]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0xb4]
push edx
call fcn.0040bea0
mov edi, dword [esp + 0x30]
mov edx, eax
add esp, 0x10
mov dword [esp + 0xa8], edx
cmp dword [edi + 4], ebx
jne 0x53e882
mov eax, dword [str.Null_Pointer]
push eax
push 0x113
push str..core_hashtable.h
call fcn.00401090
mov edx, dword [esp + 0xb4]
add esp, 0xc
mov ecx, dword [edi]
mov eax, 1
shl eax, cl
dec eax
and eax, edx
lea ecx, [eax + eax*2]
mov eax, dword [edi + 4]
lea eax, [eax + ecx*4]
cmp eax, ebx
je 0x53ea47
cmp dword [eax], edx
jne 0x53e8a8
cmp dword [eax + 4], ebx
jne 0x53e8b9
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x53e89f
xor edi, edi
add esi, 4
jmp case.default.0x53df42
mov edi, dword [eax + 4]
add esi, 4
jmp case.default.0x53df42
inc esi
push 4
lea ecx, [esp + 0x38]
push esi
push ecx
call fcn.00538f20
lea edx, [esp + 0x40]
push edx
call fcn.0040bea0
mov dword [esp + 0x44], eax
add esi, 4
push 1
lea eax, [esp + 0x174]
push esi
push eax
call fcn.00538f20
mov edi, dword [esp + 0x3c]
add esp, 0x1c
inc esi
cmp dword [edi + 4], ebx
jne 0x53e919
mov ecx, dword [str.Null_Pointer]
push ecx
push 0x113
push str..core_hashtable.h
call fcn.00401090
add esp, 0xc
mov ecx, dword [edi]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x34]
dec eax
and eax, ecx
lea edx, [eax + eax*2]
mov eax, dword [edi + 4]
lea eax, [eax + edx*4]
cmp eax, ebx
je 0x53e953
cmp dword [eax], ecx
jne 0x53e93f
cmp dword [eax + 4], ebx
jne 0x53e948
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x53e936
jmp 0x53e953
mov edi, dword [eax + 4]
cmp edi, ebx
jne case.default.0x53df42
push 0x368
call fcn.00401290
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x840], 1
je 0x53e989
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x850]
push ecx
push edx
mov ecx, eax
call fcn.00539c70
jmp 0x53e98b
xor eax, eax
mov ecx, dword [esp + 0x160]
mov dword [esp + 0x840], 0xffffffff
and ecx, 0xff
mov edi, eax
push ecx
mov ecx, eax
call fcn.00423360
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0xb4]
push esi
push edx
call fcn.00538f20
lea eax, [esp + 0xbc]
push eax
call fcn.0040bea0
mov edi, dword [esp + 0x30]
mov edx, eax
add esp, 0x10
mov dword [esp + 0xb0], edx
cmp dword [edi + 4], ebx
jne 0x53ea05
mov ecx, dword [str.Null_Pointer]
push ecx
push 0x113
push str..core_hashtable.h
call fcn.00401090
mov edx, dword [esp + 0xbc]
add esp, 0xc
mov ecx, dword [edi]
mov eax, 1
shl eax, cl
mov ecx, dword [edi + 4]
dec eax
and eax, edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
cmp eax, ebx
je 0x53ea47
cmp dword [eax], edx
jne 0x53ea27
cmp dword [eax + 4], ebx
jne 0x53ea38
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x53ea1e
xor edi, edi
add esi, 4
jmp case.default.0x53df42
mov edi, dword [eax + 4]
cmp edi, ebx
je 0x53ea49
mov edx, dword [edi]
push 1
mov ecx, edi
call dword [edx]
xor edi, edi
add esi, 4
jmp case.default.0x53df42
inc esi
push 1
lea eax, [esp + 0xbc]
push esi
push eax
call fcn.00538f20
mov ecx, dword [esp + 0xc4]
inc esi
and ecx, 0xff
lea edx, [edi + 0x144]
push ecx
push esi
push edx
call fcn.00538f20
mov eax, dword [esp + 0xd0]
add esp, 0x18
and eax, 0xff
mov byte [eax + edi + 0x144], 0
mov ecx, dword [esp + 0xb8]
and ecx, 0xff
add esi, ecx
jmp case.default.0x53df42
lea ebp, [edi + 0x18c]
inc esi
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov dword [ebp], eax
add esp, 0x10
add esi, 4
jmp case.default.0x53df42
lea ebp, [edi + 0x190]
jmp 0x53eaaf
lea ebp, [edi + 0x198]
jmp 0x53eaaf
lea ebp, [edi + 0x194]
jmp 0x53eaaf
inc esi
lea ebp, [edi + 0x1a0]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, dword [edi + 0x34c]
add esp, 0x10
mov edx, eax
cmp ecx, ebx
mov dword [esp + 0x10], eax
mov dword [ebp], edx
je 0x53eac5
fld dword [esp + 0x10]
fstp dword [esp + 0x19c]
fld dword [esp + 0x10]
fstp dword [esp + 0x1a0]
fld dword [esp + 0x10]
lea eax, [esp + 0x19c]
mov dword [esp + 0x1a8], 0x3f800000
fstp dword [esp + 0x1a4]
push eax
call fcn.00469350
add esi, 4
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x1dc]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], ecx
mov dword [edi + 0x1e0], ebx
add esi, 4
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x1e4]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov edx, eax
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], edx
mov dword [edi + 0x1e8], ebx
add esi, 4
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x1ec]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov dword [edi + 0x1f0], ebx
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], eax
add esi, 4
jmp case.default.0x53df42
lea ebp, [edi + 0x1e0]
jmp 0x53f05d
lea ebp, [edi + 0x1e8]
jmp 0x53eca0
lea ebp, [edi + 0x1f0]
jmp 0x53ecca
inc esi
lea ebp, [edi + 0x1bc]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], ecx
mov dword [edi + 0x1cc], ebx
add esi, 4
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x1c0]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov edx, eax
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], edx
mov dword [edi + 0x1d0], ebx
add esi, 4
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x1c4]
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov dword [edi + 0x1d4], ebx
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], eax
add esi, 4
jmp case.default.0x53df42
lea ebp, [edi + 0x1cc]
jmp 0x53f05d
lea ebp, [edi + 0x1d0]
inc esi
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov edx, eax
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], edx
add esi, 4
jmp case.default.0x53df42
lea ebp, [edi + 0x1d4]
inc esi
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], eax
add esi, 4
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x40]
push 0xc
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
mov dword [esp + 0x20], eax
mov dword [ebp], ecx
lea ebp, [edi + 0x44]
push ebp
call fcn.0040bea0
mov edx, eax
mov dword [esp + 0x24], eax
mov dword [ebp], edx
lea ebp, [edi + 0x48]
push ebp
call fcn.0040bea0
add esp, 0x18
mov dword [ebp], eax
mov dword [esp + 0x10], eax
mov dword [edi + 0x1ac], ebx
mov dword [edi + 0x1b0], ebx
mov dword [edi + 0x1b4], ebx
mov dword [edi + 0x1b8], 0x3f800000
add esi, 0xc
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x40]
push 0xc
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
mov dword [esp + 0x20], eax
mov dword [ebp], ecx
lea ebp, [edi + 0x44]
push ebp
call fcn.0040bea0
mov edx, eax
mov dword [esp + 0x24], eax
mov dword [ebp], edx
lea ebp, [edi + 0x48]
push ebp
call fcn.0040bea0
mov dword [ebp], eax
add esi, 0xc
lea ebp, [edi + 0x1bc]
push 0xc
push esi
push ebp
mov dword [esp + 0x34], eax
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
mov dword [esp + 0x38], eax
mov dword [ebp], ecx
lea ebp, [edi + 0x1c0]
push ebp
call fcn.0040bea0
mov edx, eax
mov dword [esp + 0x3c], eax
mov dword [ebp], edx
lea ebp, [edi + 0x1c4]
push ebp
call fcn.0040bea0
mov dword [esp + 0x40], eax
mov dword [ebp], eax
mov eax, 0x3f800000
add esp, 0x30
mov dword [edi + 0x1ac], ebx
mov dword [edi + 0x1b0], ebx
mov dword [edi + 0x1b4], ebx
mov dword [edi + 0x1b8], eax
add esi, 0xc
mov dword [edi + 0x1cc], ebx
mov dword [edi + 0x1d0], ebx
mov dword [edi + 0x1d4], ebx
mov dword [edi + 0x1d8], eax
jmp case.default.0x53df42
inc esi
lea ebp, [edi + 0x1ac]
push 0xc
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
mov dword [esp + 0x20], eax
mov dword [ebp], ecx
lea ebp, [edi + 0x1b0]
push ebp
call fcn.0040bea0
mov edx, eax
mov dword [esp + 0x24], eax
mov dword [ebp], edx
lea ebp, [edi + 0x1b4]
push ebp
call fcn.0040bea0
add esp, 0x18
mov dword [esp + 0x10], eax
mov dword [ebp], eax
add esi, 0xc
jmp case.default.0x53df42
inc esi
push 1
lea ecx, [esp + 0xc4]
push esi
push ecx
call fcn.00538f20
mov eax, dword [esp + 0xcc]
inc esi
and eax, 0xff
lea edx, [eax + eax*4]
lea eax, [esp + 0x280]
push edx
push esi
push eax
call fcn.00538f20
mov eax, dword [esp + 0xd8]
add esp, 0x18
and eax, 0xff
lea ebp, [esp + 0x274]
lea ecx, [eax + esi]
mov esi, 0
lea ebx, [ecx + eax*4]
jle 0x53eefa
mov dl, byte [ebp]
inc ebp
push ebp
mov byte [esp + 0x178], dl
call fcn.0040bea0
mov ecx, dword [esp + 0x178]
add esp, 4
and ecx, 0xff
add ebp, 4
inc esi
mov dword [edi + ecx*4 + 0x1f4], eax
mov edx, dword [esp + 0xc0]
and edx, 0xff
cmp esi, edx
jl 0x53eebd
mov esi, ebx
jmp 0x53d188
inc esi
push 1
lea eax, [esp + 0xcc]
push esi
push eax
call fcn.00538f20
mov eax, dword [esp + 0xd4]
inc esi
and eax, 0xff
lea edx, [esp + 0x338]
lea ecx, [eax + eax*4]
push ecx
push esi
push edx
call fcn.00538f20
mov eax, dword [esp + 0xe0]
add esp, 0x18
and eax, 0xff
lea ebp, [esp + 0x32c]
lea ecx, [eax + esi]
mov esi, 0
lea ebx, [ecx + eax*4]
jle 0x53ef91
mov dl, byte [ebp]
inc ebp
push ebp
mov byte [esp + 0x168], dl
call fcn.0040bea0
mov ecx, dword [esp + 0x168]
add esp, 4
and ecx, 0xff
add ebp, 4
inc esi
mov dword [edi + ecx*4 + 0x238], eax
mov edx, dword [esp + 0xc8]
and edx, 0xff
cmp esi, edx
jl 0x53ef54
mov esi, ebx
jmp 0x53d188
inc esi
push 1
lea eax, [esp + 0x118]
push esi
push eax
mov byte [esp + 0x120], 0
call fcn.00538f20
mov eax, dword [esp + 0x120]
push 1
and eax, 0xff
lea edx, [esp + 0x4c]
mov ecx, eax
shl ecx, 4
add ecx, eax
inc esi
push esi
push edx
lea ebx, [edi + ecx*4 + 0x280]
call fcn.00538f20
mov eax, dword [esp + 0x54]
inc esi
and eax, 0xff
lea ecx, [esp + 0x2e8]
lea eax, [eax + eax*4]
push eax
push esi
push ecx
call fcn.00538f20
mov eax, dword [esp + 0x60]
add esp, 0x24
and eax, 0xff
lea ebp, [esp + 0x2d0]
lea edx, [eax + esi]
mov esi, 0
lea eax, [edx + eax*4]
mov dword [esp + 0x10], eax
jle 0x53f04e
mov cl, byte [ebp]
inc ebp
push ebp
mov byte [esp + 0x174], cl
call fcn.0040bea0
mov edx, dword [esp + 0x174]
add esp, 4
and edx, 0xff
add ebp, 4
inc esi
mov dword [ebx + edx*4], eax
mov eax, dword [esp + 0x3c]
and eax, 0xff
cmp esi, eax
jl 0x53f019
mov esi, dword [esp + 0x10]
jmp 0x53d188
lea ebp, [edi + 0x27c]
inc esi
push 4
push esi
push ebp
call fcn.00538f20
push ebp
call fcn.0040bea0
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [ebp], ecx
add esi, 4
jmp case.default.0x53df42
mov ecx, dword [edi + 0x1a4]
inc esi
lea ebp, [edi + 0x40]
push 0xc
or ecx, 2
push esi
push ebp
mov dword [edi + 0x1a4], ecx
call fcn.00538f20
push ebp
call fcn.0040bea0
mov edx, eax
mov dword [esp + 0x20], eax
mov dword [ebp], edx
lea ebp, [edi + 0x44]
push ebp
call fcn.0040bea0
mov dword [ebp], eax
lea ebp, [edi + 0x48]
push ebp
mov dword [esp + 0x28], eax
call fcn.0040bea0
mov ecx, eax
add esp, 0x18
mov dword [esp + 0x10], eax
mov dword [ebp], ecx
add esi, 0xc
jmp case.default.0x53df42
inc esi
push 4
lea edx, [esp + 0x120]
push esi
push edx
call fcn.00538f20
lea eax, [esp + 0x128]
push eax
call fcn.0040bea0
push eax
mov dword [esp + 0x130], eax
add esi, 4
call fcn.00461690
add esp, 0x14
cmp eax, ebx
je case.default.0x53df42
cmp dword [0xb1edb4], 1
jne 0x53f130
cmp byte [esp + 0x17], 0x3e
sete cl
push ecx
mov ecx, eax
call fcn.0046e040
jmp case.default.0x53df42
mov dl, byte [esp + 0x17]
mov ecx, eax
cmp dl, 0x3e
sete dl
push edx
call fcn.0046dfd0
jmp case.default.0x53df42
inc esi
push 4
lea eax, [esp + 0x128]
push esi
push eax
call fcn.00538f20
lea ecx, [esp + 0x130]
push ecx
call fcn.0040bea0
push eax
mov dword [esp + 0x138], eax
add esi, 4
call fcn.00461690
add esp, 0x14
cmp eax, ebx
je case.default.0x53df42
mov ecx, dword [0xb1edb4]
mov dl, byte [esp + 0x17]
cmp ecx, 1
jne 0x53f1a2
cmp dl, 0x40
mov ecx, eax
sete dl
push edx
call fcn.0046e070
jmp case.default.0x53df42
xor ecx, ecx
cmp dl, 0x40
setne cl
dec ecx
and ecx, 0xff
push ecx
mov ecx, eax
call fcn.0046df80
jmp case.default.0x53df42
mov edx, dword [esp + 0x84c]
mov byte [edx], 1
jmp case.0x53d1b7.1
mov eax, dword [esp + 0x84c]
mov byte [eax], 1
mov ebp, dword [esp + 0x850]
mov edi, dword [0xb1edc0]
cmp ebp, ebx
je 0x53f1eb
mov edi, dword [0xb1edc4]
cmp edi, ebx
je 0x53f21e
cmp ebp, 1
jne 0x53f20d
cmp dword [edi + 0x34c], ebx
jne 0x53f20d
mov al, byte [edi + 0x19c]
test al, al
je 0x53f20d
mov ecx, edi
call fcn.0053a820
mov ecx, edi
call fcn.0053a600
mov edi, dword [edi + 0x13c]
cmp edi, ebx
jne 0x53f1ef
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x82c]
mov eax, esi
pop esi
mov dword fs:[0], ecx
add esp, 0x834
ret