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

Disassembly:
push 0xffffffffffffffff
push 0x47d5f5
mov eax, dword fs:[0]
push eax
sub esp, 0x884
mov eax, dword [0x4983f8]
xor eax, esp
mov dword [esp + 0x880], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4983f8]
xor eax, esp
push eax
lea eax, [esp + 0x898]
mov dword fs:[0], eax
mov eax, dword [esp + 0x8e8]
mov esi, dword [esp + 0x8a8]
mov edi, dword [esp + 0x8ac]
mov ebx, dword [esp + 0x8ec]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x8f4]
xor ebp, ebp
mov dword [esp + 0x38], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x18], ebp
lea ecx, [esp + 0x1a4]
push ecx
mov dword [esp + 0x8a4], 1
call fcn.0041bb00
lea edx, [esp + 0x1a4]
push edx
sub esp, 0x1c
mov byte [esp + 0x8c0], 2
mov eax, esp
mov dword [esp + 0x48], esp
push edi
push eax
call fcn.00408390
call fcn.00436b20
cmp eax, ebp
jne 0x433977
lea ecx, [esp + 0x1a4]
push ecx
mov byte [esp + 0x8a4], 1
call fcn.0041bba0
mov esi, 8
cmp dword [esp + 0x8c8], esi
jb 0x433938
mov edx, dword [esp + 0x8b4]
push edx
call fcn.00462b9f
add esp, 4
xor eax, eax
mov dword [esp + 0x8c8], 7
mov dword [esp + 0x8c4], ebp
mov word [esp + 0x8b4], ax
cmp dword [esp + 0x8e4], esi
jb 0x43396d
mov ecx, dword [esp + 0x8d0]
push ecx
call fcn.00462b9f
add esp, 4
mov eax, 1
jmp 0x4348e3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push 0xffffffffffffffff
mov esi, 7
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebp
push ebp
lea eax, [esp + 0x8f0]
mov word [ecx + 4], dx
call fcn.00405ca0
sub esp, 0x1c
mov ecx, esp
mov byte [esp + 0x8d8], 3
mov dword [esp + 0x4c], esp
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebp
push 0xffffffffffffffff
mov word [ecx + 4], ax
push ebp
lea eax, [esp + 0x8f0]
call fcn.00405ca0
lea ecx, [esp + 0xc8]
push ecx
mov byte [esp + 0x8dc], 2
call fcn.0043b330
mov byte [esp + 0x8a0], 4
mov eax, dword [esp + 0xa4]
push 0x487060
xor edi, edi
lea ecx, [esp + 0x94]
call fcn.00404a20
test eax, eax
jne 0x433aaa
mov edi, 8
cmp dword [esp + 0xa8], edi
jb 0x433a29
mov edx, dword [esp + 0x94]
push edx
call fcn.00462b9f
add esp, 4
lea ecx, [esp + 0x1a4]
xor eax, eax
push ecx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa8], ebp
mov word [esp + 0x98], ax
mov byte [esp + 0x8a4], 1
call fcn.0041bba0
cmp dword [esp + 0x8c8], edi
jb 0x433a6f
mov edx, dword [esp + 0x8b4]
push edx
call fcn.00462b9f
add esp, 4
xor eax, eax
mov dword [esp + 0x8c8], esi
mov dword [esp + 0x8c4], ebp
mov word [esp + 0x8b4], ax
cmp dword [esp + 0x8e4], edi
jb 0x433aa0
mov ecx, dword [esp + 0x8d0]
push ecx
call fcn.00462b9f
add esp, 4
mov eax, 0x20
jmp 0x4348e3
lea edi, [esp + 0x90]
mov eax, ebx
call fcn.004031e0
lea edx, [esp + 0x144]
push edx
call fcn.00401000
lea eax, [esp + 0x1a4]
push eax
sub esp, 0x1c
mov byte [esp + 0x8c0], 5
mov ecx, esp
mov dword [esp + 0x48], esp
xor edx, edx
push 0xffffffffffffffff
mov dword [ecx + 0x18], 7
mov dword [ecx + 0x14], 0
push edx
lea eax, [esp + 0xb8]
lea esi, [esp + 0x50]
lea edi, [esp + 0x16c]
mov word [ecx + 4], dx
call fcn.00405ca0
mov edx, esi
mov ecx, edi
call fcn.00435ae0
mov ebp, eax
push 0x486fa8
lea eax, [esp + 0xb0]
push eax
call fcn.00408390
mov byte [esp + 0x8a0], 6
cmp ebp, 0x18
je 0x433b3f
cmp ebp, 2
jne 0x433e22
push 0x2f
push 0x5c
lea edi, [esp + 0x8d4]
call fcn.00430d70
nop
push 0x48e36c
mov eax, 0x48d9cc
lea ecx, [esp + 0x8d0]
call fcn.0041f080
test eax, eax
jne 0x433b50
push 1
lea ebx, [esp + 0x5c]
lea ecx, [esp + 0x8d0]
call fcn.0041f300
mov ecx, eax
mov byte [esp + 0x8a0], 7
mov eax, dword [ecx + 0x14]
push 0x48d9cc
mov edi, 1
call fcn.00404a20
test eax, eax
sete bl
mov byte [esp + 0x8a0], 6
cmp dword [esp + 0x70], 8
jb 0x433bb9
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.00462b9f
add esp, 4
test bl, bl
je 0x433c15
lea ecx, [esp + 0xac]
call fcn.00405dc0
lea esi, [esp + 0x144]
call fcn.00401eb0
lea ecx, [esp + 0x90]
call fcn.00405dc0
lea edx, [esp + 0x1a4]
push edx
mov byte [esp + 0x8a4], 1
call fcn.0041bba0
lea ecx, [esp + 0x8b0]
call fcn.00405dc0
lea ecx, [esp + 0x8cc]
call fcn.00405dc0
mov eax, ebp
jmp 0x4348e3
lea edi, [esp + 0x14]
lea ebx, [esp + 0x8cc]
mov dword [esp + 0x14], 0x2f
call fcn.0041fe20
cmp eax, 0xffffffff
jne 0x433c36
or esi, eax
jmp 0x433c38
mov esi, eax
cmp ebp, 0x18
je 0x433c6d
lea edx, [esi + 1]
lea ecx, [esp + 0x3c]
lea eax, [esp + 0x8cc]
call fcn.004068a0
mov edx, eax
mov eax, 0x2a
mov dword [esp + 0x18], 1
call fcn.004067e0
cmp eax, 0xffffffff
jne 0x433c6d
mov bl, 1
jmp 0x433c6f
xor bl, bl
test byte [esp + 0x18], 1
je 0x433c84
and dword [esp + 0x18], 0xfffffffe
lea ecx, [esp + 0x3c]
call fcn.00405dc0
test bl, bl
je 0x433cb9
lea ecx, [esp + 0xac]
call fcn.00405dc0
lea esi, [esp + 0x144]
call fcn.00401eb0
lea ecx, [esp + 0x90]
call fcn.00405dc0
lea eax, [esp + 0x1a4]
push eax
jmp 0x433be9
inc esi
push esi
lea ebx, [esp + 0x40]
lea edx, [esp + 0x8d0]
call fcn.00406810
mov edi, eax
lea eax, [esp + 0x8cc]
mov byte [esp + 0x8a0], 8
call fcn.004031e0
mov ecx, ebx
mov byte [esp + 0x8a0], 6
call fcn.00405dc0
mov esi, 0x48d9cc
lea ecx, [esp + 0x90]
call fcn.00404740
test al, al
je 0x433d36
lea ecx, [esp + 0xac]
call fcn.00405dc0
lea esi, [esp + 0x144]
call fcn.00401eb0
lea ecx, [esp + 0x90]
call fcn.00405dc0
lea ecx, [esp + 0x1a4]
push ecx
jmp 0x433be9
mov eax, 0x2f
lea ebx, [esp + 0x90]
call fcn.0041f2e0
mov esi, eax
lea edx, [esi + 1]
lea ecx, [esp + 0x3c]
mov eax, ebx
call fcn.004068a0
mov edi, eax
lea eax, [esp + 0xac]
mov byte [esp + 0x8a0], 9
call fcn.004031e0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8a0], 6
call fcn.00405dc0
test esi, esi
je 0x433dba
push esi
lea ebx, [esp + 0x40]
lea edx, [esp + 0x94]
call fcn.00406810
mov edi, eax
lea eax, [esp + 0x90]
mov byte [esp + 0x8a0], 0xa
call fcn.004031e0
mov ecx, ebx
mov byte [esp + 0x8a0], 6
call fcn.00405dc0
jmp 0x433dce
push 0x48d9cc
lea edi, [esp + 0x94]
call fcn.00408280
add esp, 4
lea edx, [esp + 0xac]
push edx
mov edx, 0x486fa8
call fcn.0041ee70
cmp eax, 0xffffffff
jne 0x433dee
cmp ebp, 0x18
jne 0x433c88
lea ecx, [esp + 0x1a4]
push ecx
sub esp, 0x1c
lea edx, [esp + 0xb0]
mov esi, esp
mov dword [esp + 0x34], esp
push edx
lea edi, [esp + 0x4c]
lea ebx, [esp + 0x168]
call fcn.00405d90
mov edx, edi
mov ecx, ebx
call fcn.00435ae0
mov ebp, eax
test ebp, ebp
jne 0x433c88
cmp dword [esp + 0x194], ebp
jne 0x433e8e
lea ecx, [esp + 0xac]
call fcn.00405dc0
lea esi, [esp + 0x144]
call fcn.00401eb0
lea ecx, [esp + 0x90]
call fcn.00405dc0
lea ecx, [esp + 0x1a4]
push ecx
mov byte [esp + 0x8a4], 1
call fcn.0041bba0
lea ecx, [esp + 0x8b0]
call fcn.00405dc0
lea ecx, [esp + 0x8cc]
call fcn.00405dc0
mov eax, 1
jmp 0x4348e3
lea edx, [esp + 0x594]
push edx
call dword [0x481108]
mov esi, 0x487060
lea ecx, [esp + 0x8cc]
call fcn.00421e80
test al, al
je 0x433ee4
push 1
lea ebx, [esp + 0x40]
lea ecx, [esp + 0x8d0]
call fcn.0041f300
mov byte [esp + 0x8a0], 0xb
or dword [esp + 0x18], 2
mov esi, 0x48d9cc
mov ecx, eax
call fcn.00421e80
test al, al
je 0x433ee4
mov bl, 1
jmp 0x433ee6
xor bl, bl
mov dword [esp + 0x8a0], 6
test byte [esp + 0x18], 2
je 0x433f01
lea ecx, [esp + 0x3c]
call fcn.00405dc0
test bl, bl
je 0x433f19
push 0x48d9cc
lea ecx, [esp + 0x8d0]
call fcn.00406ea0
add esp, 4
push 0x2008
call fcn.00462d82
mov edx, dword [esp + 0x28]
mov dword [esp + 0x30], eax
xor esi, esi
mov dword [eax + 0x2000], esi
mov eax, dword [esp + 0x30]
mov dword [eax + 0x2004], esi
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x8f4]
add esp, 4
mov dword [edx], ecx
push eax
lea ecx, [esp + 0x8d0]
push ecx
call fcn.0043f150
mov dword [esp + 0x18], eax
cmp eax, esi
jne 0x433f94
lea ecx, [esp + 0xac]
call fcn.00405dc0
lea esi, [esp + 0x144]
call fcn.00401eb0
lea ecx, [esp + 0x90]
call fcn.00405dc0
lea edx, [esp + 0x1a4]
push edx
jmp 0x433e5f
mov eax, dword [esp + 0x2fc]
mov ecx, dword [eax]
mov eax, dword [esp + 0x2e4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
lea esp, [esp]
mov esi, dword [esp + 0x2fc]
test eax, eax
je 0x433fc4
cmp eax, dword [esp + 0x2e4]
je 0x433fc9
call fcn.00463181
cmp dword [esp + 0x20], esi
je 0x4341a9
cmp dword [esp + 0x15c], 8
mov eax, dword [esp + 0x148]
jae 0x433feb
lea eax, [esp + 0x148]
push eax
lea esi, [esp + 0x20]
call fcn.004115e0
call fcn.0041ee40
test eax, eax
jne 0x434197
lea ecx, [esp + 0xe4]
push ecx
call fcn.00401000
lea edx, [esp + 0x1a4]
push edx
lea eax, [esp + 0x94]
mov byte [esp + 0x8a4], 0xc
push eax
mov edi, 0x48d9cc
lea esi, [esp + 0x44]
mov dword [esp + 0x1c], 0
lea ebx, [esp + 0x1c]
lea ebp, [esp + 0xec]
call fcn.004234d0
add esp, 4
mov dword [esp + 0x28], eax
lea esi, [esp + 0x20]
mov byte [esp + 0x8a4], 0xd
call fcn.004115e0
mov edx, dword [esp + 0x28]
sub esp, 0x1c
mov edi, eax
mov ecx, esp
mov dword [esp + 0x48], esp
add edi, 0x38
push edx
call fcn.00423450
add esp, 4
mov edx, ebx
mov ecx, ebp
call fcn.00435ae0
lea ecx, [esp + 0x3c]
mov esi, eax
mov byte [esp + 0x8a0], 0xc
call fcn.00405dc0
test esi, esi
jne 0x434183
cmp dword [esp + 0x134], esi
je 0x434183
cmp dword [esp + 0x14], esi
jne 0x4340bf
cmp dword [esp + 0x138], esi
je 0x434183
mov esi, 0x48e374
lea ecx, [esp + 0xac]
call fcn.00421e80
test al, al
je 0x434133
mov esi, 0x486fa8
lea ecx, [esp + 0xac]
call fcn.00421e80
test al, al
je 0x434133
sub esp, 0x1c
lea eax, [esp + 0xc8]
mov esi, esp
mov dword [esp + 0x40], esp
push eax
call fcn.00405d90
lea esi, [esp + 0x38]
mov byte [esp + 0x8bc], 0xe
call fcn.004115e0
sub esp, 0x1c
add eax, 0x38
mov esi, esp
mov dword [esp + 0x60], esp
push eax
call fcn.00405d90
mov byte [esp + 0x8d8], 0xc
call fcn.0043ed80
test al, al
je 0x434183
mov ecx, dword [esp + 0x8f0]
push ecx
lea esi, [esp + 0x20]
call fcn.004115e0
add eax, 0x38
push eax
call fcn.0043f150
mov esi, eax
test esi, esi
je 0x434183
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x18]
push edx
push eax
push 0
push 0
push 0
lea ecx, [esp + 0xf8]
push ecx
push esi
lea edx, [esp + 0x48]
push 1
push edx
call dword [esp + 0x58]
add esp, 0x24
push esi
call fcn.00462d5c
add esp, 4
lea esi, [esp + 0xe4]
mov byte [esp + 0x8a0], 6
call fcn.00401eb0
lea esi, [esp + 0x1c]
call fcn.00421ca0
mov eax, dword [esp + 0x1c]
jmp 0x433fb0
mov eax, dword [esp + 0x33c]
mov esi, dword [eax]
mov ebx, dword [esp + 0x324]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], esi
mov edi, dword [esp + 0x33c]
test ebx, ebx
je 0x4341d5
cmp ebx, dword [esp + 0x324]
je 0x4341da
call fcn.00463181
cmp esi, edi
je 0x4343fa
mov edi, dword [esp + 0x94]
mov ebp, 8
cmp dword [esp + 0xa8], ebp
jae 0x4341fe
lea edi, [esp + 0x94]
test ebx, ebx
jne 0x43421d
call fcn.00463181
xor eax, eax
cmp esi, dword [eax + 0x18]
jne 0x434213
call fcn.00463181
cmp dword [esi + 0x24], ebp
jb 0x434221
mov ecx, dword [esi + 0x10]
jmp 0x434224
mov eax, dword [ebx]
jmp 0x434209
lea ecx, [esi + 0x10]
push edi
call fcn.00422f90
add esp, 4
test eax, eax
jne 0x4343dd
lea ecx, [esp + 0xe4]
push ecx
call fcn.00401000
lea edx, [esp + 0x1a4]
push edx
lea eax, [esp + 0x94]
mov byte [esp + 0x8a4], 0xf
push eax
mov edi, 0x48d9cc
lea esi, [esp + 0x60]
mov dword [esp + 0x1c], 0
lea ebp, [esp + 0x1c]
call fcn.004234d0
add esp, 4
mov esi, eax
mov byte [esp + 0x8a4], 0x10
test ebx, ebx
jne 0x4343f3
call fcn.00463181
mov edi, dword [esp + 0x24]
cmp edi, dword [ebx + 0x18]
jne 0x43429c
call fcn.00463181
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
add edi, 0x28
push esi
call fcn.00423450
add esp, 4
mov edx, ebp
lea ecx, [esp + 0x104]
call fcn.00435ae0
mov byte [esp + 0x8a0], 0xf
cmp dword [esp + 0x70], 8
mov esi, eax
jb 0x4342dd
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.00462b9f
add esp, 4
test esi, esi
jne 0x4343c9
cmp dword [esp + 0x134], esi
je 0x4343c9
cmp dword [esp + 0x14], esi
jne 0x434305
cmp dword [esp + 0x138], esi
je 0x4343c9
mov esi, 0x48e374
lea ecx, [esp + 0xac]
call fcn.00421e80
test al, al
je 0x434379
mov esi, 0x486fa8
lea ecx, [esp + 0xac]
call fcn.00421e80
test al, al
je 0x434379
sub esp, 0x1c
lea edx, [esp + 0xc8]
mov esi, esp
mov dword [esp + 0x40], esp
push edx
call fcn.00405d90
lea esi, [esp + 0x38]
mov byte [esp + 0x8bc], 0x11
call fcn.004115e0
sub esp, 0x1c
add eax, 0x1c
mov esi, esp
mov dword [esp + 0x60], esp
push eax
call fcn.00405d90
mov byte [esp + 0x8d8], 0xf
call fcn.0043ed80
test al, al
je 0x4343c9
mov eax, dword [esp + 0x8f0]
push eax
lea esi, [esp + 0x20]
call fcn.004115e0
add eax, 0x1c
push eax
call fcn.0043f150
mov esi, eax
test esi, esi
je 0x4343c9
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x18]
push ecx
push edx
push 0
push 0
push 0
lea eax, [esp + 0xf8]
push eax
push esi
lea ecx, [esp + 0x48]
push 1
push ecx
call dword [esp + 0x58]
add esp, 0x24
push esi
call fcn.00462d5c
add esp, 4
lea esi, [esp + 0xe4]
mov byte [esp + 0x8a0], 6
call fcn.00401eb0
lea esi, [esp + 0x1c]
call fcn.00421d10
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
jmp 0x4341c1
mov ebx, dword [ebx]
jmp 0x43428e
mov esi, dword [esp + 0x38]
lea edi, [esp + 0x144]
mov eax, esi
call fcn.004031e0
mov eax, dword [esp + 0xc0]
push 0x486fa8
mov edi, 1
lea ecx, [esp + 0xb0]
call fcn.00404a20
test eax, eax
je 0x434460
mov eax, dword [esp + 0xc0]
push 0x48e374
mov edi, 3
lea ecx, [esp + 0xb0]
call fcn.00404a20
test eax, eax
je 0x434460
push 0
lea edx, [esp + 0xb0]
push edx
or eax, 0xffffffff
call fcn.00406c40
lea eax, [esp + 0x144]
push eax
mov edi, 0x486fac
lea esi, [esp + 0x5c]
call fcn.004234d0
add esp, 4
push eax
lea edi, [esp + 0xb0]
lea ecx, [esp + 0x78]
mov byte [esp + 0x8a4], 0x12
call fcn.00423450
mov edi, 8
add esp, 4
cmp dword [eax + 0x18], edi
jb 0x4344a4
mov eax, dword [eax + 4]
jmp 0x4344a7
add eax, 4
lea ecx, [esp + 0x644]
push ecx
push eax
call dword [0x4810e8]
mov esi, eax
mov dword [esp + 0x14], esi
cmp dword [esp + 0x8c], edi
jb 0x4344d2
mov edx, dword [esp + 0x78]
push edx
call fcn.00462b9f
add esp, 4
xor eax, eax
mov ebx, 7
mov byte [esp + 0x8a0], 6
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x88], 0
mov word [esp + 0x78], ax
cmp dword [esp + 0x70], edi
jb 0x43450b
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.00462b9f
add esp, 4
xor edx, edx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], 0
mov word [esp + 0x5c], dx
cmp esi, 0xffffffff
je 0x4347fb
jmp 0x434530
mov ecx, 0x94
lea esi, [esp + 0x644]
lea edi, [esp + 0x344]
lea eax, [esp + 0x644]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x14]
push eax
push esi
call dword [0x4810ec]
test eax, eax
jne 0x43456b
push esi
call dword [0x4810f0]
mov dword [esp + 0x14], 0xffffffff
mov ecx, 0x48a270
lea eax, [esp + 0x370]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43459d
test dx, dx
je 0x434599
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43459d
add eax, 4
add ecx, 4
test dx, dx
jne 0x434577
xor eax, eax
jmp 0x4345a2
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4347f0
mov ecx, 0x48a940
lea eax, [esp + 0x370]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4345dc
test dx, dx
je 0x4345d8
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4345dc
add eax, 4
add ecx, 4
test dx, dx
jne 0x4345b6
xor eax, eax
jmp 0x4345e1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4347f0
lea ecx, [esp + 0x370]
push ecx
lea edx, [esp + 0xcc]
push edx
call fcn.00408390
mov byte [esp + 0x8a0], 0x13
test byte [esp + 0x344], 0x10
je 0x434740
lea eax, [esp + 0xe4]
push eax
call fcn.00401000
lea ecx, [esp + 0x1a4]
push ecx
lea edx, [esp + 0x94]
push edx
mov edi, 0x48d9cc
lea esi, [esp + 0x44]
mov byte [esp + 0x8a8], 0x14
lea ebx, [esp + 0x40]
lea ebp, [esp + 0xec]
call fcn.004234d0
sub esp, 0x18
mov byte [esp + 0x8c0], 0x15
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
lea edi, [esp + 0xec]
call fcn.00423450
add esp, 4
mov edx, ebx
mov ecx, ebp
call fcn.00435ae0
mov byte [esp + 0x8a0], 0x14
cmp dword [esp + 0x54], 8
mov esi, eax
jb 0x43469a
mov eax, dword [esp + 0x40]
push eax
call fcn.00462b9f
add esp, 4
test esi, esi
je 0x4346af
lea esi, [esp + 0xe4]
call fcn.00401eb0
jmp 0x4347ce
cmp dword [esp + 0x134], 0
je 0x43472f
mov edx, dword [esp + 0x8f0]
push edx
lea eax, [esp + 0xcc]
push eax
call fcn.0043f150
mov esi, eax
test esi, esi
jne 0x4346f9
lea esi, [esp + 0xe4]
call fcn.00401eb0
lea ecx, [esp + 0xc8]
mov byte [esp + 0x8a0], 6
call fcn.00405dc0
jmp 0x4347f0
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x18]
push ecx
push edx
lea eax, [esp + 0x360]
push eax
push 0
push 0
lea ecx, [esp + 0xf8]
push ecx
push esi
lea edx, [esp + 0x48]
push 1
push edx
call dword [esp + 0x58]
add esp, 0x24
push esi
call fcn.00462d5c
add esp, 4
lea esi, [esp + 0xe4]
call fcn.00401eb0
jmp 0x4347ce
mov eax, dword [esp + 0x8f0]
push eax
lea ecx, [esp + 0xcc]
push ecx
call fcn.0043f150
mov esi, eax
test esi, esi
jne 0x43477b
mov byte [esp + 0x8a0], 6
cmp dword [esp + 0xe0], 8
jb 0x4347f0
mov edx, dword [esp + 0xcc]
push edx
jmp 0x4347e8
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x364]
push ecx
lea edx, [esp + 0x360]
push edx
push 1
push 0
push 0
push eax
call fcn.00476260
mov ecx, dword [esp + 0x370]
xor edi, edi
add eax, ecx
adc edx, edi
push edx
push eax
lea edx, [esp + 0x158]
push edx
push esi
lea eax, [esp + 0x48]
push edi
push eax
call dword [esp + 0x58]
add esp, 0x24
push esi
call fcn.00462d5c
add esp, 4
mov byte [esp + 0x8a0], 6
cmp dword [esp + 0xe0], 8
jb 0x4347f0
mov ecx, dword [esp + 0xcc]
push ecx
call fcn.00462b9f
add esp, 4
cmp dword [esp + 0x14], 0xffffffff
jne 0x434530
mov edx, dword [esp + 0x18]
push edx
call fcn.00462d5c
mov edi, 8
add esp, 4
cmp dword [esp + 0xc4], edi
jb 0x434826
mov eax, dword [esp + 0xb0]
push eax
call fcn.00462b9f
add esp, 4
xor ecx, ecx
mov ebx, 7
xor ebp, ebp
lea esi, [esp + 0x144]
mov dword [esp + 0xc4], ebx
mov dword [esp + 0xc0], ebp
mov word [esp + 0xb0], cx
call fcn.00401eb0
cmp dword [esp + 0xa8], edi
jb 0x43486a
mov edx, dword [esp + 0x94]
push edx
call fcn.00462b9f
add esp, 4
lea ecx, [esp + 0x1a4]
xor eax, eax
push ecx
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa8], ebp
mov word [esp + 0x98], ax
mov byte [esp + 0x8a4], 1
call fcn.0041bba0
cmp dword [esp + 0x8c8], edi
jb 0x4348b0
mov edx, dword [esp + 0x8b4]
push edx
call fcn.00462b9f
add esp, 4
xor eax, eax
mov dword [esp + 0x8c8], ebx
mov dword [esp + 0x8c4], ebp
mov word [esp + 0x8b4], ax
cmp dword [esp + 0x8e4], edi
jb 0x4348e1
mov ecx, dword [esp + 0x8d0]
push ecx
call fcn.00462b9f
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x898]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x880]
xor ecx, esp
call fcn.00462baa
add esp, 0x890
ret 0x50