Function at 0x40826c
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push esi
push ebx
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
add esp, 0xfffffff8
push esi
push 0x50
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
push 0x4b
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
push 1
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
push 2
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 1]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 2]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 3]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 4]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 5]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 6]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 7]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 8]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 9]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0xa]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0xb]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0xc]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0xd]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0xe]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0xf]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x10]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x11]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x12]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x13]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x14]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x15]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x16]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x17]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x18]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
mov eax, dword [ebx + 0x18]
shr eax, 8
movsx eax, al
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x20]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
mov eax, dword [ebx + 0x20]
shr eax, 8
movsx eax, al
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x24]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
mov eax, dword [ebx + 0x24]
shr eax, 8
movsx eax, al
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x28]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x29]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x2a]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x2b]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x30]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x31]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x32]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x33]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x34]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x35]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x36]
push eax
call sub.msvcrt.dll_putc
add esp, 0xfffffff8
push esi
movsx eax, byte [ebx + 0x37]
push eax
call sub.msvcrt.dll_putc
add esp, 0x20
push esi
push dword [ebx + 0x18]
push 1
push dword [ebx + 0x48]
call sub.msvcrt.dll_fwrite
add esp, 0x10
cmp eax, dword [ebx + 0x18]
jne 0x40858e
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x408576
push esi
push eax
push 1
push dword [ebx + 0x40]
call sub.msvcrt.dll_fwrite
add esp, 0x10
cmp eax, dword [ebx + 0x20]
jne 0x40858e
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x408598
push esi
push eax
push 1
push dword [ebx + 0x44]
call sub.msvcrt.dll_fwrite
cmp eax, dword [ebx + 0x24]
je 0x408598
mov eax, 0xa
jmp 0x40859a
xor eax, eax
lea esp, [ebp - 0x18]
pop ebx
pop esi
leave
ret