Function at 0x140011276
Capabilities:
Read file on windows
Write file on windows

Disassembly:
jmp 0x140011890
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rsi
push rdi
sub rsp, 0x550
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0xe4
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov ecx, dword [rsp + 0x578]
mov rax, qword [section..data]
xor rax, rbp
mov qword [rbp + 0x508], rax
lea rcx, [0x1400230d7]
call fcn.140011389
nop
lea rax, [rbp + 0x178]
lea rcx, str.The_flag_is:_n
mov rdi, rax
mov rsi, rcx
mov ecx, 0xe
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1a8]
lea rcx, str.Error_reading__n
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1d8]
lea rcx, str.Size_Error__n
mov rdi, rax
mov rsi, rcx
mov ecx, 0xd
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x208]
lea rcx, str.Read_zero_bytes__n
mov rdi, rax
mov rsi, rcx
mov ecx, 0x12
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x238]
lea rcx, str.Read_to_many_bytes__n
mov rdi, rax
mov rsi, rcx
mov ecx, 0x15
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x268]
lea rcx, str.Input_file_not_found__n
mov rdi, rax
mov rsi, rcx
mov ecx, 0x17
rep movsb byte [rdi], byte [rsi]
mov r8d, 0x1f
mov edx, 0x2e
lea rcx, [rbp + 0x298]
call fcn.1400112d0
nop
mov eax, 1
imul rax, rax, 0x1f
mov qword [rbp + 0x4d8], rax
cmp qword [rbp + 0x4d8], 0x20
jae 0x1400119b4
jmp 0x1400119ba
call fcn.1400112b2
nop
mov rax, qword [rbp + 0x4d8]
mov byte [rbp + rax + 0x298], 0
lea rax, [rbp + 0x2d8]
mov rdi, rax
xor eax, eax
mov ecx, 0x20
rep stosb byte [rdi], al
mov dword [rbp + 0x314], 0
mov dword [rbp + 0x334], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
lea rcx, str.flag.txt
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x28], 0xffffffffffffffff
jne 0x140011a36
mov eax, 0xffffffff
jmp 0x140011cbf
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x40000080
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov r8d, 1
mov edx, 0x80000000
lea rcx, str.C:UsersAdministratorDesktop_flag.txt
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbp + 8], rax
cmp qword [rbp + 8], 0xffffffffffffffff
jne 0x140011aa7
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0x17
lea rdx, [rbp + 0x268]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov eax, 0xfffffffe
jmp 0x140011cbf
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0xe
lea rdx, [rbp + 0x178]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
lea rax, [0x14001104b]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x2d8]
mov r8d, 0x108
lea rdx, [rbp + 0x50]
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_ReadFileEx]
test eax, eax
jne 0x140011b2c
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0x10
lea rdx, [rbp + 0x1a8]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov eax, 0xfffffffd
jmp 0x140011cbf
mov edx, 1
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_SleepEx]
nop
mov eax, dword [0x14001e1b0]
mov dword [rbp + 0x334], eax
mov eax, dword [0x14001e1b0]
mov dword [rsp + 0x20], eax
mov r9d, dword [0x14001e1b4]
lea r8, str.E:_d_L:_d_n
mov edx, 0x1f
lea rcx, [rbp + 0x298]
call fcn.14001128a
nop
cmp dword [rbp + 0x334], 0
jbe 0x140011bf2
cmp dword [rbp + 0x334], 0x108
ja 0x140011bf2
mov eax, dword [rbp + 0x334]
mov qword [rbp + 0x4f8], rax
cmp qword [rbp + 0x4f8], 0x109
jae 0x140011ba4
jmp 0x140011baa
call fcn.1400112b2
nop
mov rax, qword [rbp + 0x4f8]
mov byte [rbp + rax + 0x50], 0
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, dword [rbp + 0x334]
lea rdx, [rbp + 0x50]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov edx, 1
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_SleepEx]
nop
jmp 0x140011ca7
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0xd
lea rdx, [rbp + 0x1d8]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0x20
lea rdx, [rbp + 0x298]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
cmp dword [rbp + 0x334], 0
jne 0x140011c73
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0x12
lea rdx, [rbp + 0x208]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
cmp dword [rbp + 0x334], 0x108
jb 0x140011ca7
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x314]
mov r8d, 0x15
lea rdx, [rbp + 0x238]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, [0x14001af20]
call fcn.140011325
mov rax, rdi
mov rcx, qword [rbp + 0x508]
xor rcx, rbp
call fcn.1400111b8
lea rsp, [rbp + 0x510]
pop rdi
pop rsi
pop rbp
ret