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

Disassembly:
push 0xffffffffffffffff
push 0x536eb8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
mov eax, dword [esp + 0x78]
push ebx
push ebp
mov ebx, ecx
push esi
push edi
lea ecx, [esp + 0x50]
mov dword [esp + 0x18], ebx
lea esi, [eax + 0xc]
call fcn.00470b30
mov edi, 0x5478f0
mov dword [esp + 0x50], edi
xor ebp, ebp
lea ecx, [esp + 0x64]
mov dword [esp + 0x80], ebp
call fcn.00470b30
mov dword [esp + 0x64], edi
lea ecx, [esp + 0x3c]
mov byte [esp + 0x80], 1
call fcn.00470b30
mov dword [esp + 0x3c], edi
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x90]
lea eax, [esp + 0x54]
push edx
push eax
push ecx
mov ecx, ebx
mov byte [esp + 0x90], 2
call fcn.0041b600
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x8c], ebp
shr ecx, 2
neg eax
sbb eax, eax
mov dword [esp + 0x10], ebp
and eax, edx
cmp ecx, ebp
mov dword [esp + 0x38], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x1c], ebp
jle 0x42b076
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x58]
mov ebx, dword [ecx + eax*4]
mov edi, dword [edx + eax*4]
push ebx
mov dword [esp + 0x34], ebx
call fcn.004c72a0
mov ecx, dword [esp + 0x1c]
add esp, 4
mov dword [esp + 0x14], eax
push edi
call fcn.0040f960
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x20], ebp
jne 0x42aa09
push edi
call fcn.004dc2d0
add esp, 4
cmp eax, 1
jne 0x42b0d7
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42aa2a
push ebx
call fcn.004c7260
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x42b061
mov ebp, dword [esp + 0x20]
test ebp, ebp
je 0x42aa55
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x18]
push edx
push eax
push edi
call fcn.00429de0
mov ebp, eax
cmp ebp, 0xffffffff
je 0x42b0f9
jmp 0x42aa61
mov ecx, dword [esp + 0x18]
push edi
call fcn.0040e150
mov ebp, eax
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x1c]
mov eax, 1
mov ebx, dword [ecx + edx*4]
shr ebx, 1
and ebx, eax
cmp ebx, eax
jne 0x42ab58
mov ecx, dword [esp + 0x20]
test ecx, ecx
jne 0x42aaf9
cmp edi, 0x80000004
jne 0x42aa97
cmp dword [esp + 0x14], eax
jne 0x42ab84
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42aadc
cmp edi, 0x80000401
je 0x42aabf
cmp edi, 0x80000601
je 0x42aabf
cmp edi, 0x80000003
je 0x42aabf
cmp edi, 0x80000008
jne 0x42aadc
mov eax, dword [esp + 0x8c]
add eax, 8
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x10]
add eax, 4
jmp 0x42b05d
mov eax, dword [esp + 0x8c]
add eax, 4
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x10]
add eax, 4
jmp 0x42b05d
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42ab30
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x90]
lea eax, [esp + 0x2c]
push eax
push ecx
mov ecx, dword [esp + 0x20]
push edx
push edi
call fcn.00429fe0
test eax, eax
je 0x42b0f9
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x42ab34
test ebp, ebp
jne 0x42ab84
mov edx, dword [esp + 0x8c]
mov ecx, dword [esp + 0x10]
mov eax, 4
add edx, eax
add ecx, eax
mov dword [esp + 0x8c], edx
mov dword [esp + 0x10], ecx
jmp 0x42b061
cmp edi, 0x80000004
jne 0x42ab6c
cmp dword [esp + 0x14], eax
je 0x42b02f
jmp 0x42ab84
cmp edi, 0x80000005
je 0x42b02f
cmp edi, 0x80000006
je 0x42b02f
mov eax, dword [esp + 0x8c]
test eax, eax
jle 0x42abdc
cmp eax, 0xffffff80
jl 0x42abb6
cmp eax, 0x7f
jg 0x42abb6
push 0xc783
mov ecx, esi
call fcn.00470e30
mov eax, dword [esp + 0x8c]
mov ecx, esi
push eax
call fcn.00470e70
jmp 0x42abd1
push 0xc781
mov ecx, esi
call fcn.00470e30
mov ecx, dword [esp + 0x8c]
push ecx
mov ecx, esi
call fcn.00470df0
mov dword [esp + 0x8c], 0
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x42ac28
cmp eax, 0xffffff80
jl 0x42ac08
cmp eax, 0x7f
jg 0x42ac08
push 0xc383
mov ecx, esi
call fcn.00470e30
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
call fcn.00470e70
jmp 0x42ac20
push 0xc381
mov ecx, esi
call fcn.00470e30
mov eax, dword [esp + 0x10]
mov ecx, esi
push eax
call fcn.00470df0
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x42adc9
push 0x57
mov ecx, esi
call fcn.00470e70
push 0x3f8b
mov ecx, esi
call fcn.00470e30
test ebx, ebx
je 0x42ac62
push 0x53
mov ecx, esi
call fcn.00470e70
push 0x1b8b
mov ecx, esi
call fcn.00470e30
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42acbc
push 0xb9
mov ecx, esi
call fcn.00470e70
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, esi
call fcn.00470df0
push 0xc781
mov ecx, esi
call fcn.00470e30
mov eax, dword [esp + 0x30]
xor edx, edx
mov dl, byte [eax]
lea ecx, [edx*4 + 4]
push ecx
mov ecx, esi
call fcn.00470df0
mov edx, dword [esi + 0x10]
push 0x8b515753
mov ecx, esi
mov dword [esp + 0x38], edx
call fcn.00470df0
push 0x3f
jmp 0x42acc2
test ebx, ebx
jne 0x42acc9
push 0x53
mov ecx, esi
call fcn.00470e70
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x88]
push eax
push ecx
mov ecx, dword [esp + 0x20]
push edi
push edx
call fcn.0042a900
test eax, eax
je 0x42b0f9
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42ad97
push 0x835b5f59
mov ecx, esi
call fcn.00470df0
push 0xc38104c7
mov ecx, esi
call fcn.00470df0
push ebp
mov ecx, esi
call fcn.00470df0
push 0x49
mov ecx, esi
call fcn.00470e70
push 0x850f
mov ecx, esi
call fcn.00470e30
mov eax, dword [esi + 0x10]
mov ecx, dword [esp + 0x34]
sub ecx, eax
sub ecx, 4
push ecx
mov ecx, esi
call fcn.00470df0
test ebx, ebx
je 0x42ad86
push 0x5b
mov ecx, esi
call fcn.00470e70
push 0x33ff
mov ecx, esi
call fcn.00470e30
mov ecx, dword [esp + 0x88]
push 1
push 0x20
call fcn.0040e920
push 0xc383
mov ecx, esi
call fcn.00470e30
push 4
mov ecx, esi
call fcn.00470e70
push 0x4c7835f
mov ecx, esi
call fcn.00470df0
jmp 0x42b061
test ebx, ebx
jne 0x42ad4c
push 0x5b
mov ecx, esi
call fcn.00470e70
push 0xc381
mov ecx, esi
call fcn.00470e30
push ebp
mov ecx, esi
call fcn.00470df0
push 0x4c7835f
mov ecx, esi
call fcn.00470df0
jmp 0x42b061
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42aef3
cmp edi, 0x80000004
jne 0x42adfa
mov edi, dword [esp + 0x88]
mov ecx, dword [edi + 8]
call fcn.0042a820
push 0xf
mov ecx, edi
call fcn.0040eb10
jmp 0x42b061
cmp edi, 0x80000301
ja 0x42ae68
je 0x42ae80
cmp edi, 0x80000101
ja 0x42ae49
je 0x42ae2f
cmp edi, 0x80000002
jb 0x42aed9
cmp edi, 0x80000003
jbe 0x42ae80
cmp edi, 0x80000008
je 0x42ae80
jmp 0x42aed9
push 0x38a
mov ecx, esi
call fcn.00470e30
push 0x43
mov ecx, esi
call fcn.00470e70
jmp 0x42aed9
cmp edi, 0x80000201
jne 0x42aed9
push 0x83038b66
mov ecx, esi
call fcn.00470df0
push 0x2c3
jmp 0x42aed2
cmp edi, 0x80000401
je 0x42ae80
cmp edi, 0x80000501
je 0x42ae80
cmp edi, 0x80000601
jne 0x42aed9
push 0xc383038b
mov ecx, esi
call fcn.00470df0
push 4
mov ecx, esi
call fcn.00470e70
cmp edi, 0x80000401
je 0x42aeb5
cmp edi, 0x80000601
je 0x42aeb5
cmp edi, 0x80000003
je 0x42aeb5
cmp edi, 0x80000008
jne 0x42aed9
push 0xc7830789
mov ecx, esi
call fcn.00470df0
push 0x83038b04
mov ecx, esi
call fcn.00470df0
push 0x4c3
mov ecx, esi
call fcn.00470e30
push 0xc7830789
mov ecx, esi
call fcn.00470df0
push 4
mov ecx, esi
call fcn.00470e70
jmp 0x42b061
push 0x5753
mov ecx, esi
call fcn.00470e30
mov edi, dword [esp + 0x88]
push 6
push ebp
mov ecx, edi
call fcn.00413be0
push 0xb8
mov ecx, esi
call fcn.00470e70
push 2
mov ecx, esi
call fcn.00470df0
push 1
push 0x30
mov ecx, edi
call fcn.0040e920
push 0x5b5f
mov ecx, esi
call fcn.00470e30
push 0x1c
push 0x57ff40
mov ecx, esi
call fcn.004713f0
mov edi, dword [esp + 0x24]
cmp edi, 0xffffff80
jl 0x42af6e
cmp edi, 0x7f
jg 0x42af6e
push 0xf983
mov ecx, esi
call fcn.00470e30
push edi
mov ecx, esi
call fcn.00470e70
jmp 0x42af82
push 0xf981
mov ecx, esi
call fcn.00470e30
push edi
mov ecx, esi
call fcn.00470df0
push 0x57e
mov ecx, esi
call fcn.00470e30
push 0xb9
mov ecx, esi
call fcn.00470e70
push edi
mov ecx, esi
call fcn.00470df0
push 0xf38b
mov ecx, esi
call fcn.00470e30
cmp ebp, 2
je 0x42afb8
cmp ebp, 8
jne 0x42afc4
push 0xe1d1
mov ecx, esi
call fcn.00470e30
cmp ebp, 4
je 0x42afd5
cmp ebp, 8
je 0x42afd5
push 0xa4f3
jmp 0x42afda
push 0xa5f3
mov ecx, esi
call fcn.00470e30
push 0xc7835b5f
mov ecx, esi
call fcn.00470df0
push 4
mov ecx, esi
call fcn.00470e70
imul ebp, edi
cmp ebp, 0xffffff80
jl 0x42b019
cmp ebp, 0x7f
jg 0x42b019
push 0xc383
mov ecx, esi
call fcn.00470e30
push ebp
mov ecx, esi
call fcn.00470e70
jmp 0x42b061
push 0xc381
mov ecx, esi
call fcn.00470e30
push ebp
mov ecx, esi
call fcn.00470df0
jmp 0x42b061
mov edx, dword [esp + 0x8c]
mov ecx, dword [esp + 0x14]
mov eax, 4
add edx, eax
test ecx, ecx
mov dword [esp + 0x8c], edx
jne 0x42b052
add dword [esp + 0x10], eax
jmp 0x42b061
imul ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
add eax, ebp
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
inc eax
cmp eax, ecx
mov dword [esp + 0x1c], eax
jl 0x42a9c0
mov esi, 0x5477b0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x80], 1
mov dword [esp + 0x3c], esi
call fcn.00470d30
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0
mov dword [esp + 0x64], esi
call fcn.00470d30
lea ecx, [esp + 0x50]
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x50], esi
call fcn.00470d30
mov eax, 1
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x74
ret 0x10
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x90]
push edx
push eax
push 0x2745
push 0x5928f8
call fcn.004687a0
add esp, 0x10
mov esi, 0x5477b0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x80], 1
mov dword [esp + 0x3c], esi
call fcn.00470d30
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0
mov dword [esp + 0x64], esi
call fcn.00470d30
lea ecx, [esp + 0x50]
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x50], esi
call fcn.00470d30
xor eax, eax
jmp 0x42b0c2