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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xd4
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x4c], 0
mov word [esp + 0x5a], 0
mov word [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x74], 0x18
cmp dword [esp + 0xe8], 0
jne 0x42c8c3
jmp 0x42c8b6
mov dword [esp + 0x54], 0xffffffff
jmp 0x42ce42
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
cmp dword [eax + 0x14], 1
jne 0x42c8dd
jmp 0x42ce42
jmp 0x42c8df
mov eax, dword [esp + 0xe8]
mov eax, dword [eax + 0x50]
and eax, 0xf
mov dword [esp + 0xb4], eax
cmp dword [esp + 0xb4], 0
setne al
test al, 1
jne 0x42c907
jmp 0x42c9ba
jmp 0x42c909
mov eax, dword [esp + 0xe8]
add eax, 0x58
add eax, 0x70
lea ecx, [0x46684c]
xor edx, edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 4
call fcn.00427630
mov dword [esp + 0x84], eax
cmp dword [esp + 0x84], 1
setne al
test al, 1
jne 0x42c952
jmp 0x42c974
jmp 0x42c954
cmp dword [esp + 0x84], 0
setne al
test al, 1
jne 0x42c965
jmp 0x42c974
jmp 0x42c967
mov dword [esp + 0x54], 0xfffffff4
jmp 0x42ce42
jmp 0x42c976
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 0xc0]
mov edx, dword [eax + 0xc4]
mov dword [eax + 0x6c], edx
mov dword [eax + 0x68], ecx
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 0xb8]
mov edx, dword [eax + 0xbc]
mov dword [eax + 0x7c], edx
mov dword [eax + 0x78], ecx
mov eax, dword [esp + 0xe8]
mov word [eax + 0xa8], 8
jmp 0x42c9ba
jmp 0x42c9bc
mov eax, dword [esp + 0xe8]
mov eax, dword [eax + 0x5c]
mov dword [esp], eax
call fcn.00454880
mov word [esp + 0x52], ax
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 0x4e010]
mov edx, dword [eax + 0x4e014]
lea eax, [esp + 0x58]
mov dword [esp + 4], eax
lea eax, [esp + 0x5a]
mov dword [esp], eax
call fcn.0042a920
mov byte [esp + 0x5c], 0x50
mov byte [esp + 0x5d], 0x4b
mov byte [esp + 0x5e], 7
mov byte [esp + 0x5f], 8
mov eax, dword [esp + 0xe8]
mov eax, dword [eax + 0x70]
mov byte [esp + 0x60], al
mov byte [esp + 0x61], ah
mov ecx, eax
shr ecx, 0x10
mov byte [esp + 0x62], cl
shr eax, 0x18
mov byte [esp + 0x63], al
mov eax, dword [esp + 0xe8]
mov edx, dword [eax + 0x68]
mov eax, dword [eax + 0x6c]
mov byte [esp + 0x64], dl
mov byte [esp + 0x65], dh
mov ecx, eax
shr ecx, 0x10
mov ebx, edx
shr ebx, 0x10
mov byte [esp + 0x66], bl
mov ebx, eax
shr ebx, 0x18
shr edx, 0x18
mov byte [esp + 0x67], dl
mov byte [esp + 0x68], al
mov byte [esp + 0x69], ah
mov byte [esp + 0x6a], cl
mov byte [esp + 0x6b], bl
mov eax, dword [esp + 0xe8]
mov edx, dword [eax + 0x60]
mov eax, dword [eax + 0x64]
mov byte [esp + 0x6c], dl
mov byte [esp + 0x6d], dh
mov ecx, eax
shr ecx, 0x10
mov ebx, edx
shr ebx, 0x10
mov byte [esp + 0x6e], bl
mov ebx, eax
shr ebx, 0x18
shr edx, 0x18
mov byte [esp + 0x6f], dl
mov byte [esp + 0x70], al
mov byte [esp + 0x71], ah
mov byte [esp + 0x72], cl
mov byte [esp + 0x73], bl
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 0x74]
lea edx, [esp + 0x5c]
mov esi, dword [esp + 0xe8]
mov edi, dword [esi + 0x78]
mov esi, dword [esi + 0x7c]
mov ebx, dword [esp + 0x4c]
mov ebx, dword [ebx + 0x44]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], ebx
call eax
cmp eax, dword [esp + 0x74]
setne al
test al, 1
jne 0x42caf3
jmp 0x42cb02
jmp 0x42caf5
mov dword [esp + 0x54], 0xfffffff2
jmp 0x42ce42
jmp 0x42cb04
mov edx, dword [esp + 0x74]
mov dword [esp + 0x8c], edx
mov ebx, dword [esp + 0xe8]
mov ebp, dword [ebx + 0x78]
mov eax, dword [ebx + 0x7c]
mov dword [esp + 0xac], eax
mov ecx, ebp
and ecx, edx
mov eax, ecx
not eax
mov edi, ecx
and edi, 0xfffffffd
and eax, 2
mul edi
mov edi, eax
mov dword [esp + 0x88], edx
mov esi, ecx
and esi, 2
or ecx, 2
mov eax, ecx
mul esi
add eax, edi
adc edx, dword [esp + 0x88]
xor ebp, dword [esp + 0x8c]
add ebp, eax
mov eax, dword [esp + 0xac]
adc eax, edx
mov dword [ebx + 0x78], ebp
mov dword [ebx + 0x7c], eax
lea eax, [esp + 0xb8]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 0xa0]
mov eax, dword [eax + 0xa4]
xor edx, edx
mov esi, 0xfffffffe
sub esi, ecx
sbb edx, eax
setb al
test al, 1
jne 0x42cba0
jmp 0x42cbaf
mov eax, dword [esp + 0xe8]
add eax, 0x58
add eax, 0x48
jmp 0x42cbb3
xor eax, eax
jmp 0x42cbb3
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 0x68]
mov ecx, dword [ecx + 0x6c]
sub edx, 0xffffffff
sbb ecx, 0
jb 0x42cbd9
jmp 0x42cbca
mov esi, dword [esp + 0xe8]
add esi, 0x58
add esi, 0x10
jmp 0x42cbdd
xor esi, esi
jmp 0x42cbdd
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 0x60]
mov ecx, dword [ecx + 0x64]
sub edx, 0xffffffff
sbb ecx, 0
jb 0x42cc05
jmp 0x42cbf4
jmp 0x42cbf6
mov edx, dword [esp + 0xe8]
add edx, 0x58
add edx, 8
jmp 0x42cc09
xor edx, edx
jmp 0x42cc09
lea ecx, [esp + 0xb8]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0042ac20
mov dword [esp + 0x7c], eax
movzx eax, word [esp + 0x52]
cmp eax, 0
je 0x42ccc6
mov eax, dword [esp + 0xe8]
mov eax, dword [eax + 0x5c]
movzx ecx, word [esp + 0x52]
movsx eax, byte [eax + ecx - 1]
cmp eax, 0x2f
jne 0x42ccc6
jmp 0x42cc49
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 0x60]
mov eax, dword [eax + 0x64]
or ecx, eax
setne al
test al, 1
jne 0x42ccc6
jmp 0x42cc61
mov eax, dword [esp + 0xe8]
mov edx, dword [eax + 0x4e008]
mov esi, edx
or esi, 0x10
mov ecx, esi
xor ecx, 0xffffffff
and ecx, 0xf6f5a4a1
and esi, 0x90a5b5e
or ecx, esi
xor ecx, 0x90a5b5e
or edx, 0x10
mov esi, edx
xor esi, 0xffffffff
xor edx, 0xffffffff
and esi, edx
or esi, 0
xor esi, 0xffffffff
or esi, 0
xor esi, 0xffffffff
mov edx, esi
and edx, ecx
xor edx, 0xffffffff
add ecx, esi
add ecx, 1
add ecx, edx
mov edx, ecx
and edx, 0xffffffff
shl edx, 1
add ecx, 0xffffffff
sub ecx, edx
mov dword [eax + 0x4e008], ecx
mov ebp, dword [esp + 0xe8]
mov esi, dword [ebp + 0x4e008]
mov edx, dword [ebp + 0xa4]
mov ecx, dword [ebp + 0xa0]
mov ax, word [esp + 0x58]
mov di, word [esp + 0x5a]
mov bx, word [ebp + 0xa8]
mov word [esp + 0x78], bx
mov ebx, dword [ebp + 0x70]
mov dword [esp + 0x98], ebx
mov ebx, dword [ebp + 0x6c]
mov dword [esp + 0x9c], ebx
mov ebx, dword [ebp + 0x68]
mov dword [esp + 0xa0], ebx
mov ebx, dword [ebp + 0x60]
mov dword [esp + 0xa4], ebx
mov ebp, dword [ebp + 0x64]
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x90], ebx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x94], ebx
mov bx, word [esp + 0x52]
mov word [esp + 0x7a], bx
mov ebx, dword [esp + 0xe8]
mov ebx, dword [ebx + 0x5c]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0xa8], ebx
xor ebx, ebx
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], ecx
movzx eax, ax
mov dword [esp + 0x34], eax
movzx eax, di
mov dword [esp + 0x30], eax
movzx eax, word [esp + 0x78]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x14], eax
movzx eax, word [esp + 0x90]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 4], eax
movzx eax, word [esp + 0x7a]
mov dword [esp], eax
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x2c], 0x808
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x46684c
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0xb0]
call fcn.0042b090
cmp eax, 0
jne 0x42ce1d
mov dword [esp + 0x54], 0xfffffff1
jmp 0x42ce42
jmp 0x42ce1f
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x10]
inc ecx
mov dword [eax + 0x10], ecx
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 0x78]
mov eax, dword [eax + 0x7c]
mov edx, dword [esp + 0x4c]
mov dword [edx + 4], eax
mov dword [edx], ecx
jmp 0x42ce42
jmp 0x42ce44
cmp dword [esp + 0xe8], 0
setne al
test al, 1
jne 0x42ce55
jmp 0x42cea7
jmp 0x42ce57
mov eax, dword [esp + 0xe8]
mov dword [eax + 0x4e014], 0
mov dword [eax + 0x4e010], 0
jmp 0x42ce74
mov eax, dword [esp + 0xe8]
cmp dword [eax + 0x5c], 0
je 0x42cea1
mov eax, dword [esp + 0xe8]
mov eax, dword [eax + 0x5c]
mov dword [esp], eax
call fcn.004542d5
mov eax, dword [esp + 0xe8]
mov dword [eax + 0x5c], 0
jmp 0x42cea3
jmp 0x42cea5
jmp 0x42cea7
mov eax, dword [esp + 0x54]
add esp, 0xd4
pop esi
pop edi
pop ebx
pop ebp
ret