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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x14]
cmp eax, dword [ecx + 8]
jbe 0x43f249
sub esp, 0x94
mov eax, dword fs:[0x14]
mov eax, dword [eax]
mov dword [esp + 0x8c], eax
jmp 0x43e5f2
call fcn.0043da70
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x18]
mov ecx, dword [ecx + 0x54]
mov dword [esp], ecx
call fcn.00447f50
mov eax, dword [esp + 4]
mov ecx, dword [0x6f23b0]
test ecx, ecx
je 0x43e61c
call fcn.0043e370
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
mov dword [esp + 0x88], eax
test byte [eax], al
mov ecx, dword [eax + 0x1178]
test ecx, ecx
je 0x43e63b
call fcn.0043cdc0
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.00440440
movzx eax, byte [0x7178d0]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x34], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x40], ebx
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x44], ebp
mov esi, dword [esp + 0x18]
mov dword [esp + 0x3c], esi
test al, al
je 0x43e6c3
movzx eax, byte [0x7178d1]
test al, al
je 0x43e6c3
call fcn.004174d0
mov eax, dword [esp]
test eax, eax
je 0x43e6af
mov dword [esp + 4], 0
mov byte [esp + 8], 1
call fcn.0043b600
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x3c]
mov eax, dword [0x6e96dc]
mov eax, dword [eax]
test eax, eax
je 0x43e6df
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00463f00
mov eax, dword [esp + 0x88]
mov dword [esp], eax
call fcn.00446150
mov eax, dword [esp + 4]
movzx ecx, byte [esp + 8]
test eax, eax
jne 0x43f1db
mov eax, dword [0x6f2378]
test eax, eax
je 0x43e756
lea eax, [0x6f2338]
mov dword [esp], eax
call fcn.0040a480
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00445820
mov eax, dword [esp + 8]
mov dword [esp + 0x80], eax
lea ecx, [0x6f2338]
mov dword [esp], ecx
call fcn.0040a680
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x43f1c5
call fcn.00431b70
movzx eax, byte [esp]
test al, al
jne 0x43e767
xor ecx, ecx
jmp 0x43e7a3
lea eax, [0x7179d0]
mov dword [esp], eax
call fcn.00402190
mov eax, dword [esp + 4]
test eax, eax
ja 0x43e781
xor ecx, ecx
jmp 0x43e7a3
lea eax, [0x6f2328]
mov dword [esp], eax
call fcn.004023d0
mov eax, dword [esp + 4]
test eax, eax
setne al
mov ecx, dword [esp + 8]
test ecx, ecx
setne cl
or ecx, eax
test cl, cl
je 0x43e7dc
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.00432770
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x4c]
mov dword [esp], eax
call fcn.00446860
movzx eax, byte [esp + 4]
test al, al
je 0x43f150
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x18]
mov edx, dword [0x7179a8]
movzx ecx, byte [ecx + 0x84]
test cl, cl
je 0x43e7fe
mov ecx, 1
jmp 0x43e842
mov dword [esp + 0x64], edx
lea eax, [0x6f236c]
mov dword [esp], eax
call fcn.00402190
mov eax, dword [esp + 4]
mov dword [esp + 0x60], eax
lea ecx, [0x6f2368]
mov dword [esp], ecx
call fcn.00402190
mov eax, dword [esp + 0x60]
shl eax, 1
mov ecx, dword [esp + 0x64]
sub ecx, dword [esp + 4]
cmp ecx, eax
seta al
mov ecx, eax
mov eax, dword [esp + 0x8c]
test cl, cl
je 0x43e92a
mov ecx, dword [eax + 0x18]
movzx edx, byte [ecx + 0x84]
test dl, dl
jne 0x43e875
mov byte [ecx + 0x84], 1
lea eax, [0x6f236c]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004022e0
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.0043f370
mov eax, dword [esp + 8]
movzx ecx, byte [esp + 0x20]
movzx edx, byte [esp + 0xc]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov dword [esp + 0x40], esi
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
test eax, eax
jne 0x43ef0a
test cl, cl
je 0x43e8c7
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
mov dword [esp + 0x44], edi
test ebp, ebp
setne al
test ebx, ebx
setne cl
or ecx, eax
test cl, cl
je 0x43e916
mov eax, dword [esp + 0x38]
test eax, eax
sete cl
mov edx, dword [esp + 0x34]
test edx, edx
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ecx
xchg edi, eax
test al, al
xchg edi, eax
jne 0x43e920
cmp ebx, eax
setl cl
cmp ebp, edx
xchg edi, ebx
setb bl
xchg edi, ebx
cmp ebx, eax
sete al
and eax, edi
or eax, ecx
test al, al
jne 0x43e920
jmp 0x43e91a
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov ebp, edx
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
jmp 0x43e93a
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x34], ebp
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], ecx
mov edx, dword [0x71799c]
test edx, edx
jne 0x43e958
xor edx, edx
jmp 0x43e97e
mov eax, dword [esp + 0x88]
mov dword [esp], eax
call fcn.0041aa30
movzx eax, byte [esp + 4]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov edx, eax
mov eax, dword [esp + 0x44]
test dl, dl
je 0x43e9ac
lea eax, [0x717a60]
mov dword [esp], eax
call fcn.0040a250
mov eax, dword [esp + 4]
test eax, eax
jne 0x43f0db
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 8], ebp
call fcn.0040ada0
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x14]
test eax, eax
jne 0x43f07d
test cl, cl
je 0x43e9e1
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
mov eax, dword [0x6efbf8]
mov dword [esp + 0x84], eax
mov ecx, dword [0x6efbfc]
mov dword [esp + 0x58], ecx
mov edx, dword [0x6efc00]
mov dword [esp + 0x5c], edx
mov ebx, dword [0x6efc28]
mov dword [esp + 0x6c], ebx
mov ebp, dword [0x6efc2c]
mov dword [esp + 0x50], ebp
mov esi, dword [0x6efc30]
mov dword [esp + 0x54], esi
mov edi, dword [0x6efc48]
mov dword [esp + 0x68], edi
mov edi, dword [0x6efc4c]
mov dword [esp + 0x2c], edi
mov edi, dword [0x6efc50]
mov dword [esp + 0x30], edi
lea edi, [0x6f2338]
mov dword [esp], edi
call fcn.0040a480
mov eax, dword [0x6f23b0]
test eax, eax
jne 0x43ea67
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 0x1178]
test ecx, ecx
je 0x43ea81
lea eax, [0x6f2338]
mov dword [esp], eax
call fcn.0040a680
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
mov ecx, dword [0x6f2378]
test ecx, ecx
jne 0x43f03d
call fcn.00443a00
mov eax, dword [esp + 0x88]
cmp dword [esp], eax
jne 0x43f232
mov dword [esp], eax
call fcn.00445b00
lea eax, [0x6f2338]
mov dword [esp], eax
call fcn.0040a680
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x18]
movzx edx, byte [ecx + 0x84]
mov byte [esp + 0x2b], dl
test dl, dl
jne 0x43eae0
mov esi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
jmp 0x43ebe6
mov byte [ecx + 0x84], 0
lea eax, [0x6f236c]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call fcn.004022e0
mov eax, dword [esp + 8]
test eax, eax
jl 0x43f21c
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x14], ebx
call fcn.0043f800
mov eax, dword [esp + 0x18]
test eax, eax
je 0x43eb83
mov dword [esp], eax
call fcn.00443840
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x84], 1
lea ecx, [0x6f236c]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004022e0
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
call fcn.0043fa00
mov eax, dword [esp]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x43ef94
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
call fcn.0043f8e0
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x3c], esi
call fcn.00431b70
movzx eax, byte [esp]
test al, al
jne 0x43ec07
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
xor ecx, ecx
jmp 0x43ec73
lea eax, [0x7179d0]
mov dword [esp], eax
call fcn.00402190
mov eax, dword [esp + 4]
test eax, eax
ja 0x43ec35
mov eax, dword [esp + 0x34]
test eax, eax
setne cl
mov edx, dword [esp + 0x3c]
test edx, edx
setne bl
or ebx, ecx
test bl, bl
je 0x43ec71
lea eax, [0x6f2328]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.00402360
mov eax, dword [esp + 0xc]
test eax, eax
setne al
mov ecx, dword [esp + 0x10]
test ecx, ecx
setne cl
or ecx, eax
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
jmp 0x43ec73
xor ecx, ecx
test cl, cl
jne 0x43ecfb
test eax, eax
setne cl
test edx, edx
setne bl
or ebx, ecx
test bl, bl
jne 0x43ec8f
xor ecx, ecx
jmp 0x43eca2
call fcn.00431b70
movzx eax, byte [esp]
mov edx, dword [esp + 0x3c]
mov ecx, eax
mov eax, dword [esp + 0x34]
test cl, cl
je 0x43e5e6
lea eax, [0x6f2330]
mov dword [esp], eax
call fcn.004023d0
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
jne 0x43ecf1
mov ecx, dword [esp + 0x34]
cmp ecx, eax
setb al
mov ecx, dword [esp + 0x3c]
cmp ecx, edx
sete cl
setl dl
and ecx, eax
or edx, ecx
test dl, dl
je 0x43e5e6
call fcn.00432670
jmp 0x43e5e6
lea ecx, [0x6f2330]
mov dword [esp], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.004023f0
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x18]
mov edx, dword [ecx + 0x54]
test edx, edx
jne 0x43f206
movzx ecx, byte [ecx + 0x84]
test cl, cl
jne 0x43f1f0
mov ecx, dword [esp + 0x3c]
test ecx, ecx
setne dl
mov ebx, dword [esp + 0x34]
test ebx, ebx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or edx, ebp
test dl, dl
je 0x43eda0
mov edx, dword [esp + 0x40]
test edx, edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x44]
test esi, esi
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
je 0x43ed92
call fcn.00457100
mov ecx, dword [esp]
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x34]
mov esi, eax
mov edx, ecx
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x3c]
sub ebx, edx
sbb ecx, esi
test ecx, ecx
jge 0x43edaa
xor ecx, ecx
xor ebx, ebx
jmp 0x43edaa
mov ecx, 0xffffffff
mov ebx, 0xffffffff
mov edx, dword [0x717a5c]
test edx, edx
setne dl
mov ebp, dword [0x717a58]
test ebp, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x43edd0
xor ecx, ecx
xor ebx, ebx
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.00432770
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
lea eax, [0x6f2330]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.004023f0
call fcn.00457100
mov eax, dword [esp + 4]
mov ecx, dword [esp]
lea edx, [0x6f2328]
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
call fcn.004023f0
mov eax, dword [0x717a58]
test eax, eax
setne al
mov ecx, dword [0x717a5c]
test ecx, ecx
setne cl
or ecx, eax
test cl, cl
jne 0x43ee44
xor eax, eax
jmp 0x43ee55
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.00446860
movzx eax, byte [esp + 4]
test al, al
je 0x43ee6a
call fcn.0043da70
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
lea eax, [0x6f2338]
mov dword [esp], eax
call fcn.0040a480
call fcn.00445bd0
mov eax, dword [esp]
mov dword [esp + 0x88], eax
lea ecx, [0x6f2338]
mov dword [esp], ecx
call fcn.0040a680
mov eax, dword [esp + 0x88]
test eax, eax
je 0x43eef9
mov dword [esp], eax
call fcn.00443840
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.00446860
movzx eax, byte [esp + 4]
test al, al
je 0x43ef1f
movzx eax, byte [esp + 0x2b]
test al, al
je 0x43eeed
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x84], 1
lea ecx, [0x6f236c]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004022e0
mov eax, dword [esp + 0x8c]
jmp 0x43e5f2
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.0043fd00
jmp 0x43e5e6
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], dl
add esp, 0x94
ret
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.00446930
mov eax, dword [esp + 4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x48]
mov dword [esp], ecx
call fcn.0043fd00
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0043bab0
movzx eax, byte [0x6fbf88]
test al, al
je 0x43ef7a
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00458af0
mov eax, dword [esp + 0x70]
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
mov dword [esp + 0x88], eax
mov dword [esp + 0x90], ecx
call fcn.00443840
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + 0x18]
mov byte [eax + 0x84], 1
lea eax, [0x6f236c]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004022e0
mov eax, dword [esp + 0x88]
mov dword [eax + 0x948], 3
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0043bab0
movzx eax, byte [0x6fbf88]
test al, al
je 0x43f020
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00458af0
mov eax, dword [esp + 0x90]
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00445820
mov eax, dword [esp + 8]
mov dword [esp + 0x74], eax
lea ecx, [0x6f2338]
mov dword [esp], ecx
call fcn.0040a680
mov eax, dword [esp + 0x74]
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
mov dword [esp + 0x90], eax
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0043bab0
movzx eax, byte [0x6fbf88]
test al, al
je 0x43f0be
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00458af0
mov eax, dword [esp + 0x90]
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
mov ecx, dword [esp + 0x88]
mov dword [ecx + 0x948], 3
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call fcn.00447ee0
mov eax, dword [esp + 4]
mov dword [esp + 0x78], eax
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0043bab0
movzx eax, byte [0x6fbf88]
test al, al
je 0x43f136
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00458af0
mov eax, dword [esp + 0x78]
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
lea eax, [esp + 0x4c]
mov dword [esp], eax
call fcn.00446930
mov eax, dword [esp + 4]
mov dword [esp + 0x7c], eax
lea ecx, [esp + 0x4c]
mov dword [esp], ecx
call fcn.0043fd00
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0043bab0
movzx eax, byte [0x6fbf88]
test al, al
je 0x43f1ab
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00458af0
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], 0
add esp, 0x94
ret
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], cl
add esp, 0x94
ret
lea eax, [0x5dc06e]
mov dword [esp], eax
mov dword [esp + 4], 0x23
call fcn.004376f0
lea eax, [0x5d94b2]
mov dword [esp], eax
mov dword [esp + 4], 0x1c
call fcn.004376f0
lea eax, [0x5db64c]
mov dword [esp], eax
mov dword [esp + 4], 0x21
call fcn.004376f0
lea eax, [0x5d5dbf]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.004376f0
nop
call fcn.00462e70
jmp fcn.0043e5b0