Function at 0x140002074
Capabilities:
Write file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
sub rsp, 0xe0
mov rax, qword [0x140009110]
xor rax, rsp
mov qword [rsp + 0xd0], rax
xor r12d, r12d
mov rbp, r8
mov rsi, rdx
mov dword [rsp + 0x48], r9d
lea rdx, [0x1400016b0]
lea r8d, [r12 + 8]
lea r9, [rsp + 0x44]
mov rdi, rcx
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp eax, r12d
je 0x1400023b2
xor eax, eax
mov word [rsp + 0x50], r12w
lea rcx, [rsp + 0x50]
lea edx, [rax + 0xd]
mov qword [rsp + 0x52], rax
mov qword [rsp + 0x5a], rax
mov qword [rsp + 0x62], rax
lea rax, [rsp + 0x50]
mov ebx, r12d
sub rsi, rax
lea rax, [rdx + 0x7ffffff1]
cmp rax, r12
je 0x14000211f
movzx eax, word [rsi + rcx]
cmp ax, r12w
je 0x14000211f
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400020fc
cmp rdx, r12
jne 0x14000212d
sub rcx, 2
mov ebx, 0x8007007a
cmp ebx, r12d
mov word [rcx], r12w
jl 0x140002157
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x50]
mov r8d, 0x18
mov rcx, rdi
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
mov esi, 4
jl 0x14000218a
lea r9, [rsp + 0x44]
lea rdx, [0x1400016bc]
mov r8d, esi
mov rcx, rdi
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x1400021be
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x40]
mov r8d, esi
mov rcx, rdi
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x140002239
xor edx, edx
lea rcx, [rsp + 0x71]
mov byte [rsp + 0x70], r12b
lea r8d, [rdx + 0x57]
call sub.msvcrt.dll_memset
cmp rbp, r12
je 0x140002218
mov qword [rsp + 0x38], r12
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], r12
mov r9d, 0x40
mov r8, rbp
mov edx, 0x400
xor ecx, ecx
mov dword [rsp + 0x28], 0x40
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x70]
mov r8d, 0x58
mov rcx, rdi
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x14000226d
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x40]
mov r8d, esi
mov rcx, rdi
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x1400022a1
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x40]
mov r8d, esi
mov rcx, rdi
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x1400022ec
xor eax, eax
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x50]
lea r8d, [rax + 0x18]
mov rcx, rdi
mov byte [rsp + 0x50], r12b
mov qword [rsp + 0x51], rax
mov qword [rsp + 0x59], rax
mov dword [rsp + 0x61], eax
mov word [rsp + 0x65], ax
mov byte [rsp + 0x67], al
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x140002320
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x40]
mov r8d, esi
mov rcx, rdi
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x140002354
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x40]
mov r8d, esi
mov rcx, rdi
mov dword [rsp + 0x40], 0x40
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x14000237c
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x48]
mov r8d, esi
mov rcx, rdi
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp r11d, r12d
je 0x1400023a9
cmp ebx, r12d
jl 0x1400023ae
lea r9, [rsp + 0x44]
lea rdx, [rsp + 0x40]
mov r8d, esi
mov rcx, rdi
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, eax
cmp ebx, r12d
jge 0x1400023b2
mov eax, ebx
jmp 0x1400023be
neg r11d
sbb eax, eax
not eax
and eax, 0x80004005
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.140007e60
add rsp, 0xe0
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret