Function at 0x42c37a
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 [0x4f673a], bl
jne 0x42c465
call fcn.00434630
test eax, eax
je 0x42c3c9
push esi
push 0x4e8d1c
push 0x4e891c
call fcn.00432370
call fcn.00434630
test eax, eax
je 0x42c3c9
push 0x4e8d1c
push 0x4e891c
push 0x4f907c
push 0x4f8c7c
mov ecx, 0x4d76b4
call fcn.00429500
push 0x4e891c
call fcn.00452b60
test al, al
je 0x42c2df
mov eax, 0x34
jmp 0x42c894
push 0x456
call fcn.004612e0
push eax
push 0x4f907c
call fcn.00493af0
push 0x3ff
lea eax, [esp + 0x3c]
push 0x4e891c
push eax
call fcn.004a6510
add esp, 0x14
push esi
push 0x4e891c
mov byte [esp + 0x437], bl
call fcn.00452bf0
push ebx
push 0x4e891c
call fcn.00431720
test al, al
je case.0x42c36b.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.0040af50
movsx eax, al
add eax, 0xffffffbf
cmp eax, 0x11
ja case.0x42c36b.66
movzx edx, byte [eax + 0x42c8c0]
jmp dword [edx*4 + 0x42c8b0]
mov dword [0x4f65f4], esi
jmp case.0x42c36b.66
xor eax, eax
mov word [0x4e8d1c], ax
push esi
push ebx
push 0x4e891c
call fcn.00432370
call fcn.00434630
test eax, eax
jne case.0x42c36b.67
push 0x4e891c
call fcn.0046ad80
push eax
lea ecx, [esp + 0x34]
push ecx
call fcn.0046ad80
push eax
push 0x4ae
call fcn.004612e0
push eax
push 0x4f907c
call fcn.00493af0
add esp, 0x10
cmp byte [0x4f673a], bl
jne 0x42c465
mov edi, dword [0x4d7bcc]
mov esi, dword [0x4d7bc8]
push ebx
push 0x800
push edi
push esi
call fcn.004a5f60
cmp edx, dword [0x4d7bc4]
jg 0x42c465
jl 0x42c400
cmp eax, dword [0x4d7bc0]
jae 0x42c465
cmp edi, ebx
jl 0x42c431
jg 0x42c40e
cmp esi, 0x5f5e100
jbe 0x42c431
mov ecx, dword [0x4e8818]
call fcn.00430600
cmp edx, dword [0x4d7bc4]
jl 0x42c465
jg 0x42c42b
cmp eax, dword [0x4d7bc0]
jbe 0x42c465
mov esi, dword [0x4d7bc8]
mov edx, dword [0x4e8904]
push ebx
push esi
push edx
call fcn.004a6b7e
mov eax, dword [0x4e8904]
add esp, 0xc
push eax
call fcn.00432030
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov ecx, dword [0x4e8904]
push ebx
push ebx
push ecx
call fcn.004a6b7e
add esp, 0xc
call fcn.00433c70
mov cx, word [0x4e8854]
movzx eax, cx
cmp eax, 9
ja case.0x42c484.2
movzx edx, byte [eax + 0x42c8e8]
jmp dword [edx*4 + 0x42c8d4]
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 0x42c4cd
jg 0x42c4bb
cmp dword [0x4e8800], ebx
jb 0x42c4cd
mov ecx, dword [0x4e87f8]
movzx eax, byte [ecx]
inc ecx
mov dword [0x4e87f8], ecx
jmp 0x42c4d2
call fcn.00433f00
cmp eax, 0xffffffff
je 0x42c560
cmp dword [0x4e88ec], ebx
jne 0x42c560
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 0x42c4a0
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.00409960
call fcn.00447090
cmp byte [0x4eac4c], bl
jne 0x42c560
mov edx, dword [0x4e8918]
push ebx
push edx
push 0x4d87ec
call fcn.004347a0
jmp 0x42c48f
mov eax, dword [0x4e8918]
cmp eax, ebx
je 0x42c604
push ebx
push eax
push 0x4d87ec
call fcn.004347a0
jmp 0x42c604
call fcn.0047a9b0
jmp 0x42c5ef
call fcn.0042a560
cmp eax, ebx
je 0x42c5a4
cmp eax, 5
je 0x42c5a9
xor edx, edx
cmp eax, 3
sete dl
lea edx, [edx*4 + 2]
mov ebp, edx
cmp eax, 5
jne 0x42c604
mov ecx, dword [0x4d7bd0]
xor eax, eax
cmp eax, dword [0x4e8864]
jg 0x42c5d3
jl 0x42c5c3
cmp ecx, dword [0x4e8860]
ja 0x42c5d3
mov eax, 1
neg eax
sbb eax, eax
add eax, 2
mov ebp, eax
jmp 0x42c604
xor eax, eax
neg eax
sbb eax, eax
add eax, 2
mov ebp, eax
jmp 0x42c604
xor eax, eax
cmp cx, 9
sete al
push eax
call fcn.00438f30
cmp eax, ebx
je 0x42c604
xor ecx, ecx
cmp eax, 3
sete cl
lea ecx, [ecx*4 + 2]
mov ebp, ecx
mov cl, byte [0x4f673a]
xor bl, bl
cmp byte [0x4eac4c], bl
je 0x42c61a
test cl, cl
jne 0x42c61a
mov bl, 1
mov eax, dword [0x4e88ec]
xor edi, edi
cmp eax, edi
je 0x42c665
cmp eax, 1
jle 0x42c65e
cmp byte [0x4f6650], 0
jne 0x42c639
test cl, cl
jne 0x42c639
mov bl, 1
push 0x4e8d1c
push 0x4e891c
push 0x4f907c
push 0x4f8c7c
mov ecx, 0x4d76b4
call fcn.00429650
mov ebp, 0x32
jmp 0x42c674
mov ebp, 1
jmp 0x42c674
cmp ebp, 6
jne 0x42c674
mov ecx, 0x4d76b4
call fcn.00428df0
cmp byte [0x4e99a5], 0
je 0x42c764
push 0x4e99ac
lea edx, [esp + 0x24]
push edx
call fcn.004313a0
mov eax, dword [0x4d7bc0]
and eax, dword [0x4d7bc4]
cmp eax, 0xffffffff
jne 0x42c6ac
mov dword [0x4d7bc0], edi
mov dword [0x4d7bc4], edi
call fcn.00433be0
add dword [0x4d7bc0], 0xa
adc dword [0x4d7bc4], edi
call fcn.00433c70
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 0x42c701
jg 0x42c6eb
cmp dword [0x4e8800], edi
jb 0x42c701
mov ecx, dword [0x4e87f8]
movzx dx, byte [ecx]
inc ecx
movzx eax, dx
mov dword [0x4e87f8], ecx
jmp 0x42c709
call fcn.00433f00
movzx eax, ax
mov byte [esp + esi + 0x10], al
inc esi
cmp esi, 0xa
jl 0x42c6d0
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 0x42c7a3
sub edx, 4
add eax, 4
add ecx, 4
cmp edx, 4
jae 0x42c730
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c7a3
mov al, byte [eax + 1]
cmp al, byte [ecx + 1]
jne 0x42c7a3
cmp byte [0x4e99a5], 0
je 0x42c764
cmp byte [0x4e99a6], 0
je 0x42c774
mov ecx, dword [0x4e87f0]
not ecx
cmp ecx, dword [0x4e885c]
jne 0x42c7a3
cmp byte [0x4f673a], 0
je 0x42c80a
mov eax, dword [0x4e8838]
test eax, eax
je 0x42c801
movzx edx, word [0x4e8872]
push edx
call fcn.0042c0d0
cmp eax, ebp
jle 0x42c801
mov ebp, eax
jmp 0x42c801
cmp ebp, 1
jle 0x42c7ad
cmp ebp, 2
jne 0x42c7e8
mov eax, dword [0x4d87e8]
test byte [eax + 0x28], 1
push 0x4e951c
je 0x42c7ca
call fcn.0046ad80
push eax
push 0x1f8
jmp 0x42c7d5
call fcn.0046ad80
push eax
push 0x1f9
call fcn.004612e0
push eax
push 0x4f907c
call fcn.00493af0
add esp, 0xc
cmp byte [0x4f6650], 0
jne 0x42c7fc
cmp byte [0x4f673a], 0
jne 0x42c7fc
mov bl, 1
mov ebp, 2
cmp byte [0x4f673a], 0
jne 0x42c82f
test ebp, ebp
je 0x42c821
mov ecx, dword [0x4e8904]
push ecx
call fcn.00432030
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp byte [0x4f673a], 0
jne 0x42c82f
call fcn.0047c080
test bl, bl
je 0x42c842
push 0x4e8d1c
push 0x4e891c
call fcn.00431a10
call fcn.00433be0
mov eax, ebp
jmp 0x42c894
push 0x4e951c
call fcn.0046ad80
push eax
push 0x342
call fcn.004612e0
push eax
push 0x4f907c
call fcn.00493af0
add esp, 0xc
call fcn.00433be0
cmp byte [0x4f673a], bl
jne 0x42c88f
call fcn.0047c080
push 0x4e8d1c
push 0x4e891c
call fcn.00431a10
mov eax, 1
mov ecx, dword [esp + 0x430]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004a4bb3
add esp, 0x424
ret