Function at 0x42aca0
Capabilities:
Clear file content

Disassembly:
sub esp, 0x424
mov eax, dword [0x4c0390]
xor eax, esp
mov dword [esp + 0x420], eax
push ebx
push ebp
xor ebx, ebx
push esi
xor ebp, ebp
push edi
mov dword [0x4da4c4], ebx
mov dword [0x4da4c0], ebx
mov dword [0x4da4c8], ebx
mov dword [0x4da5a8], 1
mov dword [0x4da4a8], 0xffffffff
cmp byte [0x4e585a], bl
jne 0x42ae58
call fcn.004324d0
test eax, eax
je 0x42adbc
push 1
push 0x4da9d4
push 0x4da5d4
call fcn.00430250
call fcn.004324d0
test eax, eax
je 0x42adbc
push 0x4da5d4
push 0x4e758c
mov ecx, 0x4c9364
call fcn.00428130
push 0x4da5d4
call fcn.0044e630
test al, al
je 0x42ad45
mov eax, 0x34
jmp 0x42b26e
push 0x456
call fcn.0045bde0
push eax
push 0x4e758c
call fcn.00445390
push 0x3ff
lea eax, [esp + 0x3c]
push 0x4da5d4
push eax
call fcn.0049f290
add esp, 0x14
push 1
push 0x4da5d4
mov byte [esp + 0x437], bl
call fcn.0044e6c0
push 1
push ebx
push 0x4da5d4
call fcn.00430250
call fcn.004324d0
test eax, eax
jne 0x42ad3b
push 0x4da5d4
lea ecx, [esp + 0x34]
push ecx
push 0x4ae
call fcn.0045bde0
push eax
push 0x4e758c
call fcn.00445390
add esp, 0x10
cmp byte [0x4e585a], bl
jne 0x42ae58
mov edi, dword [0x4c987c]
mov esi, dword [0x4c9878]
push ebx
push 0x800
push edi
push esi
call fcn.0049ede0
cmp edx, dword [0x4c9874]
jg 0x42ae58
jl 0x42adf3
cmp eax, dword [0x4c9870]
jae 0x42ae58
cmp edi, ebx
jl 0x42ae24
jg 0x42ae01
cmp esi, 0x5f5e100
jbe 0x42ae24
mov ecx, dword [0x4da4d0]
call fcn.0042ea60
cmp edx, dword [0x4c9874]
jl 0x42ae58
jg 0x42ae1e
cmp eax, dword [0x4c9870]
jbe 0x42ae58
mov esi, dword [0x4c9878]
mov edx, dword [0x4da5bc]
push ebx
push esi
push edx
call fcn.0049fca5
mov eax, dword [0x4da5bc]
add esp, 0xc
push eax
call fcn.004301c0
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov ecx, dword [0x4da5bc]
push ebx
push ebx
push ecx
call fcn.0049fca5
add esp, 0xc
call fcn.00431ba0
mov cx, word [0x4da50c]
movzx eax, cx
cmp eax, 9
ja case.0x42ae77.2
movzx edx, byte [eax + 0x42b29c]
jmp dword [edx*4 + 0x42b288]
xor esi, esi
xor edi, edi
mov dword [0x4da5d0], ebx
mov dword [0x4da5cc], 0x4ca4a4
jmp 0x42aea0
or eax, 0xffffffff
add dword [0x4da4b8], eax
adc dword [0x4da4bc], eax
js 0x42aecd
jg 0x42aebb
cmp dword [0x4da4b8], ebx
jb 0x42aecd
mov ecx, dword [0x4da4b0]
movzx eax, byte [ecx]
inc ecx
mov dword [0x4da4b0], ecx
jmp 0x42aed2
call fcn.00431e00
cmp eax, 0xffffffff
je 0x42af5c
cmp dword [0x4da5a4], ebx
jne 0x42af5c
mov ecx, dword [0x4da5cc]
mov byte [ecx], al
mov eax, dword [0x4da5d0]
inc dword [0x4da5cc]
inc eax
mov dword [0x4da5d0], eax
cmp eax, 0x10000
jne 0x42aea0
mov edx, dword [0x4da4dc]
push edx
add esi, eax
mov eax, dword [0x4da4d8]
push eax
mov eax, dword [0x4ca4a0]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [0x4c987c]
adc edi, ebx
add ecx, esi
adc edx, edi
push edx
push ecx
mov ecx, dword [0x4c9878]
push eax
push ecx
push edi
push esi
call fcn.00409560
call fcn.004458e0
cmp dword [0x4dc178], ebx
jne 0x42af5c
mov edx, dword [0x4da5d0]
push ebx
push edx
push 0x4ca4a4
call fcn.00432640
jmp 0x42ae82
mov eax, dword [0x4da5d0]
cmp eax, ebx
je 0x42b000
push ebx
push eax
push 0x4ca4a4
call fcn.00432640
jmp 0x42b000
call fcn.004745b0
jmp 0x42afeb
call fcn.00429160
cmp eax, ebx
je 0x42afa0
cmp eax, 5
je 0x42afa5
xor edx, edx
cmp eax, 3
sete dl
lea edx, [edx*4 + 2]
mov ebp, edx
cmp eax, 5
jne 0x42b000
mov ecx, dword [0x4c9880]
xor eax, eax
cmp eax, dword [0x4da51c]
jg 0x42afcf
jl 0x42afbf
cmp ecx, dword [0x4da518]
ja 0x42afcf
mov eax, 1
neg eax
sbb eax, eax
add eax, 2
mov ebp, eax
jmp 0x42b000
xor eax, eax
neg eax
sbb eax, eax
add eax, 2
mov ebp, eax
jmp 0x42b000
xor eax, eax
cmp cx, 9
sete al
push eax
call fcn.00436cc0
cmp eax, ebx
je 0x42b000
xor ecx, ecx
cmp eax, 3
sete cl
lea ecx, [ecx*4 + 2]
mov ebp, ecx
mov cl, byte [0x4e585a]
xor edi, edi
xor bl, bl
cmp dword [0x4dc178], edi
je 0x42b018
test cl, cl
jne 0x42b018
mov bl, 1
mov eax, dword [0x4da5a4]
cmp eax, edi
je 0x42b057
cmp eax, 1
jle 0x42b050
cmp byte [0x4e57a0], 0
jne 0x42b035
test cl, cl
jne 0x42b035
mov bl, 1
push 0x4da5d4
push 0x4e758c
mov ecx, 0x4c9364
call fcn.00428250
mov ebp, 0x32
jmp 0x42b066
mov ebp, 1
jmp 0x42b066
cmp ebp, 6
jne 0x42b066
mov ecx, 0x4c9364
call fcn.004280d0
cmp byte [0x4db65d], 0
je 0x42b154
push 0x4db664
lea edx, [esp + 0x24]
push edx
call fcn.0042f760
mov eax, dword [0x4c9870]
and eax, dword [0x4c9874]
cmp eax, 0xffffffff
jne 0x42b09e
mov dword [0x4c9870], edi
mov dword [0x4c9874], edi
call fcn.00431b10
add dword [0x4c9870], 0xa
adc dword [0x4c9874], edi
call fcn.00431ba0
mov eax, dword [0x4ca4a0]
and dword [eax + 0x28], 0xfffffffe
xor esi, esi
or eax, 0xffffffff
add dword [0x4da4b8], eax
adc dword [0x4da4bc], eax
js 0x42b0f1
jg 0x42b0db
cmp dword [0x4da4b8], edi
jb 0x42b0f1
mov ecx, dword [0x4da4b0]
movzx dx, byte [ecx]
inc ecx
movzx eax, dx
mov dword [0x4da4b0], ecx
jmp 0x42b0f9
call fcn.00431e00
movzx eax, ax
mov byte [esp + esi + 0x10], al
inc esi
cmp esi, 0xa
jl 0x42b0c0
mov eax, dword [0x4ca4a0]
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 0x42b18f
sub edx, 4
add eax, 4
add ecx, 4
cmp edx, 4
jae 0x42b120
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42b18f
mov al, byte [eax + 1]
cmp al, byte [ecx + 1]
jne 0x42b18f
cmp byte [0x4db65d], 0
je 0x42b154
cmp byte [0x4db65e], 0
je 0x42b164
mov ecx, dword [0x4da4a8]
not ecx
cmp ecx, dword [0x4da514]
jne 0x42b18f
cmp byte [0x4e585a], 0
je 0x42b1ea
mov eax, dword [0x4da4f0]
test eax, eax
je 0x42b1e1
movzx edx, word [0x4da52a]
push edx
call fcn.0042ab50
cmp eax, ebp
jle 0x42b1e1
mov ebp, eax
jmp 0x42b1e1
cmp ebp, 1
jle 0x42b199
cmp ebp, 2
jne 0x42b1c8
mov eax, dword [0x4ca4a0]
test byte [eax + 0x28], 1
push 0x4db1d4
je 0x42b1b0
push 0x1f8
jmp 0x42b1b5
push 0x1f9
call fcn.0045bde0
push eax
push 0x4e758c
call fcn.00445390
add esp, 0xc
cmp byte [0x4e57a0], 0
jne 0x42b1dc
cmp byte [0x4e585a], 0
jne 0x42b1dc
mov bl, 1
mov ebp, 2
cmp byte [0x4e585a], 0
jne 0x42b20f
test ebp, ebp
je 0x42b201
mov ecx, dword [0x4da5bc]
push ecx
call fcn.004301c0
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp byte [0x4e585a], 0
jne 0x42b20f
call fcn.00475b10
test bl, bl
je 0x42b222
push 0x4da9d4
push 0x4da5d4
call fcn.0042fd00
call fcn.00431b10
mov eax, ebp
jmp 0x42b26e
push 0x4db1d4
push 0x342
call fcn.0045bde0
push eax
push 0x4e758c
call fcn.00445390
add esp, 0xc
call fcn.00431b10
cmp byte [0x4e585a], bl
jne 0x42b269
call fcn.00475b10
push 0x4da9d4
push 0x4da5d4
call fcn.0042fd00
mov eax, 1
mov ecx, dword [esp + 0x430]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049dea6
add esp, 0x424
ret