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

Disassembly:
push 0xffffffffffffffff
push 0x53c718
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.00473490
mov edi, 0x54d910
mov dword [esp + 0x50], edi
xor ebp, ebp
lea ecx, [esp + 0x64]
mov dword [esp + 0x80], ebp
call fcn.00473490
mov dword [esp + 0x64], edi
lea ecx, [esp + 0x3c]
mov byte [esp + 0x80], 1
call fcn.00473490
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.0041dd50
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 0x42d3b6
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.004c9bc0
mov ecx, dword [esp + 0x1c]
add esp, 4
mov dword [esp + 0x14], eax
push edi
call fcn.00411fc0
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x20], ebp
jne 0x42cd49
push edi
call fcn.004dec70
add esp, 4
cmp eax, 1
jne 0x42d417
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42cd6a
push ebx
call fcn.004c9b80
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x42d3a1
mov ebp, dword [esp + 0x20]
test ebp, ebp
je 0x42cd95
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x18]
push edx
push eax
push edi
call fcn.0042c120
mov ebp, eax
cmp ebp, 0xffffffff
je 0x42d439
jmp 0x42cda1
mov ecx, dword [esp + 0x18]
push edi
call fcn.004107b0
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 0x42ce98
mov ecx, dword [esp + 0x20]
test ecx, ecx
jne 0x42ce39
cmp edi, 0x80000004
jne 0x42cdd7
cmp dword [esp + 0x14], eax
jne 0x42cec4
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42ce1c
cmp edi, 0x80000401
je 0x42cdff
cmp edi, 0x80000601
je 0x42cdff
cmp edi, 0x80000003
je 0x42cdff
cmp edi, 0x80000008
jne 0x42ce1c
mov eax, dword [esp + 0x8c]
add eax, 8
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x10]
add eax, 4
jmp 0x42d39d
mov eax, dword [esp + 0x8c]
add eax, 4
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x10]
add eax, 4
jmp 0x42d39d
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42ce70
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.0042c320
test eax, eax
je 0x42d439
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x42ce74
test ebp, ebp
jne 0x42cec4
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 0x42d3a1
cmp edi, 0x80000004
jne 0x42ceac
cmp dword [esp + 0x14], eax
je 0x42d36f
jmp 0x42cec4
cmp edi, 0x80000005
je 0x42d36f
cmp edi, 0x80000006
je 0x42d36f
mov eax, dword [esp + 0x8c]
test eax, eax
jle 0x42cf1c
cmp eax, 0xffffff80
jl 0x42cef6
cmp eax, 0x7f
jg 0x42cef6
push 0xc783
mov ecx, esi
call fcn.00473790
mov eax, dword [esp + 0x8c]
mov ecx, esi
push eax
call fcn.004737d0
jmp 0x42cf11
push 0xc781
mov ecx, esi
call fcn.00473790
mov ecx, dword [esp + 0x8c]
push ecx
mov ecx, esi
call fcn.00473750
mov dword [esp + 0x8c], 0
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x42cf68
cmp eax, 0xffffff80
jl 0x42cf48
cmp eax, 0x7f
jg 0x42cf48
push 0xc383
mov ecx, esi
call fcn.00473790
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
call fcn.004737d0
jmp 0x42cf60
push 0xc381
mov ecx, esi
call fcn.00473790
mov eax, dword [esp + 0x10]
mov ecx, esi
push eax
call fcn.00473750
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x42d109
push 0x57
mov ecx, esi
call fcn.004737d0
push 0x3f8b
mov ecx, esi
call fcn.00473790
test ebx, ebx
je 0x42cfa2
push 0x53
mov ecx, esi
call fcn.004737d0
push 0x1b8b
mov ecx, esi
call fcn.00473790
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42cffc
push 0xb9
mov ecx, esi
call fcn.004737d0
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, esi
call fcn.00473750
push 0xc781
mov ecx, esi
call fcn.00473790
mov eax, dword [esp + 0x30]
xor edx, edx
mov dl, byte [eax]
lea ecx, [edx*4 + 4]
push ecx
mov ecx, esi
call fcn.00473750
mov edx, dword [esi + 0x10]
push 0x8b515753
mov ecx, esi
mov dword [esp + 0x38], edx
call fcn.00473750
push 0x3f
jmp 0x42d002
test ebx, ebx
jne 0x42d009
push 0x53
mov ecx, esi
call fcn.004737d0
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.0042cc40
test eax, eax
je 0x42d439
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42d0d7
push 0x835b5f59
mov ecx, esi
call fcn.00473750
push 0xc38104c7
mov ecx, esi
call fcn.00473750
push ebp
mov ecx, esi
call fcn.00473750
push 0x49
mov ecx, esi
call fcn.004737d0
push 0x850f
mov ecx, esi
call fcn.00473790
mov eax, dword [esi + 0x10]
mov ecx, dword [esp + 0x34]
sub ecx, eax
sub ecx, 4
push ecx
mov ecx, esi
call fcn.00473750
test ebx, ebx
je 0x42d0c6
push 0x5b
mov ecx, esi
call fcn.004737d0
push 0x33ff
mov ecx, esi
call fcn.00473790
mov ecx, dword [esp + 0x88]
push 1
push 0x20
call fcn.00410f80
push 0xc383
mov ecx, esi
call fcn.00473790
push 4
mov ecx, esi
call fcn.004737d0
push 0x4c7835f
mov ecx, esi
call fcn.00473750
jmp 0x42d3a1
test ebx, ebx
jne 0x42d08c
push 0x5b
mov ecx, esi
call fcn.004737d0
push 0xc381
mov ecx, esi
call fcn.00473790
push ebp
mov ecx, esi
call fcn.00473750
push 0x4c7835f
mov ecx, esi
call fcn.00473750
jmp 0x42d3a1
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42d233
cmp edi, 0x80000004
jne 0x42d13a
mov edi, dword [esp + 0x88]
mov ecx, dword [edi + 8]
call fcn.0042cb60
push 0xf
mov ecx, edi
call fcn.00411170
jmp 0x42d3a1
cmp edi, 0x80000301
ja 0x42d1a8
je 0x42d1c0
cmp edi, 0x80000101
ja 0x42d189
je 0x42d16f
cmp edi, 0x80000002
jb 0x42d219
cmp edi, 0x80000003
jbe 0x42d1c0
cmp edi, 0x80000008
je 0x42d1c0
jmp 0x42d219
push 0x38a
mov ecx, esi
call fcn.00473790
push 0x43
mov ecx, esi
call fcn.004737d0
jmp 0x42d219
cmp edi, 0x80000201
jne 0x42d219
push 0x83038b66
mov ecx, esi
call fcn.00473750
push 0x2c3
jmp 0x42d212
cmp edi, 0x80000401
je 0x42d1c0
cmp edi, 0x80000501
je 0x42d1c0
cmp edi, 0x80000601
jne 0x42d219
push 0xc383038b
mov ecx, esi
call fcn.00473750
push 4
mov ecx, esi
call fcn.004737d0
cmp edi, 0x80000401
je 0x42d1f5
cmp edi, 0x80000601
je 0x42d1f5
cmp edi, 0x80000003
je 0x42d1f5
cmp edi, 0x80000008
jne 0x42d219
push 0xc7830789
mov ecx, esi
call fcn.00473750
push 0x83038b04
mov ecx, esi
call fcn.00473750
push 0x4c3
mov ecx, esi
call fcn.00473790
push 0xc7830789
mov ecx, esi
call fcn.00473750
push 4
mov ecx, esi
call fcn.004737d0
jmp 0x42d3a1
push 0x5753
mov ecx, esi
call fcn.00473790
mov edi, dword [esp + 0x88]
push 6
push ebp
mov ecx, edi
call fcn.004162c0
push 0xb8
mov ecx, esi
call fcn.004737d0
push 2
mov ecx, esi
call fcn.00473750
push 1
push 0x30
mov ecx, edi
call fcn.00410f80
push 0x5b5f
mov ecx, esi
call fcn.00473790
push 0x1c
push 0x587340
mov ecx, esi
call fcn.00473d50
mov edi, dword [esp + 0x24]
cmp edi, 0xffffff80
jl 0x42d2ae
cmp edi, 0x7f
jg 0x42d2ae
push 0xf983
mov ecx, esi
call fcn.00473790
push edi
mov ecx, esi
call fcn.004737d0
jmp 0x42d2c2
push 0xf981
mov ecx, esi
call fcn.00473790
push edi
mov ecx, esi
call fcn.00473750
push 0x57e
mov ecx, esi
call fcn.00473790
push 0xb9
mov ecx, esi
call fcn.004737d0
push edi
mov ecx, esi
call fcn.00473750
push 0xf38b
mov ecx, esi
call fcn.00473790
cmp ebp, 2
je 0x42d2f8
cmp ebp, 8
jne 0x42d304
push 0xe1d1
mov ecx, esi
call fcn.00473790
cmp ebp, 4
je 0x42d315
cmp ebp, 8
je 0x42d315
push 0xa4f3
jmp 0x42d31a
push 0xa5f3
mov ecx, esi
call fcn.00473790
push 0xc7835b5f
mov ecx, esi
call fcn.00473750
push 4
mov ecx, esi
call fcn.004737d0
imul ebp, edi
cmp ebp, 0xffffff80
jl 0x42d359
cmp ebp, 0x7f
jg 0x42d359
push 0xc383
mov ecx, esi
call fcn.00473790
push ebp
mov ecx, esi
call fcn.004737d0
jmp 0x42d3a1
push 0xc381
mov ecx, esi
call fcn.00473790
push ebp
mov ecx, esi
call fcn.00473750
jmp 0x42d3a1
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 0x42d392
add dword [esp + 0x10], eax
jmp 0x42d3a1
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 0x42cd00
mov esi, 0x54d7d0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x80], 1
mov dword [esp + 0x3c], esi
call fcn.00473690
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0
mov dword [esp + 0x64], esi
call fcn.00473690
lea ecx, [esp + 0x50]
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x50], esi
call fcn.00473690
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 0x59a4d0
call fcn.0046b110
add esp, 0x10
mov esi, 0x54d7d0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x80], 1
mov dword [esp + 0x3c], esi
call fcn.00473690
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0
mov dword [esp + 0x64], esi
call fcn.00473690
lea ecx, [esp + 0x50]
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x50], esi
call fcn.00473690
xor eax, eax
jmp 0x42d402