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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1f4]
cmp eax, dword [ecx + 8]
jbe 0x468634
sub esp, 0x274
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov eax, dword [esp + 0x27c]
mov dword [esp + 0xb4], eax
test eax, eax
je 0x4671c3
jmp 0x467200
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
lea eax, [0x4be0e0]
mov dword [esp + 0x298], eax
lea eax, [0x4bd9a8]
mov dword [esp + 0x29c], eax
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x467202
mov eax, dword [esp + 0x28c]
test eax, eax
jne 0x46720f
jmp 0x467211
jmp 0x467220
lea eax, [0x5260a0]
mov dword [esp + 0x28c], eax
jmp 0x467220
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 0x20]
mov dword [esp + 0x130], eax
test eax, eax
jne 0x467239
jmp 0x46723b
jmp 0x46724a
lea eax, [0x5260e0]
mov dword [esp + 0x130], eax
jmp 0x46724a
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 0x18]
mov dword [esp + 0xb4], eax
cmp eax, 3
jg 0x467264
jmp 0x4672a1
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
lea eax, [0x4be0e0]
mov dword [esp + 0x298], eax
lea eax, [0x4bd9a8]
mov dword [esp + 0x29c], eax
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x4672a3
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 0x18]
mov dword [esp + 0xb4], eax
cmp eax, 3
jl 0x4672bd
jmp 0x4672fa
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
lea eax, [0x4be0e0]
mov dword [esp + 0x298], eax
lea eax, [0x4bd9a4]
mov dword [esp + 0x29c], eax
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x4672fc
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 4]
mov dword [esp + 0xb4], eax
test eax, eax
jne 0x467318
jmp 0x46744a
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x1dc], 0
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x1d4], 0
mov dword [esp + 0x1d8], 0
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
mov edx, dword [esp + 0x278]
mov ebx, dword [esp + 0x27c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00466710
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x1e0], ecx
mov dword [esp + 0x1d4], edx
mov dword [esp + 0x1d8], ebx
mov eax, dword [esp + 0x1dc]
mov ecx, dword [esp + 0x1e0]
mov dword [esp + 0x278], eax
mov dword [esp + 0x27c], ecx
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
mov eax, dword [esp + 0x1a4]
test eax, eax
jne 0x467409
jmp 0x467448
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
mov eax, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x1a8]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x46744c
jmp 0x46744c
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1d4], 0
mov dword [esp + 0x1d8], 0
mov eax, dword [esp + 0x278]
mov ecx, dword [esp + 0x27c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00468ce0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], edx
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x148], eax
mov eax, dword [esp + 0x1d8]
mov ecx, dword [esp + 0x1d4]
mov dword [esp + 0x298], ecx
mov dword [esp + 0x29c], eax
mov eax, dword [esp + 0x298]
test eax, eax
jne 0x4674df
jmp 0x467502
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
nop
call fcn.00433740
add esp, 0x274
ret
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x1b8], 0
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 8]
test eax, eax
jne 0x46752a
jmp 0x467549
mov eax, dword [esp + 0x130]
test byte [eax], al
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], eax
jmp 0x467586
mov eax, dword [esp + 0x280]
mov ecx, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00465990
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
jmp 0x467586
mov dword [esp + 0x144], 0
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0xb4], eax
test eax, eax
jne 0x4675a8
jmp 0x467660
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1d4], 0
mov dword [esp + 0x1d8], 0
mov eax, dword [esp + 0x1b4]
mov ecx, dword [esp + 0x1b8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00468ce0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], edx
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x144], eax
mov eax, dword [esp + 0x1d8]
mov ecx, dword [esp + 0x1d4]
mov dword [esp + 0x298], ecx
mov dword [esp + 0x29c], eax
mov eax, dword [esp + 0x298]
test eax, eax
jne 0x46763b
jmp 0x46765e
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x467662
jmp 0x467662
mov dword [esp + 0x140], 0
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 4]
mov dword [esp + 0xb4], eax
test eax, eax
jne 0x467689
jmp 0x46774f
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1d4], 0
mov dword [esp + 0x1d8], 0
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], eax
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00468ce0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], edx
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x140], eax
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
mov eax, dword [esp + 0x298]
test eax, eax
jne 0x46772a
jmp 0x46774d
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x467751
jmp 0x467751
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x60], 0
lea eax, [esp + 0x44]
mov dword [esp], eax
lea eax, [esp + 0x40]
mov dword [esp + 4], eax
lea eax, [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0046c720
cmp dword [esp + 0x44], 6
setb al
mov byte [esp + 0x37], al
jb 0x467795
jmp 0x467797
jmp 0x4677c2
cmp dword [esp + 0x44], 6
sete al
mov byte [esp + 0x36], al
je 0x4677a7
jmp 0x4677b5
cmp dword [esp + 0x40], 1
setbe al
mov byte [esp + 0x36], al
jmp 0x4677b7
jmp 0x4677b7
movzx eax, byte [esp + 0x36]
mov byte [esp + 0x37], al
jmp 0x4677c2
movzx eax, byte [esp + 0x37]
mov byte [esp + 0x35], al
mov dword [esp + 0xb8], 0
mov byte [esp + 0xbc], 0
lea eax, [esp + 0xb8]
mov dword [esp + 0x194], eax
test byte [eax], al
lea ecx, [0x468640]
mov dword [esp + 0xb8], ecx
test byte [eax], al
movzx eax, byte [esp + 0x35]
mov byte [esp + 0xbc], al
mov eax, dword [esp + 0x194]
mov dword [esp + 0x13c], eax
call fcn.0046b6c0
mov eax, dword [esp]
mov dword [esp + 0xb0], eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x2c]
test eax, eax
jne 0x467844
jmp 0x467856
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x38], eax
jmp 0x467858
jmp 0x467858
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 0x18]
mov dword [esp + 0xb4], eax
lea ecx, [0x4a7d60]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00448290
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x1e4], edx
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x1ec], ecx
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov eax, dword [eax + 0x18]
mov dword [esp + 0xa8], eax
jmp 0x4678c8
mov ebx, dword [esp + 0xac]
cmp dword [esp + 0xa8], ebx
jg 0x4678dd
jmp 0x467b06
mov eax, dword [esp + 0xac]
mov dword [esp + 0x54], eax
mov ebx, dword [esp + 0x28c]
test byte [ebx], al
mov ecx, dword [ebx + 0x18]
mov ebx, dword [ebx + 0x14]
cmp ecx, eax
ja 0x467900
jmp 0x46862e
lea ebx, [ebx + eax*4]
mov ebx, dword [ebx]
test ebx, ebx
ja 0x46790e
jmp 0x467aee
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x38]
cmp dword [esp + 0x3c], ebx
setne bl
mov byte [esp + 0x36], bl
jne 0x467929
jmp 0x46796e
mov ebx, dword [esp + 0x28c]
test byte [ebx], al
mov ecx, dword [ebx + 0x18]
mov ebx, dword [ebx + 0x14]
mov eax, dword [esp + 0x54]
cmp ecx, eax
ja 0x467945
jmp 0x468629
lea eax, [ebx + eax*4]
mov eax, dword [eax]
mov dword [esp + 0xa4], eax
mov edx, dword [esp + 0x13c]
mov ecx, dword [edx]
mov dword [esp], eax
call ecx
movzx eax, byte [esp + 4]
mov byte [esp + 0x37], al
mov byte [esp + 0x36], al
jmp 0x467970
jmp 0x467970
movzx edx, byte [esp + 0x36]
test dl, dl
jne 0x46797b
jmp 0x467985
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x5c], edx
jmp 0x467987
jmp 0x467987
mov edx, dword [esp + 0x28c]
test byte [edx], al
mov ecx, dword [edx + 0x18]
mov edx, dword [edx + 0x14]
mov eax, dword [esp + 0x54]
cmp ecx, eax
ja 0x4679a3
jmp 0x468624
lea edx, [edx + eax*4]
mov edx, dword [edx]
mov dword [esp + 0xa0], edx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e4]
cmp ecx, eax
ja 0x4679ca
jmp 0x46861f
lea eax, [edx + eax*4]
mov dword [esp + 0x190], eax
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
mov byte [esp + 0x14], 1
mov dword [esp + 0x18], 2
call fcn.0046af90
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
test edx, edx
jne 0x467a2c
jmp 0x467a6b
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1b0]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
nop
call fcn.00433740
add esp, 0x274
ret
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e4]
cmp eax, ecx
jb 0x467a86
jmp 0x46861a
lea eax, [edx + eax*4]
mov eax, dword [eax]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0x38]
mov dword [esp], 0x24
lea edx, [0x4b9b6c]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov byte [esp + 0x1c], 0
mov dword [esp + 0x20], 1
call fcn.00432bb0
test eax, eax
jne 0x467ae1
jmp 0x467adf
jmp 0x467af0
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x467af0
jmp 0x467af2
mov ebx, dword [esp + 0xac]
inc ebx
mov dword [esp + 0xac], ebx
jmp 0x4678c8
lea edi, [esp + 0x22c]
xor eax, eax
call fcn.0045daae
lea ecx, [esp + 0x22c]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1d4], 0
mov dword [esp + 0x1d8], 0
mov dword [esp], 2
call fcn.00469f10
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x19c], ecx
mov dword [esp + 0x1d4], edx
mov dword [esp + 0x1d8], ebx
mov ecx, dword [esp + 0x134]
test byte [ecx], al
lea edi, [ecx + 0x44]
mov edx, dword [0x54cbf0]
mov eax, dword [esp + 0x19c]
test edx, edx
je 0x467b8f
jmp 0x467b94
mov dword [ecx + 0x44], eax
jmp 0x467b9b
call fcn.0045d8e0
jmp 0x467b9b
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
mov eax, dword [esp + 0x298]
test eax, eax
jne 0x467bc4
jmp 0x467bf5
mov dword [esp + 0x98], 0
mov dword [esp + 0x290], 0
mov eax, dword [esp + 0x98]
mov dword [esp + 0x294], eax
nop
call fcn.00433740
add esp, 0x274
ret
mov eax, dword [esp + 0x134]
test byte [eax], al
mov eax, dword [eax + 0x44]
mov dword [esp + 0x18c], eax
mov dword [esp + 0xd0], 4
lea eax, [0x4b9b78]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x18c]
mov dword [esp + 0xf8], eax
lea eax, [esp + 0xd0]
mov dword [esp], eax
call fcn.00432ce0
test eax, eax
jne 0x467f42
jmp 0x467c47
mov edx, dword [esp + 0x134]
test byte [edx], al
mov dword [edx], 0x48
mov edx, dword [esp + 0x134]
test byte [edx], al
mov dword [edx + 0x2c], 0x100
mov edx, dword [esp + 0x130]
test byte [edx], al
movzx edx, byte [edx]
test dl, dl
jne 0x467c78
jmp 0x467ca4
mov edx, dword [esp + 0x134]
test byte [edx], al
mov ebx, dword [esp + 0x134]
test byte [ebx], al
mov edx, dword [edx + 0x2c]
or edx, 1
mov dword [ebx + 0x2c], edx
mov edx, dword [esp + 0x134]
test byte [edx], al
mov word [edx + 0x30], 0
jmp 0x467ca6
jmp 0x467ca6
mov edx, dword [esp + 0x130]
test byte [edx], al
mov edx, dword [edx + 0x2c]
test edx, edx
jne 0x467cbb
jmp 0x467d6f
mov eax, dword [esp + 0x134]
test byte [eax], al
mov eax, dword [eax + 0x44]
mov dword [esp + 0x188], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
add eax, 0x2c
mov dword [esp + 0x184], eax
mov ecx, dword [esp + 0x188]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20000
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call fcn.0046c3d0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
test edx, edx
jne 0x467d3c
jmp 0x467d6d
mov dword [esp + 0x94], 0
mov dword [esp + 0x290], 0
mov eax, dword [esp + 0x94]
mov dword [esp + 0x294], eax
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x467d71
jmp 0x467d71
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e4]
test ecx, ecx
ja 0x467d88
jmp 0x468613
mov ebx, dword [esp + 0x134]
test byte [ebx], al
mov edx, dword [edx]
mov dword [ebx + 0x38], edx
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e4]
cmp ecx, 1
ja 0x467dae
jmp 0x468609
mov ebx, dword [esp + 0x134]
test byte [ebx], al
mov edx, dword [edx + 4]
mov dword [ebx + 0x3c], edx
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e4]
cmp ecx, 2
ja 0x467dd5
jmp 0x4685ff
mov eax, dword [esp + 0x134]
test byte [eax], al
mov ecx, dword [edx + 8]
mov dword [eax + 0x40], ecx
mov eax, dword [esp + 0x130]
test byte [eax], al
mov ecx, dword [eax + 0x20]
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x220], ecx
mov dword [esp + 0x224], edx
mov dword [esp + 0x228], eax
mov eax, dword [esp + 0x1e8]
mov ecx, dword [esp + 0x1e4]
mov edx, dword [esp + 0x1ec]
mov dword [esp + 0x214], ecx
mov dword [esp + 0x218], eax
mov dword [esp + 0x21c], edx
mov ecx, dword [esp + 0x224]
add eax, ecx
mov dword [esp + 0x90], eax
cmp dword [esp + 0x21c], eax
jb 0x467e50
jmp 0x467ea6
mov ecx, dword [esp + 0x214]
mov edx, dword [esp + 0x218]
mov ebx, dword [esp + 0x21c]
lea ebp, [0x4a7d60]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
call fcn.00448330
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x214], eax
mov dword [esp + 0x218], ecx
mov dword [esp + 0x21c], edx
jmp 0x467ea8
jmp 0x467ea8
mov eax, dword [esp + 0x90]
mov dword [esp + 0x218], eax
mov eax, dword [esp + 0x224]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x214]
mov ecx, dword [esp + 0x1e8]
lea eax, [eax + ecx*4]
mov dword [esp + 0x180], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x220]
mov dword [esp], eax
mov dword [esp + 4], edx
shl ecx, 2
mov dword [esp + 8], ecx
call fcn.0045e1c0
mov eax, dword [esp + 0x214]
mov ecx, dword [esp + 0x218]
mov edx, dword [esp + 0x21c]
mov dword [esp + 0x1e4], eax
mov dword [esp + 0x1e8], ecx
mov dword [esp + 0x1ec], edx
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x1e8]
mov dword [esp + 0x84], eax
jmp 0x467f4f
nop
call fcn.00433740
add esp, 0x274
ret
mov ebx, dword [esp + 0x88]
cmp dword [esp + 0x84], ebx
jg 0x467f64
jmp 0x467fed
mov eax, dword [esp + 0x88]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x1e8]
mov ebx, dword [esp + 0x1e4]
cmp ecx, eax
ja 0x467f86
jmp 0x4685fa
lea eax, [ebx + eax*4]
mov eax, dword [eax]
mov dword [esp + 0x80], eax
mov edx, dword [esp + 0x13c]
mov ecx, dword [edx]
mov dword [esp], eax
call ecx
movzx eax, byte [esp + 4]
mov byte [esp + 0x37], al
test al, al
jne 0x467faf
jmp 0x467fd5
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x1e8]
mov ebx, dword [esp + 0x1e4]
cmp ecx, eax
ja 0x467fca
jmp 0x4685f5
lea ebx, [ebx + eax*4]
mov dword [ebx], 0
jmp 0x467fd7
jmp 0x467fd7
jmp 0x467fd9
mov ebx, dword [esp + 0x88]
inc ebx
mov dword [esp + 0x88], ebx
jmp 0x467f4f
mov dword [esp + 0x48], 0
mov dword [esp + 0x7c], 0
mov ebx, dword [esp + 0x1e8]
mov dword [esp + 0x78], ebx
jmp 0x46800a
mov ebx, dword [esp + 0x7c]
cmp dword [esp + 0x78], ebx
jg 0x468019
jmp 0x46809d
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x1e8]
mov ebx, dword [esp + 0x1e4]
cmp ecx, eax
ja 0x468038
jmp 0x4685f0
lea ebx, [ebx + eax*4]
mov ebx, dword [ebx]
test ebx, ebx
jne 0x468043
jmp 0x46808b
mov ecx, dword [esp + 0x1e8]
mov ebx, dword [esp + 0x1e4]
cmp ecx, eax
ja 0x46805a
jmp 0x4685eb
mov ebp, dword [esp + 0x48]
mov ecx, dword [esp + 0x1e8]
mov esi, dword [esp + 0x1e4]
lea ebx, [ebx + eax*4]
mov ebx, dword [ebx]
cmp ecx, ebp
ja 0x46807a
jmp 0x4685e4
lea ebp, [esi + ebp*4]
mov dword [ebp], ebx
mov ebx, dword [esp + 0x48]
inc ebx
mov dword [esp + 0x48], ebx
jmp 0x46808d
jmp 0x46808d
jmp 0x46808f
mov ebx, dword [esp + 0x7c]
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x46800a
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x1ec]
cmp edx, ecx
jae 0x4680b1
jmp 0x4685df
jmp 0x4680b3
mov dword [esp + 0x1e8], ecx
mov dword [esp + 0xb4], ecx
test ecx, ecx
setg dl
mov byte [esp + 0x36], dl
jg 0x4680ce
jmp 0x4680e4
mov edx, dword [esp + 0x130]
test byte [edx], al
movzx edx, byte [edx + 0x1c]
xor edx, 1
mov byte [esp + 0x36], dl
jmp 0x4680e6
jmp 0x4680e6
movzx edx, byte [esp + 0x36]
mov byte [esp + 0x34], dl
movzx edx, byte [esp + 0x34]
test dl, dl
jne 0x4680fd
jmp 0x4681cd
mov edx, dword [esp + 0x1e8]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0x134]
test byte [edx], al
mov edx, dword [edx + 0x44]
mov dword [esp + 0x17c], edx
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e4]
test ecx, ecx
ja 0x468135
jmp 0x4685d8
mov dword [esp + 0x178], edx
mov eax, dword [esp + 0x17c]
mov ecx, dword [esp + 0xb4]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20002
mov dword [esp + 0xc], edx
shl ecx, 2
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call fcn.0046c3d0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
mov eax, dword [esp + 0x298]
test eax, eax
jne 0x4681a0
jmp 0x4681cb
mov dword [esp + 0x74], 0
mov dword [esp + 0x290], 0
mov eax, dword [esp + 0x74]
mov dword [esp + 0x294], eax
nop
call fcn.00433740
add esp, 0x274
ret
jmp 0x4681cf
jmp 0x4681cf
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
lea eax, [esp + 0xc0]
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0xc]
or eax, 0x80400
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x10]
test eax, eax
jne 0x468233
jmp 0x46837c
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x208], ecx
mov dword [esp + 0x20c], edx
mov dword [esp + 0x210], eax
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00465b30
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x10]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x14]
mov dword [esp + 0x174], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x18]
mov dword [esp + 0x170], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 0x15c], eax
test byte [eax], al
mov dword [esp + 0x16c], eax
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x70]
movzx ebx, byte [esp + 0x34]
mov ebp, dword [esp + 0x148]
mov esi, dword [esp + 0x144]
mov edi, dword [esp + 0x1a0]
mov dword [esp + 0x158], edi
mov eax, dword [esp + 0x140]
mov dword [esp + 0x154], eax
mov eax, dword [esp + 0x138]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x174]
mov edi, dword [esp + 0x170]
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edi
mov byte [esp + 0x14], bl
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x158]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x15c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x28], eax
call fcn.0046a3f0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
jmp 0x46849c
mov eax, dword [esp + 0x28c]
test byte [eax], al
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x1fc], ecx
mov dword [esp + 0x200], edx
mov dword [esp + 0x204], eax
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00465b30
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x14]
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x130]
test byte [eax], al
mov eax, dword [eax + 0x18]
mov dword [esp + 0x164], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 0x15c], eax
test byte [eax], al
mov dword [esp + 0x160], eax
mov ecx, dword [esp + 0x58]
movzx edx, byte [esp + 0x34]
mov ebx, dword [esp + 0x148]
mov ebp, dword [esp + 0x144]
mov esi, dword [esp + 0x1a0]
mov edi, dword [esp + 0x140]
mov dword [esp + 0x158], edi
mov eax, dword [esp + 0x138]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x168]
mov edi, dword [esp + 0x164]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
mov byte [esp + 0x10], dl
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x158]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x15c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x24], eax
call fcn.0046ad50
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
jmp 0x46849c
mov eax, dword [esp + 0x298]
test eax, eax
jne 0x4684a9
jmp 0x4684d4
mov dword [esp + 0x6c], 0
mov dword [esp + 0x290], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x294], eax
nop
call fcn.00433740
add esp, 0x274
ret
mov eax, dword [esp + 0x138]
test byte [eax], al
mov eax, dword [eax + 4]
mov dword [esp + 0x68], eax
mov dword [esp + 0xfc], 0xc
lea eax, [0x4b9b64]
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x124], eax
lea eax, [esp + 0xfc]
mov dword [esp], eax
call fcn.00432ce0
test eax, eax
jne 0x4685cb
jmp 0x468520
mov eax, dword [esp + 0x1e4]
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1ec]
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x1f4], ecx
mov dword [esp + 0x1f8], edx
mov eax, dword [esp + 0x130]
mov dword [esp + 0x14c], eax
mov dword [esp + 0x198], eax
mov eax, dword [esp + 0x138]
test byte [eax], al
mov eax, dword [eax]
mov dword [esp + 0x64], eax
mov dword [esp + 0x1bc], 0
mov dword [esp + 0x1c0], 0
mov eax, dword [esp + 0x138]
test byte [eax], al
mov eax, dword [eax + 8]
mov dword [esp + 0x290], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x294], eax
mov eax, dword [esp + 0x1bc]
mov ecx, dword [esp + 0x1c0]
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], ecx
nop
call fcn.00433740
add esp, 0x274
ret
nop
call fcn.00433740
add esp, 0x274
ret
xor eax, eax
call fcn.0045d960
call fcn.0045d9a0
mov eax, ebp
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
mov eax, 2
call fcn.0045d960
mov eax, 1
call fcn.0045d960
xor eax, eax
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
call fcn.0045d960
nop
call fcn.0045c4a0
jmp fcn.00467160