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

Disassembly:
push 0xffffffffffffffff
push 0x4b4f8e
mov eax, dword fs:[0]
push eax
mov eax, 0x1ad0
call fcn.004a4490
mov eax, dword [0x4ca3b0]
xor eax, esp
mov dword [esp + 0x1acc], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ca3b0]
xor eax, esp
push eax
lea eax, [esp + 0x1ae4]
mov dword fs:[0], eax
xor esi, esi
push 0xc00
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x40], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x20], esi
call fcn.004a3d3c
mov edi, eax
add esp, 4
mov dword [esp + 0x30], edi
cmp edi, esi
jne 0x42c7a2
mov ecx, 0x4d56b4
call fcn.00428da0
mov eax, 0x40
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x1aec], esi
lea ecx, [esp + 0x128]
call fcn.0046a800
mov byte [esp + 0x1aec], 1
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], esi
mov byte [esp + 0x1aec], 2
lea ecx, [esp + 0x80]
call fcn.0046a800
mov byte [esp + 0x1aec], 3
mov dword [0x4d67e8], edi
mov dword [0x4d5ba8], 1
cmp byte [0x4e8c4c], 0
jne 0x42d70f
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 1
lea esp, [esp]
mov ebx, dword [esp + 0x28]
cmp ebx, 0x40
jl 0x42c846
cmp byte [0x4e799c], 0
je 0x42cc32
cmp ebx, ebp
jl 0x42c89f
mov eax, dword [esp + 0x24]
cmp eax, esi
jbe 0x42c899
sub eax, ebp
add ebp, eax
mov dword [esp + 0x34], ebp
cmp ebp, esi
jbe 0x42c89f
mov eax, esi
shr eax, 2
lea esi, [eax + esi + 0x20]
cmp ebp, esi
jbe 0x42c86d
mov esi, ebp
mov edx, dword [esp + 0x30]
lea ecx, [esi + esi*2]
shl ecx, 4
push ecx
push edx
call fcn.004a3e8d
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
jne 0x42c893
mov ecx, 0x4d56b4
call fcn.00428da0
mov dword [esp + 0x38], esi
jmp 0x42c89f
mov ebp, eax
mov dword [esp + 0x34], ebp
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
push 4
add eax, ecx
push 0x4d5bdc
mov dword [0x4d67e8], eax
call fcn.00433970
test eax, eax
je 0x42cb8b
push 4
push 0x4e6845
push 0x4d5bdc
call fcn.004a601d
add esp, 0xc
test eax, eax
jne 0x42cb98
call fcn.00455bd0
test eax, eax
jne 0x42cc01
movzx edx, word [0x4e687c]
movzx eax, word [0x4e6898]
push edx
push 2
push eax
call fcn.00433eb0
mov edi, dword [esp + 0x14]
test eax, eax
je 0x42c91d
cmp eax, edi
jle 0x42c914
mov edi, eax
mov dword [esp + 0x14], edi
cmp eax, 1
jg 0x42cc07
movzx ecx, word [0x4e689a]
push 0
push 3
push ecx
call fcn.00433eb0
test eax, eax
je 0x42c945
cmp eax, edi
jle 0x42c93c
mov edi, eax
mov dword [esp + 0x14], edi
cmp eax, 1
jg 0x42cc07
movzx edx, word [0x4e689a]
mov eax, dword [0x4e6838]
push 0x4e687e
push edx
push eax
call fcn.00471e30
movzx ecx, word [0x4e689c]
push 0
push 0
push ecx
call fcn.00433eb0
test eax, eax
je 0x42c983
cmp eax, edi
jle 0x42c97a
mov dword [esp + 0x14], eax
cmp eax, 1
jg 0x42cc07
test byte [0x4e68a4], 0x10
je 0x42c9c3
movzx eax, byte [0x4e6879]
test eax, eax
je 0x42c99c
cmp eax, 0xb
jne 0x42c9c3
push 0x4e691c
call fcn.00451610
cmp byte [eax], 0x5c
je 0x42c9c3
mov edi, 0x4e691c
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42c9b1
mov dx, word [0x4b9f5c]
mov word [edi], dx
lea ecx, [esp + 0x1d0]
call fcn.004021f0
mov byte [esp + 0x1aec], 4
push 0xce8
lea eax, [esp + 0x1d4]
push 0
push eax
call fcn.004a44c0
add esp, 0xc
xor eax, eax
mov cl, byte [eax + 0x4e691c]
mov byte [esp + eax + 0x200], cl
inc eax
test cl, cl
jne 0x42c9f0
movzx ecx, word [0x4e6882]
movzx edx, word [0x4e6880]
mov eax, dword [0x4e6890]
shl ecx, 0x10
or ecx, edx
mov edx, dword [0x4e687c]
mov dword [esp + 0x1ec], ecx
mov ecx, dword [0x4e6894]
shr edx, 0xb
and dl, 1
mov dword [esp + 0xeb0], eax
mov dword [esp + 0xeb4], ecx
je 0x42ca9a
mov eax, dword [esp + 0x1d8]
push 0x400
lea ecx, [esp + 0x604]
push ecx
or eax, 0x200
push 0x4e691c
mov word [esp + 0x1e4], ax
call fcn.004729e0
push 0x3ff
lea eax, [esp + 0x204]
push eax
lea ecx, [esp + 0x608]
xor edx, edx
push ecx
mov word [esp + 0xe0a], dx
call fcn.00472810
mov byte [esp + 0x5ff], 0
cmp dword [0x4e83a4], 1
mov eax, 5
je 0x42cabf
cmp dword [0x4f4610], 0
jne 0x42cabf
cmp byte [0x4f5fcd], 0
jne 0x42cabf
mov eax, CreateMappedBitmap
push eax
push 0
lea edx, [esp + 0x1d8]
push edx
mov ecx, 0x4f0ca0
call fcn.0041c6e0
test eax, eax
setne bl
cmp byte [0x4e691c], 0
je 0x42cb27
cmp byte [0x4e691d], 0
je 0x42cb27
cmp byte [0x4e691e], 0
mov eax, 0x4e691e
je 0x42cb27
mov edi, 1
mov edi, edi
cmp byte [eax], 0x3a
jne 0x42cb08
mov byte [eax], 0x5f
cmp byte [0x50c1b8], 0
je 0x42cb1e
push eax
mov ecx, 0x50c0b8
call fcn.00472fb0
jmp 0x42cb20
add eax, edi
cmp byte [eax], 0
jne 0x42cb00
jmp 0x42cb2c
mov edi, 1
test bl, bl
je 0x42cb5d
call fcn.0042ba00
test eax, eax
je 0x42cb59
push 0x4e691c
lea ecx, [esp + 0x12c]
call fcn.0046a8a0
add dword [esp + 0x28], edi
add dword [esp + 0x24], edi
add dword [esp + 0x20], 0x30
jmp 0x42cb5d
add dword [esp + 0x2c], edi
add dword [esp + 0x50], edi
adc dword [esp + 0x54], 0
mov byte [esp + 0x1aec], 3
mov eax, dword [esp + 0xe00]
test eax, eax
je 0x42c830
push eax
call fcn.004a3dff
add esp, 4
jmp 0x42c830
mov dword [esp + 0x14], 0x33
jmp 0x42cc2a
mov edx, dword [0x4e68c0]
mov eax, edx
xor eax, dword [esp + 0x50]
xor ecx, ecx
and eax, 0xffff
or eax, ecx
je 0x42cbe1
cmp edx, 0xffff
jne 0x42cbbf
cmp dword [0x4e68c4], ecx
je 0x42cbe1
push 0x2ad
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 8
mov dword [esp + 0x14], 3
jmp 0x42cc2a
push 4
push 0x4e684a
push 0x4d5bdc
call fcn.004a601d
add esp, 0xc
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x58], eax
jmp 0x42cc2a
mov dword [esp + 0x14], eax
jmp 0x42cc2a
push 0x4e691c
call fcn.0046a3f0
push eax
push 0x2ab
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 0xc
mov dword [esp + 0x1c], 1
mov eax, dword [0x4e6828]
mov ecx, dword [0x4e682c]
mov edx, dword [0x4e67f8]
mov dword [esp + 0x78], eax
mov eax, dword [0x4e6800]
mov dword [esp + 0x7c], ecx
mov ecx, dword [0x4e6804]
xor esi, esi
cmp byte [0x4e799c], 0
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
je 0x42ccb7
push 0x4b9f58
push 0x4f6c1c
mov dword [0x4e79a0], esi
call fcn.004534d0
cmp word [0x4f701c], si
je 0x42cc9a
push 0x4b9f50
push 0x4f701c
call fcn.00453570
mov ecx, dword [0x4e6818]
cmp ecx, esi
je 0x42ccac
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [0x4e6818], esi
call fcn.00433640
cmp ebx, esi
mov dword [esp + 0x20], esi
jle 0x42d6a6
mov ecx, dword [esp + 0x3c]
shl ecx, 6
mov dword [esp + 0x24], ecx
jmp 0x42ccd4
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
lea ebx, [ecx + eax]
lea ecx, [eax + eax*2]
shl ecx, 4
add ecx, dword [esp + 0x30]
mov dword [esp + 0x44], ebx
mov dword [0x4d67e8], ecx
lea ecx, [esp + 0x128]
call fcn.0046aab0
cmp byte [0x4e799c], 0
mov dword [esp + 0x6c], eax
je 0x42ce18
mov edx, dword [0x4d67e8]
mov eax, dword [edx + 0x20]
cmp eax, dword [0x4e79a0]
je 0x42ce18
movzx ecx, word [0x4e68b0]
cmp eax, ecx
jne 0x42cd53
push 0x4b9f4c
push 0x4f6c1c
call fcn.004534d0
cmp word [0x4f701c], 0
je 0x42cde9
push 0x4b8a98
jmp 0x42cddf
cmp eax, 0x63
jl 0x42cd69
inc eax
push eax
push 0x4b9f2c
lea edx, [esp + 0xec0]
push edx
jmp 0x42cd78
inc eax
push eax
push 0x4b9f24
lea eax, [esp + 0xec0]
push eax
call fcn.004a3c72
add esp, 0xc
lea ecx, [esp + 0xeb8]
push ecx
push 0x4f6c1c
call fcn.004534d0
cmp word [0x4f701c], 0
je 0x42cde9
mov edx, dword [0x4d67e8]
mov eax, dword [edx + 0x20]
cmp eax, 0x63
mov edx, 0x14
jl 0x42cdc0
inc eax
push eax
push str.z_03d
lea eax, [esp + 0xec0]
push eax
jmp 0x42cdcf
inc eax
push eax
push str.z_02d
lea ecx, [esp + 0xec0]
push ecx
call fcn.0046b810
add esp, 0xc
lea edx, [esp + 0xeb8]
push edx
push 0x4f701c
call fcn.00453570
mov eax, dword [0x4d67e8]
mov ecx, dword [eax + 0x20]
mov dword [0x4e79a0], ecx
mov ecx, dword [0x4e6818]
test ecx, ecx
je 0x42ce09
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [0x4e6818], 0
call fcn.00433640
mov eax, dword [0x4d67e8]
mov ebp, dword [eax]
add ebp, dword [0x4e6830]
mov esi, dword [eax + 4]
adc esi, dword [0x4e6834]
push 0
push 0x2000
push esi
push ebp
call fcn.004a66c0
mov edi, eax
mov eax, ebp
sub eax, edi
mov ecx, esi
sbb ecx, edx
test esi, esi
jg 0x42cef5
jl 0x42ce58
test ebp, ebp
jae 0x42cef5
push 0x2ad
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 8
mov dword [esp + 0x14], 2
test ebx, ebx
jne 0x42cee8
mov eax, dword [0x4e6830]
mov ecx, dword [0x4e6834]
mov edx, eax
or edx, ecx
je 0x42cee8
mov dword [esp + 0x4c], ecx
xor ecx, ecx
mov ebx, eax
mov eax, dword [0x4d67e8]
push ecx
mov dword [0x4e6830], ecx
mov dword [0x4e6834], ecx
mov esi, dword [eax + 4]
mov ebp, dword [eax]
push 0x2000
push esi
push ebp
mov dword [esp + 0x58], ebx
call fcn.004a66c0
mov edi, eax
mov eax, ebp
sub eax, edi
mov ecx, esi
sbb ecx, edx
test esi, esi
jg 0x42cef9
jl 0x42ced0
test ebp, ebp
jae 0x42cef9
push 0x2ad
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 8
mov dword [esp + 0x14], 3
jmp case.0x42d3ce.78
mov ebx, dword [esp + 0x48]
cmp eax, dword [0x4e6828]
jne 0x42cf3a
cmp ecx, dword [0x4e682c]
jne 0x42cf3a
cmp byte [0x4e799c], 0
jne 0x42cf3a
mov eax, dword [0x4e67f8]
mov ecx, dword [0x4e67f4]
sub eax, edi
sub eax, ecx
cdq
add dword [0x4e6800], eax
adc dword [0x4e6804], edx
add edi, ecx
mov dword [0x4e67f8], edi
xor ebp, ebp
jmp 0x42cfb4
xor ebp, ebp
push ebp
push ecx
mov ecx, dword [0x4e6818]
push eax
call fcn.00430a90
mov ecx, dword [0x4e6818]
call fcn.00430300
mov dword [0x4e6828], eax
mov eax, dword [0x4e67f4]
push 0x2000
push eax
mov dword [0x4e682c], edx
call fcn.00433870
cdq
mov ecx, edx
cmp ecx, ebp
mov esi, eax
mov dword [0x4e6800], esi
mov dword [0x4e6804], ecx
jg 0x42cf93
jl 0x42ced0
cmp esi, ebp
jbe 0x42ced0
mov edx, dword [0x4e67f4]
lea eax, [edi + edx]
mov dword [0x4e67f8], eax
mov eax, edi
cdq
sub esi, eax
sbb ecx, edx
mov dword [0x4e6800], esi
mov dword [0x4e6804], ecx
push 4
push 0x4d5bdc
call fcn.00433970
test eax, eax
je 0x42ced0
push 4
push 0x4e6840
push 0x4d5bdc
call fcn.004a601d
add esp, 0xc
test eax, eax
je 0x42d0a4
push 0x2ad
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
mov eax, dword [0x4e6830]
mov ecx, dword [0x4e6834]
add esp, 8
mov dword [esp + 0x14], 2
mov edx, eax
cmp dword [esp + 0x44], ebp
jne 0x42d01d
or edx, ecx
jne 0x42d039
jmp 0x42d025
or edx, ecx
jne case.0x42d3ce.78
mov edx, dword [esp + 0x4c]
mov esi, ebx
or esi, edx
je case.0x42d3ce.78
mov esi, eax
or esi, ecx
je 0x42d04f
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov dword [0x4e6830], ebp
mov dword [0x4e6834], ebp
jmp 0x42d05b
mov dword [0x4e6830], ebx
mov dword [0x4e6834], edx
mov eax, dword [0x4d67e8]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
call fcn.00433bd0
cmp eax, ebp
jne 0x42ced0
push 4
push 0x4d5bdc
call fcn.00433970
test eax, eax
je 0x42ced0
push 4
push 0x4e6840
push 0x4d5bdc
call fcn.004a601d
add esp, 0xc
test eax, eax
jne 0x42ced0
call fcn.00455550
mov esi, eax
cmp esi, ebp
je 0x42d0d0
push 0x2ad
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 8
mov dword [esp + 0x14], esi
jmp case.0x42d3ce.78
movzx eax, word [0x4e6852]
movzx ecx, word [0x4e6870]
push eax
push 2
push ecx
call fcn.00433eb0
cmp eax, ebp
je 0x42d122
cmp eax, dword [esp + 0x14]
jle 0x42d0f5
mov dword [esp + 0x14], eax
cmp eax, 1
jle 0x42d122
push 0x4e691c
call fcn.0046a3f0
push eax
push 0x2ab
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 0xc
jmp case.0x42d3ce.78
mov eax, dword [0x4e6838]
cmp eax, ebp
je 0x42d13a
push eax
call fcn.004a3dff
add esp, 4
mov dword [0x4e6838], ebp
movzx edx, word [0x4e6872]
push ebp
push 3
push edx
call fcn.00433eb0
cmp eax, ebp
je 0x42d15d
cmp eax, dword [esp + 0x14]
jle 0x42d158
mov dword [esp + 0x14], eax
cmp eax, 1
jg 0x42d0fa
movzx eax, word [0x4e6872]
mov ecx, dword [0x4e6838]
push 0x4e6854
push eax
push ecx
call fcn.00471e30
mov eax, dword [esp + 0x6c]
cmp eax, ebp
je 0x42d18f
mov edx, 0x4e691c
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42d185
push 0x4e691c
call fcn.00451610
cmp byte [eax], 0x5c
sete bl
test bl, bl
je 0x42d1a6
mov byte [eax], 0
push 0x4e691c
push 0x4e691c
call fcn.00451650
push 0x400
push 0
push 0x4e691c
call fcn.0040a1d0
mov eax, 0x4e691c
jmp 0x42d1d0
mov cl, byte [eax]
mov byte [eax + 0xc00], cl
inc eax
test cl, cl
jne 0x42d1d0
mov ax, word [0x4e6852]
xor edx, edx
shr ax, 0xb
and al, 1
mov word [0x4e6d1c], dx
mov byte [esp + 0x1b], al
je 0x42d22f
push 0x400
push 0x4e6d1c
push 0x4e691c
call fcn.004729e0
push 0x400
push 0x4e751c
xor eax, eax
push 0x4e6d1c
mov word [0x4e751a], ax
call fcn.00472810
mov byte [0x4e791b], 0
mov eax, dword [0x4d67e8]
test byte [eax + 0x24], 0x10
je 0x42d248
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x42d246
cmp eax, 0xb
jne 0x42d248
mov bl, 1
cmp byte [0x4f5feb], 0x49
movzx eax, byte [0x4f46da]
sete cl
push 0
movzx edx, cl
push edx
push eax
push 0
push 0x4e691c
call fcn.00409df0
test al, al
je 0x42d6a6
movsx ecx, byte [0x4f5feb]
push ecx
call fcn.004a5405
add esp, 4
cmp eax, 0x49
jne 0x42d2ab
push 0x4e6d1c
push 0x4e691c
push 0x4f701c
push 0x4f6c1c
push 0x4f5fec
push 0
push 0
call fcn.004354f0
cmp byte [0x4f46da], 0
jne case.0x42d3ce.89
xor esi, esi
test bl, bl
jne 0x42d495
jmp 0x42d2d0
push 0x4e6d1c
push 0x4e691c
call fcn.00433dc0
cmp eax, 0xffffffff
je 0x42d47b
test eax, eax
je 0x42d319
cmp eax, 1
jne case.0x42d3ce.89
mov eax, dword [0x4f45c4]
cmp eax, 2
je case.0x42d3ce.78
cmp byte [0x4f45e5], 0
jne 0x42d315
cmp byte [0x4f45e4], 0
je 0x42d327
test esi, esi
jmp 0x42d321
mov eax, dword [0x4f45c4]
cmp eax, 2
je case.0x42d3ce.78
test eax, eax
je case.0x42d3ce.66
cmp eax, 3
jne case.0x42d3ce.89
xor eax, eax
jmp 0x42d340
mov cl, byte [eax + 0x4e751c]
mov byte [esp + eax + 0xee0], cl
inc eax
test cl, cl
jne 0x42d340
xor eax, eax
jmp 0x42d360
movzx ecx, word [eax + 0x4e6d1c]
mov word [esp + eax + 0x12e0], cx
add eax, 2
test cx, cx
jne 0x42d360
movzx edx, word [0x4e6858]
movzx eax, word [0x4e6856]
mov ecx, dword [0x4d5bcc]
push 0
shl edx, 0x10
add edx, eax
push edx
mov edx, dword [0x4d5bc8]
push ecx
push edx
lea eax, [esp + 0x12f0]
push eax
lea ecx, [esp + 0xef4]
push ecx
call fcn.0040aea0
cmp al, 0x43
je 0x42d6a6
movsx eax, al
add eax, 0xffffffbf
cmp eax, 0x38
ja case.0x42d3ce.66
movzx edx, byte [eax + 0x42d9c8]
jmp dword [edx*4 + 0x42d9b4]
xor eax, eax
mov cl, byte [esp + eax + 0xee0]
mov byte [eax + 0x4e691c], cl
inc eax
test cl, cl
jne 0x42d3e2
xor eax, eax
jmp 0x42d400
movzx ecx, word [esp + eax + 0x12e0]
mov word [eax + 0x4e6d1c], cx
add eax, 2
test cx, cx
jne 0x42d400
cmp byte [esp + 0x1b], cl
je 0x42d441
cmp word [0x4e6d1c], cx
je 0x42d441
push 0x400
push 0x4e691c
push 0x4e6d1c
call fcn.00472920
mov byte [0x4e6d1b], 0
mov eax, 0x4e691c
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42d450
sub eax, edx
cmp byte [eax + 0x4e691b], 0xa
jne 0x42d469
dec eax
mov byte [eax + 0x4e691c], cl
test eax, eax
je case.0x42d3ce.82
mov esi, 1
jmp 0x42d2d0
cmp byte [0x4f45e4], 0
je case.0x42d3ce.89
test esi, esi
je case.0x42d3ce.78
jmp case.0x42d3ce.89
cmp byte [0x4f45e4], 0
jne case.0x42d3ce.78
cmp byte [0x4e691c], 0
je case.0x42d3ce.78
cmp dword [0x4f45e8], 1
je case.0x42d3ce.78
mov ecx, dword [0x4d67e8]
mov eax, dword [ecx + 0x1c]
xor esi, esi
test eax, eax
je 0x42d4d0
cmp eax, 0xb
jne 0x42d4d3
mov esi, dword [ecx + 0x24]
push 0x4e6d1c
push 0x4e691c
call fcn.00431510
test al, al
jne 0x42d570
cmp byte [0x4f467b], al
push esi
sete al
movzx ecx, al
push ecx
push 0x4e6d1c
push 0x4e691c
call fcn.00431bd0
test eax, eax
je 0x42d570
push 1
push 0x4e6d1c
push 0x4e691c
call fcn.00431ef0
cmp byte [0x4f467b], 0
push esi
sete dl
movzx eax, dl
push eax
push 0x4e6d1c
push 0x4e691c
call fcn.00431bd0
test eax, eax
je 0x42d570
push 0x4e751c
call fcn.0046a3f0
push eax
push 0x1f7
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 0xc
mov ecx, 0x4d56b4
call fcn.00428cd0
jmp case.0x42d3ce.78
movzx esi, word [0x4e6858]
movzx ecx, word [0x4e6856]
shl esi, 0x10
or esi, ecx
lea ecx, [esp + 0xeb8]
call fcn.0046d1b0
push esi
lea ecx, [esp + 0xebc]
call fcn.0046d030
push 0
push 0
lea edx, [esp + 0xec0]
push edx
push 0x4e6d1c
push 0x4e691c
call fcn.00431f30
push 0x4e6d1c
push 0x4e691c
lea ecx, [esp + 0x88]
call fcn.0046a510
push esi
lea ecx, [esp + 0x60]
call fcn.0042be80
jmp case.0x42d3ce.78
mov dword [0x4f45c4], 1
mov eax, dword [0x4d67e8]
test byte [eax + 0x28], 1
je 0x42d669
call fcn.00472620
test eax, eax
je 0x42d669
cmp eax, 1
jne 0x42d64a
cmp dword [0x4d5b88], 0
jne 0x42d644
cmp dword [0x4e791c], 0
je 0x42d621
push 0
call fcn.004926f0
add esp, 4
inc dword [esp + 0x40]
jmp case.0x42d3ce.78
push 0x4e751c
call fcn.0046a3f0
push eax
push 0x1fb
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 0xc
inc dword [esp + 0x40]
jmp case.0x42d3ce.78
cmp eax, dword [esp + 0x14]
jle 0x42d654
mov dword [esp + 0x14], eax
push 0x4e751c
call fcn.0046a3f0
push eax
push 0x1fb
jmp 0x42d10a
mov dword [0x4e68ec], 0
call fcn.0042c040
test eax, eax
je case.0x42d3ce.78
cmp eax, dword [esp + 0x14]
jle 0x42d686
mov dword [esp + 0x14], eax
cmp dword [0x4e68ec], 1
jg 0x42d7f0
mov eax, dword [esp + 0x20]
inc eax
cmp eax, dword [esp + 0x28]
mov dword [esp + 0x20], eax
jl 0x42ccd0
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
push 0
push ecx
mov ecx, dword [0x4e6818]
push edx
call fcn.00430a90
mov ecx, dword [0x4e6818]
call fcn.00430300
mov dword [0x4e6828], eax
mov eax, dword [0x4e67f4]
push 0x2000
push eax
mov dword [0x4e682c], edx
call fcn.00433870
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
inc dword [esp + 0x3c]
cmp dword [esp + 0x1c], 0
mov dword [0x4e67f8], ecx
mov dword [0x4e6800], edx
mov dword [0x4e6804], eax
je 0x42c802
push 0x400
lea ecx, [esp + 0x12e4]
push ecx
lea edx, [esp + 0xee8]
push edx
lea ecx, [esp + 0x8c]
call fcn.0046a980
test al, al
je 0x42d7a4
mov esi, dword [esp + 0x5c]
jmp 0x42d740
mov edi, dword [esi]
lea ecx, [esp + 0xeb8]
call fcn.0046d1b0
push edi
lea ecx, [esp + 0xebc]
call fcn.0046d030
push 0
push 0
lea eax, [esp + 0xec0]
push eax
lea ecx, [esp + 0x12ec]
push ecx
lea edx, [esp + 0xef0]
push edx
call fcn.00431f30
push 0x400
lea eax, [esp + 0x12e4]
push eax
lea ecx, [esp + 0xee8]
push ecx
lea ecx, [esp + 0x8c]
add esi, 4
call fcn.0046a980
test al, al
jne 0x42d740
cmp byte [0x4e8c4c], 0
jne 0x42d856
cmp dword [esp + 0x58], 0
je 0x42d856
cmp byte [0x4e799c], 0
jne 0x42d856
push 0x2ad
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
mov ebx, dword [esp + 0x1c]
add esp, 8
test ebx, ebx
jne 0x42d85a
mov ebx, 1
jmp 0x42d85a
mov byte [esp + 0x1aec], 2
lea ecx, [esp + 0x80]
call fcn.00401b00
mov byte [esp + 0x1aec], 1
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42d81d
push eax
call fcn.004a3dff
add esp, 4
mov byte [esp + 0x1aec], 0
lea ecx, [esp + 0x128]
call fcn.00401b00
mov dword [esp + 0x1aec], 0xffffffff
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42d84d
push eax
call fcn.004a3dff
add esp, 4
mov eax, dword [esp + 0x14]
jmp 0x42d98b
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
movzx esi, bp
inc edi
cmp edi, esi
jne 0x42d894
cmp byte [0x4f5feb], 0x49
je 0x42d894
cmp dword [0x4e791c], 0
jne 0x42d894
push 0x344
call fcn.00460a30
push eax
push 0x4f701c
call fcn.00492ce0
add esp, 8
test edi, edi
jne 0x42d8af
cmp ebx, 1
jg 0x42d8af
xor dx, dx
cmp dx, word [esp + 0x2c]
sbb ebx, ebx
and ebx, 0x46
add ebx, 0xb
jmp 0x42d8e1
cmp edi, esi
jne 0x42d8bf
cmp ebx, 1
jg 0x42d8bf
mov ebx, 0x52
jmp 0x42d8e1
cmp word [esp + 0x2c], 0
jbe 0x42d8d3
cmp ebx, 1
jg 0x42d8d3
mov ebx, 0x51
jmp 0x42d8e1
test bp, bp
jbe 0x42d8e1
test ebx, ebx
jne 0x42d8e1
mov ebx, 1
mov byte [esp + 0x1aec], 6
mov eax, dword [esp + 0x90]
test eax, eax
je 0x42d8fd
push eax
call fcn.004a3dff
add esp, 4
mov byte [esp + 0x1aec], 2
mov eax, dword [esp + 0x80]
test eax, eax
je 0x42d919
push eax
call fcn.004a3dff
add esp, 4
mov byte [esp + 0x1aec], 1
cmp dword [esp + 0x5c], 0
je 0x42d935
mov eax, dword [esp + 0x5c]
push eax
call fcn.004a3dff
add esp, 4
mov byte [esp + 0x1aec], 8
mov eax, dword [esp + 0x138]
test eax, eax
je 0x42d951
push eax
call fcn.004a3dff
add esp, 4
mov byte [esp + 0x1aec], 0
mov eax, dword [esp + 0x128]
test eax, eax
je 0x42d96d
push eax
call fcn.004a3dff
add esp, 4
mov dword [esp + 0x1aec], 0xffffffff
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42d989
push eax
call fcn.004a3dff
add esp, 4
mov eax, ebx
mov ecx, dword [esp + 0x1ae4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1acc]
xor ecx, esp
call fcn.004a3c63
add esp, 0x1adc
ret