Function at 0x3a5cc8
Capabilities:
Clear file content

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd4
push ebx
push esi
xor edx, edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00305210
xor eax, eax
push ebp
push 0x3a6013
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x3b11b4]
mov byte [eax], 0
mov eax, dword [0xbb42b8]
mov eax, dword [eax + 0x2fc]
mov edx, dword [eax]
call dword [edx + 0xcc]
mov eax, dword [0xbb42b8]
mov ebx, dword [eax + 0x2fc]
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0xcc]
mov edx, eax
lea ecx, [ebp - 8]
mov eax, dword [ebx + 0x218]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 8]
call fcn.0038deac
xor ebx, ebx
mov bl, al
dec ebx
cmp ebx, 0xff
jbe 0x3a5d4e
call fcn.00303f30
mov eax, dword [ebp - 4]
call fcn.00305020
mov esi, eax
lea eax, [ebp - 4]
call fcn.00305278
dec esi
test eax, eax
je 0x3a5d6a
cmp esi, dword [eax - 4]
jb 0x3a5d6f
call fcn.00303f30
inc esi
mov edx, ebx
add dl, 0x30
mov byte [eax + esi - 1], dl
mov eax, dword [ebp - 4]
call fcn.0038d4e4
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 4]
call fcn.00305020
mov esi, eax
lea eax, [ebp - 4]
call fcn.00305278
dec esi
test eax, eax
je 0x3a5da3
cmp esi, dword [eax - 4]
jb 0x3a5da8
call fcn.00303f30
inc esi
mov byte [eax + esi - 1], 0x30
mov edx, dword [ebp - 4]
xor eax, eax
call fcn.0038d0c4
test eax, eax
jbe 0x3a5ff0
lea edx, [ebp - 0x18]
call fcn.0038f648
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
xor eax, eax
mov al, bl
xor edx, edx
cmp edx, dword [ebp - 0x1c]
jne 0x3a5de0
cmp eax, dword [ebp - 0x20]
jb 0x3a5e06
jmp 0x3a5de2
jl 0x3a5e06
xor eax, eax
mov al, bl
xor edx, edx
cmp edx, dword [ebp - 0x1c]
jne 0x3a5e1e
cmp eax, dword [ebp - 0x20]
jne 0x3a5e1e
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp - 0x24]
jne 0x3a5e04
cmp eax, dword [ebp - 0x28]
jbe 0x3a5e1e
jmp 0x3a5e06
jle 0x3a5e1e
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
xor eax, eax
mov al, bl
xor edx, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 4]
call fcn.00305020
mov esi, eax
lea eax, [ebp - 4]
call fcn.00305278
dec esi
test eax, eax
je 0x3a5e3a
cmp esi, dword [eax - 4]
jb 0x3a5e3f
call fcn.00303f30
inc esi
lea eax, [eax + esi - 1]
push eax
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
add eax, 0x30
adc edx, 0
pop edx
mov byte [edx], al
mov edx, 0x20
mov eax, dword [ebp - 4]
call fcn.003097c0
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.003095fc
mov esi, eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
xor edx, edx
mov eax, esi
call fcn.003096e4
test esi, esi
jns 0x3a5e88
call fcn.00303f30
push esi
call sub.kernel32.dll_SetEndOfFile_1
mov eax, esi
call fcn.0030971c
jmp 0x3a5ecb
mov eax, dword [ebp - 4]
call fcn.00305020
mov esi, eax
lea eax, [ebp - 4]
call fcn.00305278
dec esi
test eax, eax
je 0x3a5eb3
cmp esi, dword [eax - 4]
jb 0x3a5eb8
call fcn.00303f30
inc esi
mov edx, ebx
add dl, 0x30
mov byte [eax + esi - 1], dl
mov eax, dword [ebp - 4]
call fcn.003098dc
dec ebx
xor eax, eax
mov al, bl
xor edx, edx
cmp edx, dword [ebp - 0x1c]
jne 0x3a5edd
cmp eax, dword [ebp - 0x20]
ja 0x3a5e97
jmp 0x3a5edf
jg 0x3a5e97
mov eax, dword [ebp - 4]
call fcn.00305020
mov ebx, eax
lea eax, [ebp - 4]
call fcn.00305278
dec ebx
test eax, eax
je 0x3a5efb
cmp ebx, dword [eax - 4]
jb 0x3a5f00
call fcn.00303f30
inc ebx
lea eax, [eax + ebx - 1]
push eax
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
add eax, 0x30
adc edx, 0
pop edx
mov byte [edx], al
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
cmp edx, 0
jne 0x3a5f25
cmp eax, 0xff
jbe 0x3a5f2c
call fcn.00303f30
mov edx, eax
lea ecx, [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.00391400
lea eax, [ebp - 8]
call fcn.00305278
mov edx, 0x2c
dec edx
test eax, eax
je 0x3a5f50
cmp edx, dword [eax - 4]
jb 0x3a5f55
call fcn.00303f30
inc edx
lea eax, [eax + edx - 1]
push eax
lea eax, [ebp - 0xc]
call fcn.00305278
mov edx, 1
dec edx
test eax, eax
je 0x3a5f72
cmp edx, dword [eax - 4]
jb 0x3a5f77
call fcn.00303f30
inc edx
lea eax, [eax + edx - 1]
push eax
mov eax, dword [ebp - 0xc]
call fcn.00305020
mov ecx, eax
pop eax
pop edx
call fcn.003029fc
mov eax, dword [0xbb42b8]
mov ebx, dword [eax + 0x2fc]
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0xcc]
mov edx, eax
mov eax, dword [ebx + 0x218]
mov ecx, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x20]
lea eax, [ebp - 0x2c]
mov ecx, 0x3a6028
mov edx, dword [0x3b0e08]
call fcn.0030506c
mov eax, dword [ebp - 0x2c]
mov dl, 1
call fcn.00395d04
mov eax, dword [0xbb42b8]
mov ebx, dword [eax + 0x2fc]
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0xcc]
mov edx, eax
mov eax, ebx
mov cl, 1
call fcn.0033f900
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x3a601a
lea eax, [ebp - 0x2c]
call fcn.00304d60
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00304d84
ret