Function at 0x42c3ca
Capabilities:
Clear file content

Disassembly:
sub esp, 0x424
mov eax, dword [0x4cc3b0]
xor eax, esp
mov dword [esp + 0x420], eax
push ebx
push ebp
xor ebx, ebx
push esi
xor ebp, ebp
mov esi, 1
push edi
mov dword [0x4e880c], ebx
mov dword [0x4e8808], ebx
mov dword [0x4e8810], ebx
mov dword [0x4e88f0], esi
mov dword [0x4e87f0], 0xffffffff
cmp byte [0x4f66da], bl
jne 0x42c4b5
call fcn.00434680
test eax, eax
je 0x42c419
push esi
push 0x4e8d1c
push 0x4e891c
call fcn.004323c0
call fcn.00434680
test eax, eax
je 0x42c419
push 0x4e8d1c
push 0x4e891c
push 0x4f901c
push 0x4f8c1c
mov ecx, 0x4d76b4
call fcn.004294f0
push 0x4e891c
call fcn.00452bc0
test al, al
je 0x42c32f
mov eax, 0x34
jmp 0x42c8e4
push 0x456
call fcn.004611c0
push eax
push 0x4f901c
call fcn.00493840
push 0x3ff
lea eax, [esp + 0x3c]
push 0x4e891c
push eax
call fcn.004a6230
add esp, 0x14
push esi
push 0x4e891c
mov byte [esp + 0x437], bl
call fcn.00452c50
push ebx
push 0x4e891c
call fcn.00431770
test al, al
je case.0x42c3bb.66
movzx ecx, word [0x4e8858]
movzx edx, word [0x4e8856]
mov eax, dword [0x4d7bcc]
push ebx
shl ecx, 0x10
add ecx, edx
push ecx
mov ecx, dword [0x4d7bc8]
push eax
push ecx
push ebx
push 0x4e891c
call fcn.0040af70
movsx eax, al
add eax, 0xffffffbf
cmp eax, 0x11
ja case.0x42c3bb.66
movzx edx, byte [eax + 0x42c910]
jmp dword [edx*4 + 0x42c900]
mov dword [0x4f65c4], esi
jmp case.0x42c3bb.66
xor eax, eax
mov word [0x4e8d1c], ax
push esi
push ebx
push 0x4e891c
call fcn.004323c0
call fcn.00434680
test eax, eax
jne case.0x42c3bb.67
push 0x4e891c
call fcn.0046abc0
push eax
lea ecx, [esp + 0x34]
push ecx
call fcn.0046abc0
push eax
push 0x4ae
call fcn.004611c0
push eax
push 0x4f901c
call fcn.00493840
add esp, 0x10
cmp byte [0x4f66da], bl
jne 0x42c4b5
mov edi, dword [0x4d7bcc]
mov esi, dword [0x4d7bc8]
push ebx
push 0x800
push edi
push esi
call fcn.004a5c80
cmp edx, dword [0x4d7bc4]
jg 0x42c4b5
jl 0x42c450
cmp eax, dword [0x4d7bc0]
jae 0x42c4b5
cmp edi, ebx
jl 0x42c481
jg 0x42c45e
cmp esi, 0x5f5e100
jbe 0x42c481
mov ecx, dword [0x4e8818]
call fcn.00430650
cmp edx, dword [0x4d7bc4]
jl 0x42c4b5
jg 0x42c47b
cmp eax, dword [0x4d7bc0]
jbe 0x42c4b5
mov esi, dword [0x4d7bc8]
mov edx, dword [0x4e8904]
push ebx
push esi
push edx
call fcn.004a689e
mov eax, dword [0x4e8904]
add esp, 0xc
push eax
call fcn.00432080
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov ecx, dword [0x4e8904]
push ebx
push ebx
push ecx
call fcn.004a689e
add esp, 0xc
call fcn.00433cc0
mov cx, word [0x4e8854]
movzx eax, cx
cmp eax, 9
ja case.0x42c4d4.2
movzx edx, byte [eax + 0x42c938]
jmp dword [edx*4 + 0x42c924]
xor esi, esi
xor edi, edi
mov dword [0x4e8918], ebx
mov dword [0x4e8914], 0x4d87ec
nop
or eax, 0xffffffff
add dword [0x4e8800], eax
adc dword [0x4e8804], eax
js 0x42c51d
jg 0x42c50b
cmp dword [0x4e8800], ebx
jb 0x42c51d
mov ecx, dword [0x4e87f8]
movzx eax, byte [ecx]
inc ecx
mov dword [0x4e87f8], ecx
jmp 0x42c522
call fcn.00433f50
cmp eax, 0xffffffff
je 0x42c5b0
cmp dword [0x4e88ec], ebx
jne 0x42c5b0
mov ecx, dword [0x4e8914]
mov byte [ecx], al
mov eax, dword [0x4e8918]
inc dword [0x4e8914]
inc eax
mov dword [0x4e8918], eax
cmp eax, 0x10000
jne 0x42c4f0
mov edx, dword [0x4e8824]
push edx
add esi, eax
mov eax, dword [0x4e8820]
push eax
mov eax, dword [0x4d87e8]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [0x4d7bcc]
adc edi, ebx
add ecx, esi
adc edx, edi
push edx
push ecx
mov ecx, dword [0x4d7bc8]
push eax
push ecx
push edi
push esi
call fcn.00409970
call fcn.004470b0
cmp byte [0x4eac4c], bl
jne 0x42c5b0
mov edx, dword [0x4e8918]
push ebx
push edx
push 0x4d87ec
call fcn.004347f0
jmp 0x42c4df
mov eax, dword [0x4e8918]
cmp eax, ebx
je 0x42c654
push ebx
push eax
push 0x4d87ec
call fcn.004347f0
jmp 0x42c654
call fcn.0047a720
jmp 0x42c63f
call fcn.0042a560
cmp eax, ebx
je 0x42c5f4
cmp eax, 5
je 0x42c5f9
xor edx, edx
cmp eax, 3
sete dl
lea edx, [edx*4 + 2]
mov ebp, edx
cmp eax, 5
jne 0x42c654
mov ecx, dword [0x4d7bd0]
xor eax, eax
cmp eax, dword [0x4e8864]
jg 0x42c623
jl 0x42c613
cmp ecx, dword [0x4e8860]
ja 0x42c623
mov eax, 1
neg eax
sbb eax, eax
add eax, 2
mov ebp, eax
jmp 0x42c654
xor eax, eax
neg eax
sbb eax, eax
add eax, 2
mov ebp, eax
jmp 0x42c654
xor eax, eax
cmp cx, 9
sete al
push eax
call fcn.00438f90
cmp eax, ebx
je 0x42c654
xor ecx, ecx
cmp eax, 3
sete cl
lea ecx, [ecx*4 + 2]
mov ebp, ecx
mov cl, byte [0x4f66da]
xor bl, bl
cmp byte [0x4eac4c], bl
je 0x42c66a
test cl, cl
jne 0x42c66a
mov bl, 1
mov eax, dword [0x4e88ec]
xor edi, edi
cmp eax, edi
je 0x42c6b5
cmp eax, 1
jle 0x42c6ae
cmp byte [0x4f6620], 0
jne 0x42c689
test cl, cl
jne 0x42c689
mov bl, 1
push 0x4e8d1c
push 0x4e891c
push 0x4f901c
push 0x4f8c1c
mov ecx, 0x4d76b4
call fcn.00429640
mov ebp, 0x32
jmp 0x42c6c4
mov ebp, 1
jmp 0x42c6c4
cmp ebp, 6
jne 0x42c6c4
mov ecx, 0x4d76b4
call fcn.00428de0
cmp byte [0x4e99a5], 0
je 0x42c7b4
push 0x4e99ac
lea edx, [esp + 0x24]
push edx
call fcn.004313f0
mov eax, dword [0x4d7bc0]
and eax, dword [0x4d7bc4]
cmp eax, 0xffffffff
jne 0x42c6fc
mov dword [0x4d7bc0], edi
mov dword [0x4d7bc4], edi
call fcn.00433c30
add dword [0x4d7bc0], 0xa
adc dword [0x4d7bc4], edi
call fcn.00433cc0
mov eax, dword [0x4d87e8]
and dword [eax + 0x28], 0xfffffffe
xor esi, esi
mov edi, edi
or eax, 0xffffffff
add dword [0x4e8800], eax
adc dword [0x4e8804], eax
js 0x42c751
jg 0x42c73b
cmp dword [0x4e8800], edi
jb 0x42c751
mov ecx, dword [0x4e87f8]
movzx dx, byte [ecx]
inc ecx
movzx eax, dx
mov dword [0x4e87f8], ecx
jmp 0x42c759
call fcn.00433f50
movzx eax, ax
mov byte [esp + esi + 0x10], al
inc esi
cmp esi, 0xa
jl 0x42c720
mov eax, dword [0x4d87e8]
or dword [eax + 0x28], 1
mov edx, 0xa
lea eax, [esp + 0x20]
lea ecx, [esp + 0x10]
lea esp, [esp]
mov esi, dword [ecx]
cmp esi, dword [eax]
jne 0x42c7f3
sub edx, 4
add eax, 4
add ecx, 4
cmp edx, 4
jae 0x42c780
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c7f3
mov al, byte [eax + 1]
cmp al, byte [ecx + 1]
jne 0x42c7f3
cmp byte [0x4e99a5], 0
je 0x42c7b4
cmp byte [0x4e99a6], 0
je 0x42c7c4
mov ecx, dword [0x4e87f0]
not ecx
cmp ecx, dword [0x4e885c]
jne 0x42c7f3
cmp byte [0x4f66da], 0
je 0x42c85a
mov eax, dword [0x4e8838]
test eax, eax
je 0x42c851
movzx edx, word [0x4e8872]
push edx
call fcn.0042c120
cmp eax, ebp
jle 0x42c851
mov ebp, eax
jmp 0x42c851
cmp ebp, 1
jle 0x42c7fd
cmp ebp, 2
jne 0x42c838
mov eax, dword [0x4d87e8]
test byte [eax + 0x28], 1
push 0x4e951c
je 0x42c81a
call fcn.0046abc0
push eax
push 0x1f8
jmp 0x42c825
call fcn.0046abc0
push eax
push 0x1f9
call fcn.004611c0
push eax
push 0x4f901c
call fcn.00493840
add esp, 0xc
cmp byte [0x4f6620], 0
jne 0x42c84c
cmp byte [0x4f66da], 0
jne 0x42c84c
mov bl, 1
mov ebp, 2
cmp byte [0x4f66da], 0
jne 0x42c87f
test ebp, ebp
je 0x42c871
mov ecx, dword [0x4e8904]
push ecx
call fcn.00432080
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp byte [0x4f66da], 0
jne 0x42c87f
call fcn.0047bdf0
test bl, bl
je 0x42c892
push 0x4e8d1c
push 0x4e891c
call fcn.00431a60
call fcn.00433c30
mov eax, ebp
jmp 0x42c8e4
push 0x4e951c
call fcn.0046abc0
push eax
push 0x342
call fcn.004611c0
push eax
push 0x4f901c
call fcn.00493840
add esp, 0xc
call fcn.00433c30
cmp byte [0x4f66da], bl
jne 0x42c8df
call fcn.0047bdf0
push 0x4e8d1c
push 0x4e891c
call fcn.00431a60
mov eax, 1
mov ecx, dword [esp + 0x430]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004a48d3
add esp, 0x424
ret