Function at 0x401000
Capabilities:
Write file on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x2b0
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov eax, 0
mov dword [rbp - 4], eax
mov eax, 0
mov dword [rbp - 8], eax
mov eax, dword [rbp - 4]
add eax, 1
mov dword [rbp - 4], eax
shl rax, 3
mov rcx, qword [rbp + 0x18]
add rcx, rax
mov rax, qword [rcx]
cmp rax, 0
je 0x401052
mov eax, dword [rbp - 8]
mov rcx, rax
add eax, 1
mov dword [rbp - 8], eax
jmp 0x401023
mov eax, dword [rbp - 8]
cmp eax, 0
je 0x401063
jmp 0x4010b5
lea rax, str.Usage_examples:_n
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_printf
lea rax, str._tcreate_500KiB_n
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_printf
lea rax, str._tcreate_50MiB_n
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_printf
lea rax, str._tcreate_5GiB_n
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_printf
mov eax, 1
jmp 0x4014fa
movabs rax, 0
mov qword [rbp - 0x10], rax
mov eax, 0
mov byte [rbp - 0x110], al
movabs rax, 0xff
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x10f]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov eax, 0
mov dword [rbp - 0x114], eax
mov eax, 0
mov byte [rbp - 0x214], al
movabs rax, 0xff
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x213]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov eax, 0
mov dword [rbp - 0x218], eax
mov rax, qword [rbp + 0x18]
add rax, 8
mov ecx, dword [rbp - 0x218]
mov rdx, qword [rax]
add rdx, rcx
movsx eax, byte [rdx]
and eax, 0xff
mov byte [rbp - 0x219], al
movzx eax, byte [rbp - 0x219]
cmp eax, 0x30
jl 0x4011a4
movzx eax, byte [rbp - 0x219]
cmp eax, 0x39
jg 0x4011a4
mov eax, dword [rbp - 0x218]
lea rcx, [rbp - 0x110]
add rcx, rax
movzx eax, byte [rbp - 0x219]
mov byte [rcx], al
jmp 0x4011a9
jmp 0x4011bd
mov eax, dword [rbp - 0x218]
mov rcx, rax
add eax, 1
mov dword [rbp - 0x218], eax
jmp 0x401143
mov eax, 0
mov dword [rbp - 0x220], eax
mov rax, qword [rbp + 0x18]
add rax, 8
mov ecx, dword [rbp - 0x218]
mov rdx, qword [rax]
add rdx, rcx
movsx eax, byte [rdx]
and eax, 0xff
mov byte [rbp - 0x219], al
movzx eax, byte [rbp - 0x219]
cmp eax, 0
jne 0x401200
jmp 0x40123f
mov eax, dword [rbp - 0x220]
lea rcx, [rbp - 0x214]
add rcx, rax
movzx eax, byte [rbp - 0x219]
mov byte [rcx], al
mov eax, dword [rbp - 0x218]
mov rcx, rax
add eax, 1
mov dword [rbp - 0x218], eax
mov eax, dword [rbp - 0x220]
mov rcx, rax
add eax, 1
mov dword [rbp - 0x220], eax
jmp 0x4011c8
movzx eax, byte [rbp - 0x110]
cmp eax, 0
jne 0x40126b
lea rax, str.Idi_ka_ti_nahuy_n
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_printf
mov eax, 1
jmp 0x4014fa
lea rax, [rbp - 0x110]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_atoi
mov dword [rbp - 0x114], eax
lea rax, [0x0040204f]
mov r11, rax
lea rax, [rbp - 0x214]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_strcmp
cmp eax, 0
jne 0x4012bd
mov eax, dword [rbp - 0x114]
shl eax, 0xa
mov qword [rbp - 0x10], rax
jmp 0x40134d
lea rax, [0x00402053]
mov r11, rax
lea rax, [rbp - 0x214]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_strcmp
cmp eax, 0
jne 0x4012f7
mov eax, dword [rbp - 0x114]
shl eax, 0x14
mov qword [rbp - 0x10], rax
jmp 0x40134d
lea rax, [0x00402057]
mov r11, rax
lea rax, [rbp - 0x214]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_strcmp
cmp eax, 0
jne 0x401331
mov eax, dword [rbp - 0x114]
shl eax, 0x1e
mov qword [rbp - 0x10], rax
jmp 0x40134d
lea rax, str.Space_undifined__KiB_MiB_GiB__n
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_printf
mov eax, 1
jmp 0x4014fa
mov rax, qword [rbp - 0x10]
mov r11, rax
lea rax, str.Create_file_with__llu_bytes..._n
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_printf
lea rax, [0x0040209f]
mov r11, rax
lea rax, str.TEST
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fopen
mov qword [rbp - 0x228], rax
movabs rax, 0
mov qword [rbp - 0x230], rax
mov rax, qword [rbp - 0x230]
mov rcx, qword [rbp - 0x10]
cmp rax, rcx
jae 0x4014e8
movabs rax, 0x50
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x280]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov eax, 0
mov dword [rbp - 0x284], eax
mov eax, 0
mov dword [rbp - 0x288], eax
mov eax, 0
mov dword [rbp - 0x28c], eax
mov eax, dword [rbp - 0x28c]
cmp eax, 0x50
jae 0x4014ae
jmp 0x401427
mov eax, dword [rbp - 0x28c]
mov rcx, rax
add eax, 1
mov dword [rbp - 0x28c], eax
jmp 0x4013ff
mov rax, qword [rbp - 0x230]
mov rcx, qword [rbp - 0x10]
cmp rax, rcx
jb 0x401440
jmp 0x4014ae
mov eax, dword [rbp - 0x28c]
cmp eax, 0x4f
jae 0x40146b
mov eax, dword [rbp - 0x28c]
lea rcx, [rbp - 0x280]
add rcx, rax
mov eax, 0x41
mov byte [rcx], al
jmp 0x401482
mov eax, dword [rbp - 0x28c]
lea rcx, [rbp - 0x280]
add rcx, rax
mov eax, 0xa
mov byte [rcx], al
mov rax, qword [rbp - 0x230]
mov rcx, rax
add rax, 1
mov qword [rbp - 0x230], rax
mov eax, dword [rbp - 0x288]
mov rcx, rax
add eax, 1
mov dword [rbp - 0x288], eax
jmp 0x401413
mov eax, dword [rbp - 0x288]
mov rcx, qword [rbp - 0x228]
mov r9, rcx
mov r8, rax
movabs rax, 1
mov r11, rax
lea rax, [rbp - 0x280]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fwrite
jmp 0x4013a0
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_fclose
leave
ret