Function at 0x40488c
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
push edi
xor edx, edx
push ebp
push 0x404ae4
push dword fs:[edx]
mov dword fs:[edx], esp
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 8], eax
call fcn.00403f68
push ebp
call fcn.00404858
pop ecx
xor edx, edx
push ebp
push 0x404ad3
push dword fs:[edx]
mov dword fs:[edx], esp
jmp 0x404a61
push ebp
call fcn.00404700
pop ecx
movzx eax, ax
cmp byte [ebp - 1], 0
je 0x4048f0
call fcn.00402908
pop dword fs:[0]
add esp, 8
jmp 0x404aee
cmp eax, 0xff
jg 0x40496c
mov edx, dword [0x4085b4]
mov ecx, dword [ebp - 8]
mov byte [edx + ecx], al
inc dword [ebp - 0xc]
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
cmp eax, dword [0x4085b8]
jl 0x404a61
push 0
lea eax, [ebp - 8]
push eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [0x4085b4]
push eax
mov eax, dword [0x408618]
push eax
call sub.kernel32.dll_WriteFile_1
cmp byte [0x40859e], 0x10
jne 0x404950
mov ecx, 0x40860c
mov edx, dword [ebp - 8]
mov eax, dword [0x4085b4]
call fcn.00403908
jmp 0x404962
mov ecx, 0x408604
mov edx, dword [ebp - 8]
mov eax, dword [0x4085b4]
call fcn.004038e4
xor eax, eax
mov dword [ebp - 8], eax
jmp 0x404a61
mov esi, eax
sub esi, 0xfd
add dword [ebp - 0xc], esi
push ebp
call fcn.004047c4
pop ecx
movzx ebx, ax
mov eax, dword [ebp - 8]
sub eax, ebx
dec eax
mov ebx, eax
test ebx, ebx
jge 0x404993
add ebx, dword [0x4085b8]
cmp ebx, dword [ebp - 8]
jge 0x4049d3
mov eax, dword [0x4085b8]
sub eax, 0x100
dec eax
cmp eax, dword [ebp - 8]
jle 0x4049d3
dec esi
test esi, esi
jl 0x404a61
mov eax, dword [0x4085b4]
mov edx, dword [ebp - 8]
mov ecx, dword [0x4085b4]
mov cl, byte [ecx + ebx]
mov byte [eax + edx], cl
dec esi
inc dword [ebp - 8]
inc ebx
test esi, esi
jge 0x4049b1
jmp 0x404a61
dec esi
test esi, esi
jl 0x404a61
mov eax, dword [0x4085b4]
mov edx, dword [ebp - 8]
mov ecx, dword [0x4085b4]
mov cl, byte [ecx + ebx]
mov byte [eax + edx], cl
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
cmp eax, dword [0x4085b8]
jl 0x404a4d
push 0
lea eax, [ebp - 8]
push eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [0x4085b4]
push eax
mov eax, dword [0x408618]
push eax
call sub.kernel32.dll_WriteFile_1
cmp byte [0x40859e], 0x10
jne 0x404a36
mov ecx, 0x40860c
mov edx, dword [ebp - 8]
mov eax, dword [0x4085b4]
call fcn.00403908
jmp 0x404a48
mov ecx, 0x408604
mov edx, dword [ebp - 8]
mov eax, dword [0x4085b4]
call fcn.004038e4
xor eax, eax
mov dword [ebp - 8], eax
dec esi
inc ebx
cmp ebx, dword [0x4085b8]
jl 0x404a59
xor ebx, ebx
test esi, esi
jge 0x4049dc
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x4085e3]
jl 0x4048cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x404ada
cmp dword [ebp - 8], 0
jle 0x404acd
push 0
lea eax, [ebp - 8]
push eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [0x4085b4]
push eax
mov eax, dword [0x408618]
push eax
call sub.kernel32.dll_WriteFile_1
cmp byte [0x40859e], 0x10
jne 0x404abb
mov ecx, 0x40860c
mov edx, dword [ebp - 8]
mov eax, dword [0x4085b4]
call fcn.00403908
jmp 0x404acd
mov ecx, 0x408604
mov edx, dword [ebp - 8]
mov eax, dword [0x4085b4]
call fcn.004038e4
call fcn.00404024
ret
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret