Function at 0x401da7
Capabilities:
Clear file content

Disassembly:
push ecx
push ecx
or dword [0x421b50], 0xffffffff
push ebx
push ebp
xor ebx, ebx
xor ebp, ebp
inc ebp
push esi
push edi
mov dword [esp + 0x14], ebx
mov dword [0x421b6c], ebx
mov dword [0x421b68], ebx
mov dword [0x421b70], ebx
mov dword [0x421c60], ebp
cmp byte [0x42edc2], bl
jne 0x401eb5
call fcn.004049c9
mov edi, 0x421c8c
test eax, eax
je 0x401e1d
push ebp
push edi
call fcn.00403e9d
call fcn.004049c9
test eax, eax
je 0x401e1d
push edi
push ebx
push 0x4306da
push 0x4302da
mov ecx, 0x42bfb8
call fcn.00401b53
push 0x34
pop eax
jmp 0x402162
cmp byte [0x42edc2], bl
jne 0x401eba
mov esi, dword [0x41092c]
push ebx
push 0x800
push esi
push dword [0x410928]
call fcn.00401070
cmp edx, dword [0x410924]
jg 0x401eba
jl 0x401e53
cmp eax, dword [0x410920]
jae 0x401eba
cmp esi, ebx
jl 0x401e82
jg 0x401e65
cmp dword [0x410928], 0x5f5e100
jbe 0x401e82
mov ecx, dword [0x421b78]
call fcn.00403aa2
cmp edx, dword [0x410924]
jl 0x401eba
jg 0x401e82
cmp eax, dword [0x410920]
jbe 0x401eba
push ebx
push dword [0x410928]
push dword [0x421c74]
call fcn.004096f4
push dword [0x421c74]
call fcn.00403e0d
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
push ebx
push ebx
push dword [0x421c74]
call fcn.004096f4
jmp 0x401eba
mov edi, 0x421c8c
call fcn.00404183
mov cx, word [0x421bc4]
movzx eax, cx
cmp eax, ebx
je 0x401f38
add eax, 0xfffffff8
cmp eax, ebp
ja 0x401f03
xor eax, eax
cmp cx, 9
sete al
push eax
call fcn.00406c46
cmp eax, ebx
je 0x402033
xor ecx, ecx
cmp eax, 3
sete cl
lea ecx, [ecx*4 + 2]
mov dword [esp + 0x14], ecx
jmp 0x402033
push edi
push 0x6c
call fcn.004094a7
push eax
push 0x4306da
call fcn.0040a81b
add esp, 0xc
call fcn.004040fb
cmp byte [0x42edc2], bl
jne 0x401f31
call fcn.0040dc43
push edi
call fcn.00403cc7
mov eax, ebp
jmp 0x402162
mov esi, 0x411b4c
mov dword [0x421c88], ebx
xor ebp, ebp
mov edi, 0x10000
mov dword [0x421c84], esi
add dword [0x421b60], 0xffffffff
adc dword [0x421b64], 0xffffffff
js 0x401f7b
jg 0x401f6b
cmp dword [0x421b60], 0
jb 0x401f7b
mov eax, dword [0x421b58]
movzx eax, byte [eax]
inc dword [0x421b58]
jmp 0x401f80
call fcn.00404440
cmp eax, 0xffffffff
je 0x402017
cmp dword [0x421c5c], 0
jne 0x402017
mov ecx, dword [0x421c84]
mov byte [ecx], al
inc dword [0x421c84]
inc dword [0x421c88]
cmp dword [0x421c88], edi
jne 0x401f50
push dword [0x421b8c]
mov ecx, dword [0x421b78]
push dword [0x421b88]
add ebp, edi
adc ebx, 0
call fcn.0040363d
add eax, dword [0x421b90]
adc edx, dword [0x421b94]
push edx
push eax
push dword [0x41092c]
push dword [0x410928]
push ebx
push ebp
call fcn.0040a878
call fcn.00409dd3
cmp byte [0x42ae72], 0
jne 0x402017
push 0
push dword [0x421c88]
push esi
call fcn.00404a3e
and dword [0x421c88], 0
jmp 0x401f4a
mov eax, dword [0x421c88]
test eax, eax
je 0x402029
push 0
push eax
push esi
call fcn.00404a3e
xor ebp, ebp
xor ebx, ebx
inc ebp
mov edi, 0x421c8c
cmp byte [0x42ae72], 0
mov cl, byte [0x42edc2]
mov byte [esp + 0x13], 0
je 0x402050
test cl, cl
jne 0x402050
mov byte [esp + 0x13], 1
mov eax, dword [0x421c5c]
mov esi, 0x4306da
cmp eax, ebx
je 0x402094
cmp eax, ebp
jle 0x402090
cmp byte [0x42ed60], 0
jne 0x402074
test cl, cl
jne 0x402074
mov byte [esp + 0x13], 1
push edi
push ebx
push esi
push 0x4302da
mov ecx, 0x42bfb8
call fcn.00401c1c
mov dword [esp + 0x14], 0x32
jmp 0x4020a5
mov dword [esp + 0x14], ebp
cmp dword [esp + 0x14], 6
jne 0x4020a5
mov ecx, 0x42bfb8
call fcn.0040191c
cmp byte [0x42252d], 0
je 0x4020b7
cmp byte [0x42252e], 0
je 0x4020c6
mov eax, dword [0x421b50]
not eax
cmp eax, dword [0x421bcc]
jne 0x4020d1
cmp byte [0x42edc2], 0
je 0x402126
jmp 0x40211d
cmp dword [esp + 0x14], 1
push 2
pop ebp
jle 0x4020e1
cmp dword [esp + 0x14], ebp
jne 0x402102
mov eax, dword [0x411b48]
test byte [eax + 0x40], 1
push edi
je 0x4020f1
push 0x70
jmp 0x4020f3
push 0x71
call fcn.004094a7
push eax
push esi
call fcn.0040a81b
add esp, 0xc
cmp byte [0x42ed60], 0
jne 0x402119
cmp byte [0x42edc2], 0
jne 0x402119
mov byte [esp + 0x13], 1
mov dword [esp + 0x14], ebp
cmp byte [0x42edc2], 0
jne 0x40214c
cmp dword [esp + 0x14], ebx
je 0x40213e
push dword [0x421c74]
call fcn.00403e0d
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp byte [0x42edc2], 0
jne 0x40214c
call fcn.0040dc43
cmp byte [esp + 0x13], 0
je 0x402159
push edi
call fcn.00403cc7
call fcn.004040fb
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebp
pop ebx
pop ecx
pop ecx
ret