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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x4383f9
sub esp, 0xf0
mov eax, dword fs:[0x14]
mov eax, dword [eax]
mov dword [esp + 0xe0], eax
jmp 0x437b0b
mov dword [esp + 0x3c], ecx
mov eax, esi
mov ecx, edx
xor edx, edx
div ecx
mov dword [esp + 0xb0], edx
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0x3c]
movzx edx, byte [esp + 0x25]
mov edx, dword [esp + 0x78]
movzx esi, byte [esp + 0x24]
mov esi, dword [esp + 0xac]
cmp dword [esp + 0xa8], esi
je 0x437476
mov esi, dword [0x593960]
test esi, esi
jne 0x43746a
mov dword [esp + 0xa0], ebx
mov esi, dword [0x5935e4]
mov edx, dword [0x5935e0]
mov ebx, dword [esp + 0xb0]
cmp ebx, esi
jae 0x4383e5
mov edx, dword [edx + ebx*4]
cmp eax, edx
jne 0x4371e9
movzx edx, byte [esp + 0x25]
mov ebx, dword [esp + 0xa0]
mov byte [esp + 0x25], dl
inc dword [esp + 0xa8]
mov esi, dword [esp + 0xb0]
add esi, dword [esp + 0xb4]
mov edx, dword [esp + 0xac]
test edx, edx
jne 0x437139
jmp 0x4383e0
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x44], edi
mov dword [esp + 0xbc], edx
mov esi, dword [esp + 0x78]
cmp esi, 3
je 0x43740f
xor ebx, ebx
test bl, bl
jne 0x4372e1
movzx ebx, byte [esp + 0x25]
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0xa4], ebx
movzx ebx, byte [esp + 0x25]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x98], edi
mov dword [esp + 0x94], ebp
mov byte [esp + 0x25], bl
mov eax, dword [0x593610]
mov edx, dword [0x593614]
mov esi, dword [0x593618]
mov ecx, dword [esp + 0xb0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
call fcn.0043dd10
movzx eax, byte [esp + 0x10]
test al, al
je 0x4372a0
mov eax, dword [esp + 0xec]
movzx edx, byte [esp + 0x25]
mov edi, dword [esp + 0x98]
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x94]
mov ebx, dword [esp + 0xa4]
jmp 0x4371bc
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
movzx ecx, byte [esp + 0x24]
mov byte [esp + 8], cl
call fcn.0043e7b0
mov eax, dword [esp + 0xc]
test eax, eax
je 0x437276
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov dword [esp], edx
mov dword [esp + 8], ebp
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call fcn.00438dc0
mov eax, dword [esp + 0x18]
test eax, eax
setne cl
mov edx, dword [esp + 0x14]
test edx, edx
setne bl
movzx ebp, byte [esp + 0x1c]
xchg ebp, eax
mov byte [esp + 0x26], al
xchg ebp, eax
or ebx, ecx
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0xc]
mov dword [esp + 0x28], esi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x2c], edi
test bl, bl
je 0x437402
mov ebx, dword [esp + 0x9c]
test ebx, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
mov edi, dword [esp + 0x44]
test edi, edi
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4373d4
movzx eax, byte [esp + 0x26]
test al, al
jne 0x437380
movzx eax, byte [esp + 0x25]
mov ebx, eax
mov edi, ecx
mov ecx, edx
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
mov dword [esp + 0xa4], esi
jmp 0x43722a
mov dword [esp + 0x90], edx
mov dword [esp + 0x8c], ecx
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0043e550
mov eax, dword [esp + 4]
movzx ecx, byte [esp + 8]
test eax, eax
jne 0x4373bf
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x90]
mov eax, 1
jmp 0x437366
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], cl
add esp, 0xf0
ret
cmp edi, eax
xchg ebp, ebx
setg bl
xchg ebp, ebx
cmp ebx, edx
xchg esi, ebx
seta bl
xchg esi, ebx
cmp edi, eax
sete al
and esi, eax
or esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
jne 0x437358
mov ecx, edi
mov edx, ebx
jmp 0x437358
mov ebx, dword [esp + 0x9c]
mov edi, dword [esp + 0x44]
jmp 0x4373f9
mov dword [esp + 0x88], ebp
mov eax, dword [0x593630]
mov ecx, dword [0x593634]
mov edx, dword [0x593638]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.0043dd10
movzx ebx, byte [esp + 0x10]
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x88]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x44]
jmp 0x43720a
mov eax, dword [esp + 0xe0]
jmp 0x437b0b
inc edx
movzx esi, byte [esp + 0x25]
mov esi, eax
mov eax, edx
mov edx, dword [esp + 0xe0]
cmp eax, 4
jge 0x437572
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebp
mov edx, dword fs:[0x14]
mov edx, dword [edx]
mov edx, dword [edx + 0x18]
mov esi, dword [edx + 0x90]
mov dword [esp + 0x38], esi
mov ebx, dword [edx + 0x94]
mov dword [edx + 0x90], ebx
shl esi, 0x11
mov ebp, dword [esp + 0x38]
xor esi, ebp
mov ebp, ebx
xor ebx, esi
shr esi, 7
xor esi, ebx
mov ebx, ebp
shr ebp, 0x10
xor ebp, esi
mov dword [edx + 0x94], ebp
lea edx, [ebp + ebx]
mov ebx, dword [0x593670]
mov ebp, dword [0x593678]
mov esi, dword [0x593674]
test ebx, ebx
je 0x4383f3
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], edx
mov eax, edx
xor edx, edx
div ebx
test ebp, ebp
je 0x4383ee
mov dword [esp + 0xa4], edx
mov eax, dword [esp + 0x74]
xor edx, edx
div ebp
mov edx, dword [esi + edx*4]
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], ebx
mov esi, dword [esp + 0xa4]
mov dword [esp + 0xb0], esi
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0x78]
cmp edx, 3
xchg esi, ebx
sete bl
xchg esi, ebx
xchg esi, eax
mov byte [esp + 0x24], al
xchg esi, eax
mov eax, dword [esp + 0xec]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
jmp 0x437165
movzx eax, byte [esp + 0x25]
test al, al
je 0x437582
mov eax, edx
jmp 0x437b0b
mov dword [esp + 0x98], ebp
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x94], edi
mov dword [esp + 0x3c], ecx
mov eax, dword [0x5afd7c]
test eax, eax
jne 0x4380f8
xor eax, eax
test al, al
jne 0x438042
test edi, edi
setne al
test ecx, ecx
setne dl
or edx, eax
test dl, dl
je 0x438033
sub ecx, ebx
sbb edi, ebp
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], edi
mov eax, dword [0x5935e0]
mov dword [esp + 0xd0], eax
mov edx, dword [0x5935e4]
mov dword [esp + 0x84], edx
mov ebx, dword [0x593610]
mov dword [esp + 0xc4], ebx
mov ebp, dword [0x593614]
mov dword [esp + 0x64], ebp
mov esi, dword [0x593618]
mov dword [esp + 0x68], esi
mov ecx, dword [0x593630]
mov dword [esp + 0xb8], ecx
mov edi, dword [0x593634]
mov dword [esp + 0x30], edi
mov edi, dword [0x593638]
mov dword [esp + 0x34], edi
nop
nop
lea edi, [0x5938d8]
mov dword [esp], edi
call fcn.004093e0
mov eax, dword [0x593960]
test eax, eax
je 0x437668
nop
nop
lea eax, [0x5938d8]
mov dword [esp], eax
call fcn.004095f0
mov eax, dword [esp + 0xe0]
jmp 0x437b0b
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 0x13a8]
test ecx, ecx
jne 0x43764c
mov ecx, dword [0x593918]
test ecx, ecx
jne 0x437feb
call fcn.0043be40
mov eax, dword [esp + 0xec]
cmp dword [esp], eax
jne 0x4383ca
mov dword [esp], eax
call fcn.0043deb0
nop
nop
lea eax, [0x5938d8]
mov dword [esp], eax
call fcn.004095f0
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x18]
movzx edx, byte [ecx + 0x84]
mov byte [esp + 0x23], dl
test dl, dl
jne 0x437fb1
xor ecx, ecx
jmp 0x4376e8
mov ebx, dword [esp + 0x70]
lea ecx, [ebx + 1]
mov eax, dword [esp + 0xe0]
movzx edx, byte [esp + 0x23]
mov ebx, dword [esp + 0x84]
cmp ebx, ecx
jle 0x437780
mov dword [esp + 0x70], ecx
mov eax, dword [esp + 0xd0]
mov edx, dword [eax + ecx*4]
mov dword [esp + 0xdc], edx
mov ebx, dword [esp + 0xc4]
mov dword [esp], ebx
mov ebp, dword [esp + 0x64]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x68]
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
call fcn.0043dd10
movzx eax, byte [esp + 0x10]
test al, al
je 0x437f95
xor eax, eax
test al, al
je 0x4376d5
nop
nop
lea eax, [0x5938d8]
mov dword [esp], eax
call fcn.004093e0
call fcn.0043dfa0
mov eax, dword [esp]
mov dword [esp + 0xdc], eax
nop
nop
lea ecx, [0x5938d8]
mov dword [esp], ecx
call fcn.004095f0
mov eax, dword [esp + 0xdc]
test eax, eax
jne 0x437f4f
xor eax, eax
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x3c]
jmp 0x43779a
mov ebx, dword [esp + 0x6c]
inc ebx
mov edx, ecx
mov ecx, eax
mov eax, ebx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x94], ecx
mov ebx, dword [esp + 0x84]
cmp ebx, eax
jle 0x43788f
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0xd0]
mov edx, dword [ecx + eax*4]
mov dword [esp + 0xd4], edx
mov ebx, dword [esp + 0xb8]
mov dword [esp], ebx
mov ebp, dword [esp + 0x30]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
call fcn.0043dd10
movzx eax, byte [esp + 0x10]
test al, al
jne 0x437802
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x3c]
jmp 0x43778f
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
call fcn.00449650
mov eax, dword [esp + 4]
test eax, eax
setne cl
mov edx, dword [esp + 8]
test edx, edx
setne bl
or ebx, ecx
mov ecx, dword [esp + 8]
test bl, bl
je 0x437882
mov ebx, dword [esp + 0x3c]
test ebx, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x94]
test esi, esi
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
je 0x43785d
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x43778f
cmp eax, ebx
xchg ebp, ebx
setb bl
xchg ebp, ebx
cmp edx, esi
sete dl
xchg edi, ebx
setl bl
xchg edi, ebx
and edx, ebp
or edi, edx
xchg edi, eax
test al, al
xchg edi, eax
jne 0x437852
mov ecx, esi
mov eax, ebx
jmp 0x437852
mov ebx, dword [esp + 0x3c]
mov esi, dword [esp + 0x94]
jmp 0x43787c
test edx, edx
setne al
test ecx, ecx
setne bl
or ebx, eax
mov byte [esp + 0x27], bl
test bl, bl
je 0x437f3f
mov eax, dword [esp + 0xa4]
test eax, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x98]
test esi, esi
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
jne 0x437f1e
mov ebp, edx
sub edx, eax
mov eax, ecx
sbb ecx, esi
test ecx, ecx
jge 0x4378e3
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
lea eax, [0x5afd7c]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
test eax, eax
jne 0x437f08
xor eax, eax
test al, al
jne 0x437d92
lea eax, [0x5afda8]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
test eax, eax
jne 0x437d35
xor eax, eax
test al, al
jne 0x4379c0
movzx eax, byte [esp + 0x27]
test al, al
jne 0x4379a7
xor eax, eax
test al, al
jne 0x437956
call fcn.00436560
mov eax, dword [esp + 0xe0]
jmp 0x437b0b
lea eax, [0x5938d0]
mov dword [esp], eax
call fcn.004021a0
mov eax, dword [esp + 4]
test eax, eax
sete cl
mov edx, dword [esp + 8]
test edx, edx
sete bl
and ebx, ecx
test bl, bl
je 0x437983
call fcn.0042b160
jmp 0x437945
mov ecx, dword [esp + 0x94]
cmp ecx, edx
setl bl
mov ebp, dword [esp + 0x3c]
cmp ebp, eax
setb al
cmp ecx, edx
sete cl
and ecx, eax
or ecx, ebx
test cl, cl
jne 0x43797c
jmp 0x437945
lea eax, [0x5afda8]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
test eax, eax
setne al
jmp 0x437941
lea eax, [0x5938d0]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
call fcn.004021c0
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x18]
mov edx, dword [ecx + 0x54]
test edx, edx
jne 0x43839e
movzx ecx, byte [ecx + 0x84]
test cl, cl
jne 0x438388
mov ecx, dword [0x5afe24]
test ecx, ecx
setne cl
mov edx, dword [0x5afe20]
test edx, edx
setne dl
or edx, ecx
test dl, dl
je 0x437d25
xor ecx, ecx
xor edx, edx
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.0042b260
mov eax, dword [esp + 8]
mov dword [esp + 0x60], eax
lea eax, [0x5938d0]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.004021c0
call fcn.0045a5f0
mov eax, dword [esp]
mov ecx, dword [esp + 4]
lea edx, [0x5938c8]
mov dword [esp], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
call fcn.004021c0
mov eax, dword [0x5afe20]
test eax, eax
setne al
mov ecx, dword [0x5afe24]
test ecx, ecx
setne cl
or ecx, eax
test cl, cl
je 0x437aa5
mov eax, dword [esp + 0x60]
test eax, eax
je 0x437d14
nop
nop
lea eax, [0x5938d8]
mov dword [esp], eax
call fcn.004093e0
call fcn.0043dfa0
mov eax, dword [esp]
mov dword [esp + 0xd8], eax
nop
nop
lea ecx, [0x5938d8]
mov dword [esp], ecx
call fcn.004095f0
mov eax, dword [esp + 0xd8]
test eax, eax
je 0x437d03
mov dword [esp], eax
call fcn.0043bcc0
mov eax, dword [esp + 0x60]
test eax, eax
jne 0x437c83
movzx eax, byte [esp + 0x23]
test al, al
jne 0x437c57
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x18]
mov ecx, dword [ecx + 0x54]
mov edx, dword [0x593960]
test edx, edx
je 0x437b29
call fcn.00436eb0
mov eax, dword [esp + 0xe0]
jmp 0x437b0b
mov dword [esp + 0xec], ecx
test byte [ecx], al
mov edx, dword [ecx + 0x13a8]
test edx, edx
jne 0x438377
mov dword [esp], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.00438dc0
movzx eax, byte [0x5afce7]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x48], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x4c], ebx
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x58], ebp
test al, al
je 0x437b92
movzx eax, byte [0x5afce8]
test al, al
jne 0x438342
mov eax, dword [0x58ef88]
mov eax, dword [eax]
test eax, eax
jne 0x43832d
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0043e550
mov eax, dword [esp + 4]
movzx ecx, byte [esp + 8]
test eax, eax
jne 0x438318
mov eax, dword [0x593918]
test eax, eax
jne 0x4382b1
lea eax, [0x5afda8]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
test eax, eax
jne 0x43826d
xor eax, eax
test al, al
jne 0x4381c9
mov edx, dword [esp + 0xe0]
mov ebx, dword [edx + 0x18]
mov ebp, dword [0x5afd8c]
movzx ebx, byte [ebx + 0x84]
test bl, bl
je 0x438176
xor eax, eax
test al, al
jne 0x43815a
mov ebx, dword [edx + 0x18]
movzx ebp, byte [ebx + 0x84]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x438131
mov esi, dword [esp + 0xec]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x58]
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x48]
xor eax, eax
xor eax, eax
mov byte [esp + 0x25], al
xor eax, eax
jmp 0x437487
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x84], 1
lea ecx, [0x59390c]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004020b0
jmp 0x437b04
nop
nop
mov dword [esp + 0xec], eax
test eax, eax
je 0x437c97
mov ecx, dword [eax + 0x58]
mov dword [esp + 0x60], ecx
lea eax, [esp + 0x60]
mov dword [esp], eax
call fcn.00438650
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.004346d0
movzx eax, byte [0x59c0a8]
test al, al
jne 0x437cea
mov eax, dword [esp + 0xec]
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0044bdd0
jmp 0x437ccd
lea eax, [esp + 0x60]
mov dword [esp], eax
call fcn.00438650
jmp 0x437945
call fcn.00436560
mov eax, dword [esp + 0xe0]
jmp 0x437b0b
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
jmp 0x437a29
lea eax, [0x5afdac]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
test eax, eax
jbe 0x437d82
lea eax, [0x5938c8]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.00402130
mov eax, dword [esp + 0xc]
test eax, eax
setne al
mov ecx, dword [esp + 0x10]
test ecx, ecx
setne cl
or eax, ecx
jmp 0x43792e
movzx eax, byte [esp + 0x27]
test al, al
jne 0x437d4b
xor eax, eax
jmp 0x43792e
nop
nop
lea eax, [0x5938d8]
mov dword [esp], eax
call fcn.004093e0
call fcn.0043dfa0
mov eax, dword [esp]
test eax, eax
je 0x437eff
mov ecx, dword [0x5afd7c]
test ecx, ecx
je 0x437ef1
mov dword [esp + 0xe8], eax
lea eax, [0x5afe28]
mov dword [esp], eax
call fcn.004092d0
mov eax, dword [esp + 4]
test eax, eax
je 0x437ecd
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xd8], ecx
nop
nop
lea edx, [0x5938d8]
mov dword [esp], edx
call fcn.004095f0
mov eax, dword [esp + 0xd8]
test eax, eax
je 0x437912
mov dword [esp], eax
call fcn.0043bcc0
movzx eax, byte [esp + 0x23]
test al, al
jne 0x437ea1
mov eax, dword [esp + 0xd8]
mov dword [eax + 0xb78], 3
mov eax, dword [esp + 0xc0]
mov eax, dword [eax + 0xc]
mov dword [esp + 0xec], eax
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.004346d0
movzx eax, byte [0x59c0a8]
test al, al
jne 0x437e88
mov eax, dword [esp + 0xec]
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0044bdd0
jmp 0x437e6b
mov eax, dword [esp + 0xe0]
mov eax, dword [eax + 0x18]
mov byte [eax + 0x84], 1
lea eax, [0x59390c]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004020b0
jmp 0x437e26
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.0043deb0
mov eax, dword [esp + 0xe4]
xor ecx, ecx
jmp 0x437de8
call fcn.0043deb0
xor ecx, ecx
xor eax, eax
jmp 0x437de8
mov ecx, eax
xor eax, eax
jmp 0x437de8
mov dword [esp], 0
call fcn.00417fa0
movzx eax, byte [esp + 4]
jmp 0x43790a
call fcn.0045a5f0
mov eax, dword [esp]
mov esi, dword [esp + 4]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x3c]
movzx ebx, byte [esp + 0x27]
jmp 0x4378d3
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
jmp 0x4378e3
mov dword [esp], eax
call fcn.0043bcc0
movzx eax, byte [esp + 0x23]
test al, al
jne 0x437f6c
mov eax, dword [esp + 0xe0]
jmp 0x437b0b
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x84], 1
lea ecx, [0x59390c]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004020b0
jmp 0x437f60
mov eax, dword [esp + 0xdc]
mov dword [esp], eax
call fcn.0043e0a0
movzx eax, byte [esp + 4]
xor eax, 1
jmp 0x43773e
mov byte [ecx + 0x84], 0
lea eax, [0x59390c]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call fcn.004020b0
mov eax, dword [esp + 8]
test eax, eax
jl 0x4383b4
mov eax, dword [esp + 0xe0]
movzx edx, byte [esp + 0x23]
jmp 0x4376d1
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0043dbe0
mov eax, dword [esp + 8]
mov dword [esp + 0xc8], eax
nop
nop
lea ecx, [0x5938d8]
mov dword [esp], ecx
call fcn.004095f0
mov eax, dword [esp + 0xc8]
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov edi, 0xffffffff
mov ecx, 0xffffffff
jmp 0x4375cb
lea eax, [0x5afe28]
mov dword [esp], eax
call fcn.004092d0
mov eax, dword [esp + 4]
test eax, eax
jne 0x438084
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0x98]
mov esi, dword [esp + 0xec]
mov edi, dword [esp + 0x94]
jmp 0x4375b3
mov ecx, dword [esp + 0xec]
mov dword [ecx + 0xb78], 3
mov eax, dword [eax + 0xc]
mov dword [esp + 0xec], eax
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.004346d0
movzx eax, byte [0x59c0a8]
test al, al
jne 0x4380df
mov eax, dword [esp + 0xec]
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0044bdd0
jmp 0x4380c2
mov dword [esp], esi
call fcn.00417fa0
movzx eax, byte [esp + 4]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0x98]
mov esi, dword [esp + 0xec]
mov edi, dword [esp + 0x94]
jmp 0x4375ab
mov byte [ebx + 0x84], 1
lea eax, [0x59390c]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004020b0
mov edx, dword [esp + 0xe0]
jmp 0x437c31
mov esi, dword [esp + 0xec]
mov edi, dword [esp + 0x48]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0x58]
mov ebx, dword [esp + 0x4c]
jmp 0x437582
mov dword [esp + 0x98], ebp
lea eax, [0x59390c]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
mov dword [esp + 0xa4], eax
lea ecx, [0x593908]
mov dword [esp], ecx
call fcn.00401fa0
mov eax, dword [esp + 0xa4]
shl eax, 1
mov ecx, dword [esp + 0x98]
sub ecx, dword [esp + 4]
cmp eax, ecx
setae al
mov edx, dword [esp + 0xe0]
jmp 0x437c15
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0042b260
mov eax, dword [esp + 8]
mov dword [esp + 0x5c], eax
test eax, eax
je 0x437bf4
nop
nop
mov dword [esp + 0xec], eax
test eax, eax
je 0x438201
mov ecx, dword [eax + 0x58]
mov dword [esp + 0x5c], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
call fcn.00438650
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.004346d0
movzx eax, byte [0x59c0a8]
test al, al
jne 0x438254
mov eax, dword [esp + 0xec]
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0044bdd0
jmp 0x438237
lea eax, [0x5afdac]
mov dword [esp], eax
call fcn.00401fa0
mov eax, dword [esp + 4]
test eax, eax
ja 0x43828a
xor eax, eax
jmp 0x437bec
lea eax, [0x5938c8]
mov dword [esp], eax
call fcn.004021a0
mov eax, dword [esp + 4]
test eax, eax
setne al
mov ecx, dword [esp + 8]
test ecx, ecx
setne cl
or eax, ecx
jmp 0x437bec
nop
nop
lea eax, [0x5938d8]
mov dword [esp], eax
call fcn.004093e0
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0043dbe0
mov eax, dword [esp + 8]
mov dword [esp + 0xcc], eax
nop
nop
lea ecx, [0x5938d8]
mov dword [esp], ecx
call fcn.004095f0
mov eax, dword [esp + 0xcc]
test eax, eax
je 0x437bd0
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], 0
add esp, 0xf0
ret
mov dword [esp + 0xf4], eax
mov byte [esp + 0xf8], cl
add esp, 0xf0
ret
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00459240
jmp 0x437ba2
call fcn.004138c0
mov eax, dword [esp]
test eax, eax
jne 0x438363
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x58]
jmp 0x437b92
mov dword [esp + 4], 0
mov byte [esp + 8], 1
call fcn.00434220
jmp 0x43834e
call fcn.00435810
mov ecx, dword [esp + 0xec]
jmp 0x437b40
lea eax, [0x4ecf5a]
mov dword [esp], eax
mov dword [esp + 4], 0x23
call fcn.004307d0
lea eax, [0x4eb1e5]
mov dword [esp], eax
mov dword [esp + 4], 0x1c
call fcn.004307d0
lea eax, [0x4ec7de]
mov dword [esp], eax
mov dword [esp + 4], 0x21
call fcn.004307d0
lea eax, [0x4e8be7]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.004307d0
call fcn.0042eb20
mov eax, ebx
mov ecx, esi
call fcn.00459660
call fcn.0042eb20
call fcn.0042eb20
nop
call fcn.00458070
jmp fcn.00437100