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

Disassembly:
mov ecx, dword [0x6c4e70]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x40]
cmp eax, dword [ecx + 8]
jbe 0x53e7b5
sub esp, 0xc0
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov ecx, dword [esp + 0xc8]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xcc]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xd0]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xd4]
mov dword [esp + 0x10], ebp
call fcn.0053d2a0
movzx eax, byte [esp + 0x14]
test al, al
jne 0x53e6e0
mov eax, dword [esp + 0xd4]
test eax, eax
je 0x53d827
test eax, 0x200
jne 0x53d827
lea ecx, [0x5c13b8]
mov edx, dword [esp + 0xcc]
jmp 0x53d858
mov ecx, dword [esp + 0xcc]
mov dword [esp], ecx
mov edx, dword [esp + 0xd0]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0048a890
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x90], edx
mov dword [esp + 0x34], ecx
lea ebx, [0x579800]
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb0], 0
mov ebx, dword [esp + 0xac]
test ebx, ebx
je 0x53d88e
lea ebp, [0x5c13b8]
jmp 0x53d892
xor ebp, ebp
xor ebx, ebx
mov eax, dword [ebp + 0x28]
mov dword [esp], ebx
call eax
mov eax, dword [esp + 0x34]
cmp dword [esp + 4], eax
jne 0x53d8c8
mov dword [esp], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
call fcn.00404090
movzx eax, byte [esp + 0xc]
test al, al
jne 0x53e64f
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x50]
mov edx, dword [esp + 0x90]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
cmp eax, 0xe
ja 0x53dd82
cmp eax, 6
ja 0x53dbf2
cmp eax, 1
jne 0x53daef
mov eax, dword [esp + 0xc8]
test eax, eax
je 0x53dac0
cmp eax, 1
jne 0x53d942
mov ecx, dword [esp + 0xc4]
movzx edx, byte [ecx]
cmp dl, 0x46
jg 0x53d931
cmp byte [ecx], 0x30
je 0x53d9aa
cmp byte [ecx], 0x31
je 0x53d966
cmp dl, 0x46
je 0x53d9aa
jmp 0x53d9bc
cmp byte [ecx], 0x54
je 0x53d966
cmp byte [ecx], 0x66
je 0x53d9aa
cmp byte [ecx], 0x74
je 0x53d966
jmp 0x53d9bc
cmp eax, 4
jne 0x53d974
mov ecx, dword [esp + 0xc4]
cmp dword [ecx], 0x45555254
je 0x53d966
cmp dword [ecx], 0x65757254
je 0x53d966
cmp dword [ecx], 0x65757274
jne 0x53d9bc
xor eax, eax
mov ecx, 1
xor edx, edx
jmp 0x53da79
cmp eax, 5
jne 0x53d9b5
mov ecx, dword [esp + 0xc4]
cmp dword [ecx], 0x534c4146
jne 0x53d98e
cmp byte [ecx + 4], 0x45
je 0x53d9aa
cmp dword [ecx], 0x736c6146
jne 0x53d99c
cmp byte [ecx + 4], 0x65
je 0x53d9aa
cmp dword [ecx], 0x736c6166
jne 0x53d9bc
cmp byte [ecx + 4], 0x65
jne 0x53d9bc
xor eax, eax
xor ecx, ecx
xor edx, edx
jmp 0x53da79
mov ecx, dword [esp + 0xc4]
nop
lea edx, [esp + 0x58]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044d3e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0044d240
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x8c], ecx
lea edx, [0x56d600]
mov dword [esp], edx
call fcn.0040bd30
mov eax, dword [esp + 4]
mov dword [eax + 4], 9
lea ecx, [0x5872cc]
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x6c4f80]
test ecx, ecx
jne 0x53da3b
mov ecx, dword [esp + 0x8c]
jmp 0x53da49
call fcn.00460ef0
mov ecx, dword [esp + 0x8c]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov ecx, dword [0x69a828]
mov edx, dword [0x69a82c]
mov dword [eax + 0x10], ecx
mov ecx, dword [0x6c4f80]
test ecx, ecx
je 0x53da6c
call fcn.00460ef0
mov dword [edi], edx
mov dword [eax + 0x14], edx
xor ecx, ecx
mov edx, eax
lea eax, [0x5c03d8]
test eax, eax
jne 0x53daab
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
mov byte [esp + 0xc], cl
call fcn.00489890
jmp 0x53e615
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], edx
add esp, 0xc0
ret
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
mov byte [esp + 0xc], 1
call fcn.00489890
jmp 0x53e615
cmp eax, 2
jb 0x53e615
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xa
call fcn.0053c240
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x53dbd5
mov eax, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x90]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.0046dea0
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x53dbb8
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.00489cb0
jmp 0x53e615
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
cmp eax, 0xb
jbe 0x53dc88
cmp eax, 0xd
jb 0x53e615
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0x90]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0046cce0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x53dc6b
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
call fcn.00489bf0
jmp 0x53e615
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xa
call fcn.0053c240
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x53dd65
mov eax, dword [esp + 0x10]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x90]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.0046d480
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x53dd48
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.0048a290
jmp 0x53e615
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
cmp eax, 0x15
ja 0x53e26f
cmp eax, 0x14
jne 0x53dea0
mov eax, dword [esp + 0xd4]
mov ecx, eax
and eax, 0x1f
mov dword [esp + 0x54], eax
nop
cmp eax, 0x14
ja 0x53ddbc
lea edx, [eax - 0x12]
cmp edx, 1
jbe 0x53dddf
cmp eax, 0x14
je 0x53ddc6
jmp 0x53e77a
cmp eax, 0x16
jbe 0x53dddf
cmp eax, 0x17
jne 0x53ddd6
mov eax, dword [esp + 0xd0]
mov edx, dword [eax]
test edx, edx
setne dl
jmp 0x53de11
cmp eax, 0x1a
jne 0x53e77a
test ecx, 0x200
je 0x53ddf0
mov eax, dword [esp + 0xd0]
jmp 0x53de19
test ecx, 0x80
je 0x53de03
mov eax, dword [esp + 0xd0]
mov edx, dword [eax]
jmp 0x53de0c
mov eax, dword [esp + 0xd0]
mov edx, eax
test edx, edx
setne dl
test dl, dl
je 0x53e615
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00487840
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x1c], eax
call fcn.0053d7a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
cmp eax, 0x15
jne 0x53e615
nop
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 4], eax
lea eax, [0x5bf008]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 2
call fcn.004be180
mov eax, dword [esp + 0x1c]
test eax, eax
jbe 0x53e771
mov ecx, dword [esp + 0x18]
cmp eax, 2
jne 0x53df03
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
jmp 0x53df07
xor eax, eax
xor edx, edx
mov dword [esp + 0x38], eax
mov dword [esp + 0x94], edx
mov ebx, dword [ecx]
mov dword [esp + 0x98], ebx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x3c], ecx
mov ebp, dword [esp + 0x34]
mov esi, dword [ebp + 0x4c]
mov edi, dword [esp + 0x90]
mov dword [esp], edi
call esi
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048b360
mov eax, dword [esp + 0x10]
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0xa8], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0xa4], edx
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0x14], ebx
mov ebp, dword [esp + 0xdc]
mov dword [esp + 0x18], ebp
mov esi, dword [esp + 0xe0]
mov dword [esp + 0x1c], esi
call fcn.0053d7a0
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x53e252
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0x90]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048b360
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 8]
mov dword [esp + 0x9c], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xdc]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0xe0]
mov dword [esp + 0x1c], ebx
call fcn.0053d7a0
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x53e235
mov eax, dword [esp + 0xd4]
mov ecx, eax
and eax, 0x1f
mov dword [esp + 0x4c], eax
nop
cmp eax, 0x14
ja 0x53e05c
lea edx, [eax - 0x12]
cmp edx, 1
jbe 0x53e07f
cmp eax, 0x14
je 0x53e066
jmp 0x53e737
cmp eax, 0x16
jbe 0x53e07f
cmp eax, 0x17
jne 0x53e076
mov eax, dword [esp + 0xd0]
mov edx, dword [eax]
test edx, edx
setne dl
jmp 0x53e0b1
cmp eax, 0x1a
jne 0x53e737
test ecx, 0x200
je 0x53e090
mov eax, dword [esp + 0xd0]
jmp 0x53e107
test ecx, 0x80
je 0x53e0a3
mov eax, dword [esp + 0xd0]
mov edx, dword [eax]
jmp 0x53e0ac
mov eax, dword [esp + 0xd0]
mov edx, eax
test edx, edx
setne dl
test dl, dl
jne 0x53e107
mov eax, dword [esp + 0x34]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
call fcn.0048b1e0
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov ecx, dword [esp + 0xd0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
call fcn.00489770
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0x54]
mov ebx, edx
and edx, 0x1f
nop
cmp edx, 0x16
je 0x53e126
mov edx, dword [esp + 0xa8]
mov ebp, dword [esp + 0xa4]
jmp 0x53e164
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.00487840
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ebx, eax
mov ebp, edx
mov eax, dword [esp + 0xd0]
mov edx, ecx
mov ecx, dword [esp + 0xd4]
mov esi, dword [esp + 0x50]
mov edi, esi
and esi, 0x1f
nop
cmp esi, 0x16
je 0x53e191
mov esi, dword [esp + 0x9c]
mov esi, dword [esp + 0xa0]
mov dword [esp + 0x80], esi
mov esi, dword [esp + 0x9c]
jmp 0x53e1f2
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x78], edx
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.00487840
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x84]
mov edi, ecx
mov esi, edx
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0x78]
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0xcc]
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x80]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x20], eax
call fcn.00489e80
jmp 0x53e615
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
cmp eax, 0x16
jne 0x53e447
mov eax, dword [esp + 0xd4]
mov ecx, eax
and eax, 0x1f
mov dword [esp + 0x54], eax
nop
cmp eax, 0x14
ja 0x53e2a0
lea edx, [eax - 0x12]
cmp edx, 1
jbe 0x53e2c3
cmp eax, 0x14
je 0x53e2aa
jmp 0x53e6fd
cmp eax, 0x16
jbe 0x53e2c3
cmp eax, 0x17
jne 0x53e2ba
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx]
test ebx, ebx
setne bl
jmp 0x53e2f8
cmp eax, 0x1a
jne 0x53e6fd
test ecx, 0x200
je 0x53e2d7
mov edx, dword [esp + 0xd0]
jmp 0x53e3a9
test ecx, 0x80
je 0x53e2ea
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx]
jmp 0x53e2f3
mov edx, dword [esp + 0xd0]
mov ebx, edx
test ebx, ebx
setne bl
test bl, bl
jne 0x53e3a9
test ecx, ecx
je 0x53e31b
test ecx, 0x200
jne 0x53e31b
lea ebx, [0x5c13b8]
mov ebp, dword [esp + 0xcc]
jmp 0x53e33e
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0048a890
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, eax
mov ebp, ecx
mov eax, dword [ebx + 0x28]
mov dword [esp], ebp
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048b360
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xcc]
mov dword [esp], ebx
mov ebp, dword [esp + 0xd0]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xd4]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00489770
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0xd0]
cmp eax, 0x16
je 0x53e3c0
mov edx, ecx
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xd0]
jmp 0x53e3e3
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00487840
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x1c], eax
call fcn.0053d7a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
cmp eax, 0x17
je 0x53e495
cmp eax, 0x18
jne 0x53e615
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x10], eax
call fcn.0048a390
jmp 0x53e615
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x28]
mov ecx, dword [esp + 0x90]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048b360
mov eax, dword [esp + 0x10]
mov ecx, eax
and eax, 0x1f
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
nop
cmp eax, 0x16
jne 0x53e4f1
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.00487840
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ecx, eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x1c], eax
call fcn.0053d7a0
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x53e632
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov ecx, dword [esp + 0xd0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
lea ebx, [esp + 0xb4]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.0048aeb0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0xcc]
mov dword [esp], ebx
mov ebx, dword [esp + 0xd0]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xd4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00489770
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
add esp, 0xc0
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 4], eax
call fcn.0049e570
mov eax, dword [esp + 0x10]
test eax, eax
je 0x53e68e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.00489cb0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
add esp, 0xc0
ret
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
add esp, 0xc0
ret
lea eax, [0x569800]
mov dword [esp], eax
call fcn.0040bd30
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x589c60]
mov dword [eax], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 8], ecx
lea ecx, [0x563fc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00435490
lea eax, [0x569800]
mov dword [esp], eax
call fcn.0040bd30
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x589c60]
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 8], ecx
lea ecx, [0x563fc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00435490
xor eax, eax
mov ecx, eax
call fcn.00460f60
lea eax, [0x569800]
mov dword [esp], eax
call fcn.0040bd30
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x589c60]
mov dword [eax], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 8], ecx
lea ecx, [0x563fc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00435490
nop
call fcn.0045faf0
jmp fcn.0053d7a0