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

Disassembly:
push 0xffffffffffffffff
push 0x4ae6b2
mov eax, dword fs:[0]
push eax
mov eax, 0x1378
call fcn.0049ebb0
mov eax, dword [0x4c03a0]
xor eax, esp
mov dword [esp + 0x1374], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4c03a0]
xor eax, esp
push eax
lea eax, [esp + 0x138c]
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 + 0x1c], esi
call fcn.0049e6ff
mov edi, eax
add esp, 4
mov dword [esp + 0x30], edi
cmp edi, esi
jne 0x42b662
mov ecx, 0x4c93ac
call fcn.004285b0
mov eax, 0x40
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x1394], esi
lea ecx, [esp + 0x19c]
call fcn.004658e0
mov byte [esp + 0x1394], 1
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], esi
mov byte [esp + 0x1394], 2
lea ecx, [esp + 0xa4]
call fcn.004658e0
mov byte [esp + 0x1394], 3
mov dword [0x4ca4e8], edi
mov dword [0x4c98a0], 1
xor ebx, ebx
cmp dword [0x4dc1c0], ebx
jne 0x42c537
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], 1
jmp 0x42b6f0
mov ebx, dword [esp + 0x28]
cmp ebx, 0x40
jl 0x42b706
cmp byte [0x4db69c], 0
je 0x42baec
cmp ebx, ebp
jl 0x42b75f
mov eax, dword [esp + 0x24]
cmp eax, esi
jbe 0x42b759
sub eax, ebp
add ebp, eax
mov dword [esp + 0x34], ebp
cmp ebp, esi
jbe 0x42b75f
mov eax, esi
shr eax, 2
lea esi, [eax + esi + 0x20]
cmp ebp, esi
jbe 0x42b72d
mov esi, ebp
mov edx, dword [esp + 0x30]
lea ecx, [esi + esi*2]
shl ecx, 4
push ecx
push edx
call fcn.0049e40b
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
jne 0x42b753
mov ecx, 0x4c93ac
call fcn.004285b0
mov dword [esp + 0x38], esi
jmp 0x42b75f
mov ebp, eax
mov dword [esp + 0x34], ebp
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x1c]
push 4
add eax, ecx
push 0x4c98d4
mov dword [0x4ca4e8], eax
call fcn.00432050
test eax, eax
je 0x42ba4b
push 4
push 0x4da545
push 0x4c98d4
call fcn.0049f7bf
add esp, 0xc
test eax, eax
jne 0x42ba58
call fcn.00451830
test eax, eax
jne 0x42bac1
movzx edx, word [0x4da57c]
movzx eax, word [0x4da598]
push edx
push 2
push eax
call fcn.00432510
mov edi, dword [esp + 0x14]
test eax, eax
je 0x42b7dd
cmp eax, edi
jle 0x42b7d4
mov edi, eax
mov dword [esp + 0x14], edi
cmp eax, 1
jg 0x42bac7
movzx ecx, word [0x4da59a]
push 0
push 3
push ecx
call fcn.00432510
test eax, eax
je 0x42b805
cmp eax, edi
jle 0x42b7fc
mov edi, eax
mov dword [esp + 0x14], edi
cmp eax, 1
jg 0x42bac7
movzx edx, word [0x4da59a]
mov eax, dword [0x4da538]
push 0x4da57e
push edx
push eax
call fcn.0046ce10
movzx ecx, word [0x4da59c]
push 0
push 0
push ecx
call fcn.00432510
test eax, eax
je 0x42b843
cmp eax, edi
jle 0x42b83a
mov dword [esp + 0x14], eax
cmp eax, 1
jg 0x42bac7
test byte [0x4da5a4], 0x10
je 0x42b883
movzx eax, byte [0x4da579]
test eax, eax
je 0x42b85c
cmp eax, 0xb
jne 0x42b883
push 0x4da61c
call fcn.0044dbc0
cmp byte [eax], 0x5c
je 0x42b883
mov edi, 0x4da61c
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42b871
mov dx, word [0x4b17bc]
mov word [edi], dx
lea ecx, [esp + 0x294]
call fcn.00401f80
mov byte [esp + 0x1394], 4
push 0xce8
lea eax, [esp + 0x298]
push 0
push eax
call fcn.0049ebe0
add esp, 0xc
xor eax, eax
mov cl, byte [eax + 0x4da61c]
mov byte [esp + eax + 0x2c4], cl
inc eax
test cl, cl
jne 0x42b8b0
movzx ecx, word [0x4da582]
movzx edx, word [0x4da580]
mov eax, dword [0x4da590]
shl ecx, 0x10
or ecx, edx
mov edx, dword [0x4da57c]
mov dword [esp + 0x2b0], ecx
mov ecx, dword [0x4da594]
shr edx, 0xb
and dl, 1
mov dword [esp + 0xf74], eax
mov dword [esp + 0xf78], ecx
je 0x42b95a
mov eax, dword [esp + 0x29c]
push 0x400
lea ecx, [esp + 0x6c8]
push ecx
or eax, 0x200
push 0x4da61c
mov word [esp + 0x2a8], ax
call fcn.0046d9b0
push 0x3ff
lea eax, [esp + 0x2c8]
push eax
lea ecx, [esp + 0x6cc]
xor edx, edx
push ecx
mov word [esp + 0xece], dx
call fcn.0046d7f0
mov byte [esp + 0x6c3], 0
cmp dword [0x4dbca8], 1
mov eax, 5
je 0x42b97f
cmp dword [0x4e57e8], 0
jne 0x42b97f
cmp byte [0x4e69a5], 0
jne 0x42b97f
mov eax, CreateMappedBitmap
push eax
push 0
lea edx, [esp + 0x29c]
push edx
mov ecx, 0x4e2ef8
call fcn.0041be50
test eax, eax
setne bl
cmp byte [0x4da61c], 0
je 0x42b9e7
cmp byte [0x4da61d], 0
je 0x42b9e7
cmp byte [0x4da61e], 0
mov eax, 0x4da61e
je 0x42b9e7
mov edi, 1
mov edi, edi
cmp byte [eax], 0x3a
jne 0x42b9c8
mov byte [eax], 0x5f
cmp byte [0x4f6208], 0
je 0x42b9de
push eax
mov ecx, 0x4f6108
call fcn.0046e2a0
jmp 0x42b9e0
add eax, edi
cmp byte [eax], 0
jne 0x42b9c0
jmp 0x42b9ec
mov edi, 1
test bl, bl
je 0x42ba1d
call fcn.0042aa40
test eax, eax
je 0x42ba19
push 0x4da61c
lea ecx, [esp + 0x1a0]
call fcn.00465960
add dword [esp + 0x28], edi
add dword [esp + 0x24], edi
add dword [esp + 0x1c], 0x30
jmp 0x42ba1d
add dword [esp + 0x2c], edi
add dword [esp + 0x50], edi
adc dword [esp + 0x54], 0
mov byte [esp + 0x1394], 3
mov eax, dword [esp + 0xec4]
test eax, eax
je 0x42b6f0
push eax
call fcn.0049e37d
add esp, 4
jmp 0x42b6f0
mov dword [esp + 0x14], 0x33
jmp 0x42bae4
mov edx, dword [0x4da5c0]
mov eax, edx
xor eax, dword [esp + 0x50]
xor ecx, ecx
and eax, 0xffff
or eax, ecx
je 0x42baa1
cmp edx, 0xffff
jne 0x42ba7f
cmp dword [0x4da5c4], ecx
je 0x42baa1
push 0x2ad
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 8
mov dword [esp + 0x14], 3
jmp 0x42bae4
push 4
push 0x4da54a
push 0x4c98d4
call fcn.0049f7bf
add esp, 0xc
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x58], eax
jmp 0x42bae4
mov dword [esp + 0x14], eax
jmp 0x42bae4
push 0x4da61c
push 0x2ab
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 0xc
mov dword [esp + 0x18], 1
mov eax, dword [0x4da528]
mov ecx, dword [0x4da52c]
mov edx, dword [0x4da4f8]
mov dword [esp + 0x78], eax
mov eax, dword [0x4da500]
mov dword [esp + 0x7c], ecx
mov ecx, dword [0x4da504]
xor esi, esi
cmp byte [0x4db69c], 0
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
je 0x42bb62
push 0x4b283c
push 0x4e75f4
mov dword [0x4db6a0], esi
call fcn.0044f4f0
mov ecx, dword [0x4da518]
xor edx, edx
mov word [0x4e79f4], dx
cmp ecx, esi
je 0x42bb57
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [0x4da518], esi
call fcn.00431d60
cmp ebx, esi
mov dword [esp + 0x1c], esi
jle 0x42c4cb
mov ecx, dword [esp + 0x3c]
shl ecx, 6
mov dword [esp + 0x24], ecx
jmp 0x42bb84
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
lea ebx, [ecx + eax]
lea eax, [eax + eax*2]
shl eax, 4
add eax, dword [esp + 0x30]
lea ecx, [esp + 0x19c]
mov dword [esp + 0x44], ebx
mov dword [0x4ca4e8], eax
call fcn.00465ac0
cmp byte [0x4db69c], 0
mov dword [esp + 0x6c], eax
je 0x42bc50
mov ecx, dword [0x4ca4e8]
mov eax, dword [ecx + 0x20]
cmp eax, dword [0x4db6a0]
je 0x42bc50
movzx edx, word [0x4da5b0]
cmp eax, edx
jne 0x42bbe2
push 0x4b19b8
jmp 0x42bc17
cmp eax, 0x63
jl 0x42bbf8
inc eax
push eax
push str.z_03d
lea eax, [esp + 0xf84]
push eax
jmp 0x42bc07
inc eax
push eax
push str.z_02d
lea ecx, [esp + 0xf84]
push ecx
call fcn.0049e635
add esp, 0xc
lea edx, [esp + 0xf7c]
push edx
push 0x4e75f4
call fcn.0044f4f0
mov eax, dword [0x4ca4e8]
mov ecx, dword [eax + 0x20]
mov dword [0x4db6a0], ecx
mov ecx, dword [0x4da518]
test ecx, ecx
je 0x42bc41
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [0x4da518], 0
call fcn.00431d60
mov eax, dword [0x4ca4e8]
mov ebp, dword [eax]
add ebp, dword [0x4da530]
mov esi, dword [eax + 4]
adc esi, dword [0x4da534]
push 0
push 0x2000
push esi
push ebp
call fcn.004a0e80
mov edi, eax
mov eax, ebp
sub eax, edi
mov ecx, esi
sbb ecx, edx
test esi, esi
jg 0x42bd2d
jl 0x42bc90
test ebp, ebp
jae 0x42bd2d
push 0x2ad
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 8
mov dword [esp + 0x14], 2
test ebx, ebx
jne 0x42bd20
mov eax, dword [0x4da530]
mov ecx, dword [0x4da534]
mov edx, eax
or edx, ecx
je 0x42bd20
mov dword [esp + 0x4c], ecx
xor ecx, ecx
mov ebx, eax
mov eax, dword [0x4ca4e8]
push ecx
mov dword [0x4da530], ecx
mov dword [0x4da534], ecx
mov esi, dword [eax + 4]
mov ebp, dword [eax]
push 0x2000
push esi
push ebp
mov dword [esp + 0x58], ebx
call fcn.004a0e80
mov edi, eax
mov eax, ebp
sub eax, edi
mov ecx, esi
sbb ecx, edx
test esi, esi
jg 0x42bd31
jl 0x42bd08
test ebp, ebp
jae 0x42bd31
push 0x2ad
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 8
mov dword [esp + 0x14], 3
jmp case.0x42c286.78
mov ebx, dword [esp + 0x48]
cmp eax, dword [0x4da528]
jne 0x42bd72
cmp ecx, dword [0x4da52c]
jne 0x42bd72
cmp byte [0x4db69c], 0
jne 0x42bd72
mov eax, dword [0x4da4f8]
mov ecx, dword [0x4da4f4]
sub eax, edi
sub eax, ecx
cdq
add dword [0x4da500], eax
adc dword [0x4da504], edx
add edi, ecx
mov dword [0x4da4f8], edi
xor ebp, ebp
jmp 0x42bdec
xor ebp, ebp
push ebp
push ecx
mov ecx, dword [0x4da518]
push eax
call fcn.0042f3d0
mov ecx, dword [0x4da518]
call fcn.0042ecc0
mov dword [0x4da528], eax
mov eax, dword [0x4da4f4]
push 0x2000
push eax
mov dword [0x4da52c], edx
call fcn.00431f80
cdq
mov ecx, edx
cmp ecx, ebp
mov esi, eax
mov dword [0x4da500], esi
mov dword [0x4da504], ecx
jg 0x42bdcb
jl 0x42bd08
cmp esi, ebp
jbe 0x42bd08
mov edx, dword [0x4da4f4]
lea eax, [edi + edx]
mov dword [0x4da4f8], eax
mov eax, edi
cdq
sub esi, eax
sbb ecx, edx
mov dword [0x4da500], esi
mov dword [0x4da504], ecx
push 4
push 0x4c98d4
call fcn.00432050
test eax, eax
je 0x42bd08
push 4
push 0x4da540
push 0x4c98d4
call fcn.0049f7bf
add esp, 0xc
test eax, eax
je 0x42bedc
push 0x2ad
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
mov eax, dword [0x4da530]
mov ecx, dword [0x4da534]
add esp, 8
mov dword [esp + 0x14], 2
mov edx, eax
cmp dword [esp + 0x44], ebp
jne 0x42be55
or edx, ecx
jne 0x42be71
jmp 0x42be5d
or edx, ecx
jne case.0x42c286.78
mov edx, dword [esp + 0x4c]
mov esi, ebx
or esi, edx
je case.0x42c286.78
mov esi, eax
or esi, ecx
je 0x42be87
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov dword [0x4da530], ebp
mov dword [0x4da534], ebp
jmp 0x42be93
mov dword [0x4da530], ebx
mov dword [0x4da534], edx
mov eax, dword [0x4ca4e8]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
call fcn.004322a0
cmp eax, ebp
jne 0x42bd08
push 4
push 0x4c98d4
call fcn.00432050
test eax, eax
je 0x42bd08
push 4
push 0x4da540
push 0x4c98d4
call fcn.0049f7bf
add esp, 0xc
test eax, eax
jne 0x42bd08
call fcn.004511c0
mov esi, eax
cmp esi, ebp
je 0x42bf08
push 0x2ad
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 8
mov dword [esp + 0x14], esi
jmp case.0x42c286.78
movzx eax, word [0x4da552]
movzx ecx, word [0x4da570]
push eax
push 2
push ecx
call fcn.00432510
cmp eax, ebp
je 0x42bf54
cmp eax, dword [esp + 0x14]
jle 0x42bf2d
mov dword [esp + 0x14], eax
cmp eax, 1
jle 0x42bf54
push 0x4da61c
push 0x2ab
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 0xc
jmp case.0x42c286.78
mov eax, dword [0x4da538]
cmp eax, ebp
je 0x42bf6c
push eax
call fcn.0049e37d
add esp, 4
mov dword [0x4da538], ebp
movzx edx, word [0x4da572]
push ebp
push 3
push edx
call fcn.00432510
cmp eax, ebp
je 0x42bf8f
cmp eax, dword [esp + 0x14]
jle 0x42bf8a
mov dword [esp + 0x14], eax
cmp eax, 1
jg 0x42bf32
movzx eax, word [0x4da572]
mov ecx, dword [0x4da538]
push 0x4da554
push eax
push ecx
call fcn.0046ce10
mov eax, dword [esp + 0x6c]
cmp eax, ebp
je 0x42bfc1
mov edx, 0x4da61c
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42bfb7
cmp byte [0x4e4710], 0
je 0x42c039
cmp dword [0x4e57c0], 5
je 0x42c039
mov eax, 0x4e4710
lea edx, [eax + 1]
jmp 0x42bfe0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42bfe0
sub eax, edx
mov esi, eax
je 0x42c039
push esi
push 0x4da61c
push 0x4e4710
call fcn.004650a0
test eax, eax
jne 0x42c039
lea ecx, [esi + 0x4da61c]
mov al, byte [ecx]
cmp al, 0x5c
je 0x42c011
cmp al, 0x2f
jne 0x42c014
inc ecx
jmp 0x42c007
mov eax, ecx
lea esi, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x42c020
sub eax, esi
inc eax
push eax
push ecx
push 0x4da61c
call fcn.004a0500
add esp, 0xc
cmp dword [0x4e57c0], 2
jne 0x42c06a
push 0x4da61c
call fcn.0044daf0
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x42c051
sub ecx, esi
inc ecx
push ecx
push eax
push 0x4da61c
call fcn.004a0500
add esp, 0xc
push 0x4da61c
call fcn.0044dbc0
cmp byte [eax], 0x5c
sete bl
test bl, bl
je 0x42c081
mov byte [eax], 0
push 0x4da61c
push 0x4da61c
call fcn.0044dc00
cmp dword [0x4e57c0], 5
jne 0x42c0ba
cmp byte [0x4da61d], 0x5f
jne 0x42c0ba
movsx edx, byte [0x4da61e]
push edx
call fcn.0044d900
test al, al
je 0x42c0ba
mov byte [0x4da61d], 0x3a
mov eax, 0x4da61c
nop
mov cl, byte [eax]
mov byte [eax + 0xc00], cl
inc eax
test cl, cl
jne 0x42c0c0
mov cx, word [0x4da552]
xor eax, eax
shr cx, 0xb
and cl, 1
mov word [0x4daa1c], ax
je 0x42c11d
push 0x400
push 0x4daa1c
push 0x4da61c
call fcn.0046d9b0
push 0x400
push 0x4db21c
xor edx, edx
push 0x4daa1c
mov word [0x4db21a], dx
call fcn.0046d7f0
mov byte [0x4db61b], 0
mov eax, dword [0x4ca4e8]
test byte [eax + 0x24], 0x10
je 0x42c136
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x42c134
cmp eax, 0xb
jne 0x42c136
mov bl, 1
cmp byte [0x4e69c3], 0x49
movzx edx, byte [0x4e58b2]
sete al
push 0
movzx ecx, al
push ecx
push edx
push 0
push 0x4da61c
call fcn.00409a30
test al, al
je 0x42c4cb
movsx eax, byte [0x4e69c3]
push eax
call fcn.0049f4b6
add esp, 4
cmp eax, 0x49
jne 0x42c18f
push 0x4da61c
push 0x4e75f4
push 0x4e69c4
push 0
push 0
call fcn.00433b10
cmp byte [0x4e58b2], 0
jne case.0x42c286.89
xor esi, esi
test bl, bl
jne 0x42c2f1
jmp 0x42c1b0
push 0x4daa1c
push 0x4da61c
call fcn.00432420
cmp eax, 0xffffffff
je 0x42c2d7
test eax, eax
je 0x42c1f9
cmp eax, 1
jne case.0x42c286.89
mov eax, dword [0x4e579c]
cmp eax, 2
je case.0x42c286.78
cmp byte [0x4e57bd], 0
jne 0x42c1f5
cmp byte [0x4e57bc], 0
je 0x42c207
test esi, esi
jmp 0x42c201
mov eax, dword [0x4e579c]
cmp eax, 2
je case.0x42c286.78
test eax, eax
je case.0x42c286.66
cmp eax, 3
jne case.0x42c286.89
xor eax, eax
jmp 0x42c220
mov cl, byte [eax + 0x4db21c]
mov byte [esp + eax + 0xf88], cl
inc eax
test cl, cl
jne 0x42c220
movzx ecx, word [0x4da558]
movzx edx, word [0x4da556]
mov eax, dword [0x4c98c4]
push 0
shl ecx, 0x10
add ecx, edx
push ecx
mov ecx, dword [0x4c98c0]
push eax
push ecx
lea edx, [esp + 0xf98]
push edx
push 0x4c98d9
call fcn.0040a6a0
mov al, byte [0x4c98d9]
cmp al, 0x43
je 0x42c4cb
movsx eax, al
add eax, 0xffffffbf
cmp eax, 0x38
ja case.0x42c286.66
movzx eax, byte [eax + 0x42c790]
jmp dword [eax*4 + 0x42c77c]
xor eax, eax
mov cl, byte [esp + eax + 0xf88]
mov byte [eax + 0x4da61c], cl
inc eax
test cl, cl
jne 0x42c292
mov eax, 0x4da61c
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42c2b0
sub eax, edx
cmp byte [eax + 0x4da61b], 0xa
jne 0x42c2c9
dec eax
mov byte [eax + 0x4da61c], cl
test eax, eax
je case.0x42c286.82
mov esi, 1
jmp 0x42c1b0
cmp byte [0x4e57bc], 0
je case.0x42c286.89
test esi, esi
je case.0x42c286.78
jmp case.0x42c286.89
cmp byte [0x4e57bc], 0
jne case.0x42c286.78
cmp byte [0x4da61c], 0
je case.0x42c286.78
mov ecx, dword [0x4ca4e8]
mov eax, dword [ecx + 0x1c]
xor esi, esi
test eax, eax
je 0x42c31f
cmp eax, 0xb
jne 0x42c322
mov esi, dword [ecx + 0x24]
push 0x4daa1c
push 0x4da61c
call fcn.0042fc80
test al, al
jne 0x42c3b9
cmp byte [0x4e5853], al
push esi
sete cl
movzx edx, cl
push edx
push 0x4daa1c
push 0x4da61c
call fcn.00430520
test eax, eax
je 0x42c3b9
push 1
push 0x4daa1c
push 0x4da61c
call fcn.00430590
cmp byte [0x4e5853], 0
push esi
sete al
movzx ecx, al
push ecx
push 0x4daa1c
push 0x4da61c
call fcn.00430520
test eax, eax
je 0x42c3b9
push 0x4db21c
push 0x1f7
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 0xc
mov ecx, 0x4c93ac
call fcn.00428050
jmp case.0x42c286.78
movzx esi, word [0x4da558]
movzx edx, word [0x4da556]
shl esi, 0x10
lea ecx, [esp + 0x80]
or esi, edx
call fcn.004680f0
push esi
lea ecx, [esp + 0x84]
call fcn.00467f70
push 0
push 0
lea eax, [esp + 0x88]
push eax
push 0x4daa1c
push 0x4da61c
call fcn.004307e0
push 0x4daa1c
push 0x4da61c
lea ecx, [esp + 0xac]
call fcn.00465650
push esi
lea ecx, [esp + 0x60]
call fcn.00466da0
jmp case.0x42c286.78
mov dword [0x4e579c], 1
mov ecx, dword [0x4ca4e8]
test byte [ecx + 0x28], 1
je 0x42c48e
call fcn.0046d610
test eax, eax
je 0x42c48e
cmp eax, 1
jne 0x42c475
cmp dword [0x4c9880], 0
jne 0x42c46f
push 0x4db21c
push 0x1fb
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 0xc
inc dword [esp + 0x40]
jmp case.0x42c286.78
cmp eax, dword [esp + 0x14]
jle 0x42c47f
mov dword [esp + 0x14], eax
push 0x4db21c
push 0x1fb
jmp 0x42bf3c
mov dword [0x4da5ec], 0
call fcn.0042afc0
test eax, eax
je case.0x42c286.78
cmp eax, dword [esp + 0x14]
jle 0x42c4ab
mov dword [esp + 0x14], eax
cmp dword [0x4da5ec], 1
jg 0x42c60c
mov eax, dword [esp + 0x1c]
inc eax
cmp eax, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
jl 0x42bb80
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
mov ecx, dword [0x4da518]
push 0
push edx
push eax
call fcn.0042f3d0
mov ecx, dword [0x4da518]
call fcn.0042ecc0
mov ecx, dword [0x4da4f4]
push 0x2000
push ecx
mov dword [0x4da528], eax
mov dword [0x4da52c], edx
call fcn.00431f80
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
inc dword [esp + 0x3c]
cmp dword [esp + 0x18], 0
mov dword [0x4da4f8], edx
mov dword [0x4da500], eax
mov dword [0x4da504], ecx
je 0x42b6c2
xor ebx, ebx
push 0x400
lea edx, [esp + 0x298]
push edx
lea eax, [esp + 0xf90]
push eax
lea ecx, [esp + 0xb0]
call fcn.00465970
test al, al
je 0x42c5c2
mov esi, dword [esp + 0x5c]
mov edi, dword [esi]
lea ecx, [esp + 0x80]
call fcn.004680f0
push edi
lea ecx, [esp + 0x84]
call fcn.00467f70
push ebx
push ebx
lea ecx, [esp + 0x88]
push ecx
lea edx, [esp + 0x2a0]
push edx
lea eax, [esp + 0xf98]
push eax
call fcn.004307e0
push 0x400
lea ecx, [esp + 0x298]
push ecx
lea edx, [esp + 0xf90]
push edx
lea ecx, [esp + 0xb0]
add esi, 4
call fcn.00465970
test al, al
jne 0x42c560
cmp dword [0x4dc1c0], ebx
jne 0x42c672
cmp dword [esp + 0x58], ebx
je 0x42c672
cmp byte [0x4db69c], 0
jne 0x42c672
push 0x2ad
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
mov edi, dword [esp + 0x1c]
add esp, 8
cmp edi, ebx
jne 0x42c676
mov edi, 1
jmp 0x42c676
mov byte [esp + 0x1394], 2
lea ecx, [esp + 0xa4]
call fcn.00465560
mov byte [esp + 0x1394], 1
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42c639
push eax
call fcn.0049e37d
add esp, 4
mov byte [esp + 0x1394], 0
lea ecx, [esp + 0x19c]
call fcn.00465560
mov dword [esp + 0x1394], 0xffffffff
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42c669
push eax
call fcn.0049e37d
add esp, 4
mov eax, dword [esp + 0x14]
jmp 0x42c753
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x40]
mov ebx, dword [esp + 0x44]
movzx esi, bp
inc ebx
cmp ebx, esi
jne 0x42c6a7
cmp byte [0x4e69c3], 0x49
je 0x42c6a7
push 0x344
call fcn.0045be10
push eax
push 0x4e75f4
call fcn.0048d240
add esp, 8
test ebx, ebx
jne 0x42c6c2
cmp edi, 1
jg 0x42c6c2
xor ax, ax
cmp ax, word [esp + 0x2c]
sbb edi, edi
and edi, 0x46
add edi, 0xb
jmp 0x42c6f4
cmp ebx, esi
jne 0x42c6d2
cmp edi, 1
jg 0x42c6d2
mov edi, 0x52
jmp 0x42c6f4
cmp word [esp + 0x2c], 0
jbe 0x42c6e6
cmp edi, 1
jg 0x42c6e6
mov edi, 0x51
jmp 0x42c6f4
test bp, bp
jbe 0x42c6f4
test edi, edi
jne 0x42c6f4
mov edi, 1
mov byte [esp + 0x1394], 2
lea ecx, [esp + 0xa4]
call fcn.00465560
mov byte [esp + 0x1394], 1
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42c721
push eax
call fcn.0049e37d
add esp, 4
mov byte [esp + 0x1394], 0
lea ecx, [esp + 0x19c]
call fcn.00465560
mov dword [esp + 0x1394], 0xffffffff
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42c751
push eax
call fcn.0049e37d
add esp, 4
mov eax, edi
mov ecx, dword [esp + 0x138c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1374]
xor ecx, esp
call fcn.0049e626
add esp, 0x1384
ret