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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc8
mov eax, dword [esp + 0xdc]
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 + 0xdc], 0
jne 0x42eee1
mov dword [esp + 0x54], 0xffffffff
jmp 0x42f3d9
jmp 0x42eee3
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
cmp dword [eax + 0x14], 1
sete al
test al, 1
jne 0x42eeff
jmp 0x42ef04
jmp 0x42f3d9
jmp 0x42ef06
mov eax, dword [esp + 0xdc]
mov eax, dword [eax + 0x50]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf
mov edx, eax
and edx, 0xfffffff0
or ecx, edx
and ecx, ecx
xor ecx, 0xffffffff
and ecx, 0xffffffff
xor ecx, 0xffffffff
xor ecx, 0xffffffff
or ecx, 0
or eax, 0xf
mov edx, eax
and edx, ecx
xor edx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and edx, eax
xor edx, 0xffffffff
mov dword [esp + 0xa8], edx
cmp dword [esp + 0xa8], 0
setne al
test al, 1
jne 0x42ef62
jmp 0x42effd
mov eax, dword [esp + 0xdc]
add eax, 0x58
add eax, 0x70
lea ecx, [0x46884c]
xor edx, edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 4
call fcn.00429ab0
mov dword [esp + 0x84], eax
cmp dword [esp + 0x84], 1
je 0x42efbb
cmp dword [esp + 0x84], 0
je 0x42efbb
mov dword [esp + 0x54], 0xfffffff4
jmp 0x42f3d9
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 0xc0]
mov edx, dword [eax + 0xc4]
mov dword [eax + 0x6c], edx
mov dword [eax + 0x68], ecx
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 0xb8]
mov edx, dword [eax + 0xbc]
mov dword [eax + 0x7c], edx
mov dword [eax + 0x78], ecx
mov eax, dword [esp + 0xdc]
mov word [eax + 0xa8], 8
mov eax, dword [esp + 0xdc]
mov eax, dword [eax + 0x5c]
mov dword [esp], eax
call fcn.00455ce0
mov word [esp + 0x52], ax
mov eax, dword [esp + 0xdc]
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.0042ce10
mov byte [esp + 0x5c], 0x50
mov byte [esp + 0x5d], 0x4b
mov byte [esp + 0x5e], 7
mov byte [esp + 0x5f], 8
mov eax, dword [esp + 0xdc]
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 + 0xdc]
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 + 0xdc]
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 + 0xdc]
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]
je 0x42f13a
mov dword [esp + 0x54], 0xfffffff2
jmp 0x42f3d9
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0xdc]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
add edx, eax
adc esi, 0
mov dword [ecx + 0x78], edx
mov dword [ecx + 0x7c], esi
lea eax, [esp + 0xac]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 0xa0]
mov eax, dword [eax + 0xa4]
sub ecx, 0xffffffff
sbb eax, 0
jb 0x42f190
jmp 0x42f181
mov eax, dword [esp + 0xdc]
add eax, 0x58
add eax, 0x48
jmp 0x42f194
xor eax, eax
jmp 0x42f194
mov ecx, dword [esp + 0xdc]
mov edx, dword [ecx + 0x68]
mov ecx, dword [ecx + 0x6c]
sub edx, 0xffffffff
sbb ecx, 0
jb 0x42f1ba
jmp 0x42f1ab
mov esi, dword [esp + 0xdc]
add esi, 0x58
add esi, 0x10
jmp 0x42f1be
xor esi, esi
jmp 0x42f1be
mov ecx, dword [esp + 0xdc]
mov edx, dword [ecx + 0x60]
mov ecx, dword [ecx + 0x64]
sub edx, 0xffffffff
sbb ecx, 0
jb 0x42f1e4
jmp 0x42f1d5
mov edx, dword [esp + 0xdc]
add edx, 0x58
add edx, 8
jmp 0x42f1e8
xor edx, edx
jmp 0x42f1e8
lea ecx, [esp + 0xac]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0042d140
mov dword [esp + 0x7c], eax
movzx eax, word [esp + 0x52]
cmp eax, 0
setne al
test al, 1
jne 0x42f210
jmp 0x42f25d
jmp 0x42f212
mov eax, dword [esp + 0xdc]
mov eax, dword [eax + 0x5c]
movzx ecx, word [esp + 0x52]
sub ecx, 1
movsx eax, byte [eax + ecx]
cmp eax, 0x2f
sete al
test al, 1
jne 0x42f234
jmp 0x42f25d
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 0x60]
mov eax, dword [eax + 0x64]
or ecx, eax
jne 0x42f25d
jmp 0x42f247
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 0x4e008]
or ecx, 0x10
mov dword [eax + 0x4e008], ecx
mov ebp, dword [esp + 0xdc]
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 + 0x90], ebx
mov ebx, dword [ebp + 0x6c]
mov dword [esp + 0x94], ebx
mov ebx, dword [ebp + 0x68]
mov dword [esp + 0x98], ebx
mov ebx, dword [ebp + 0x60]
mov dword [esp + 0x9c], ebx
mov ebp, dword [ebp + 0x64]
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x8c], ebx
mov bx, word [esp + 0x52]
mov word [esp + 0x7a], bx
mov ebx, dword [esp + 0xdc]
mov ebx, dword [ebx + 0x5c]
mov dword [esp + 0xa4], ebx
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0xa0], 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 + 0x90]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x14], eax
movzx eax, word [esp + 0x88]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x8c]
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], 0x46884c
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xa4]
call fcn.0042d5b0
cmp eax, 0
jne 0x42f3b4
mov dword [esp + 0x54], 0xfffffff1
jmp 0x42f3d9
jmp 0x42f3b6
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x10]
inc ecx
mov dword [eax + 0x10], ecx
mov eax, dword [esp + 0xdc]
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 0x42f3d9
cmp dword [esp + 0xdc], 0
je 0x42f43e
jmp 0x42f3e5
mov eax, dword [esp + 0xdc]
mov dword [eax + 0x4e014], 0
mov dword [eax + 0x4e010], 0
jmp 0x42f402
jmp 0x42f404
mov eax, dword [esp + 0xdc]
cmp dword [eax + 0x5c], 0
setne al
test al, 1
jne 0x42f418
jmp 0x42f438
mov eax, dword [esp + 0xdc]
mov eax, dword [eax + 0x5c]
mov dword [esp], eax
call fcn.00455735
mov eax, dword [esp + 0xdc]
mov dword [eax + 0x5c], 0
jmp 0x42f43a
jmp 0x42f43c
jmp 0x42f43e
mov eax, dword [esp + 0x54]
add esp, 0xc8
pop esi
pop edi
pop ebx
pop ebp
ret