Function at 0x180051140
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
mov rax, qword [0x180164040]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rdi, rdx
mov rbx, rcx
test rcx, rcx
je 0x1800511ee
mov rcx, rdi
call fcn.180048e60
mov r10, qword [rbx + 8]
mov r11, rax
mov rcx, r10
mov r8, rax
test rax, rax
je 0x1800511b5
mov r9, rdi
sub r9, r10
movzx edx, byte [r9 + rcx]
dec r8
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
cmp dl, al
jne 0x1800511af
test dl, dl
je 0x1800511b5
test r8, r8
jne 0x180051191
jmp 0x1800511b5
mov ecx, edx
sub ecx, eax
jne 0x1800511e5
cmp byte [r10], 0
mov rax, r10
je 0x1800511c8
nop
inc rax
cmp byte [rax], 0
jne 0x1800511c0
sub rax, r10
cmp rax, r11
je 0x1800513dd
lea rcx, [r10 + r11]
call fcn.180051560
test eax, eax
jg 0x1800513dd
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x180051171
mov dl, 3
call fcn.18005d400
movabs rax, 0x18ce56d0699e2a63
lea r8, [rbp - 0x19]
mov qword [rbp - 0x79], rax
lea rcx, [rbp - 0x19]
mov rax, qword [rbp - 0x79]
movabs r15, 0x6cee32b505f74b05
mov qword [rbp - 0x19], rax
movabs r14, 0xa136cd1cc97f0476
movabs rax, 0xc816a972a0192419
mov edx, r8d
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x79]
mov qword [rbp - 0x11], rax
movabs rax, 0x30f71eb556628241
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x79]
mov qword [rbp - 9], rax
movabs rax, 0x9ab7429282e59188
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x79]
mov qword [rbp - 1], rax
mov qword [rbp - 0x79], r15
mov rax, qword [rbp - 0x79]
mov qword [rbp + 7], rax
mov qword [rbp - 0x79], r14
mov rax, qword [rbp - 0x79]
mov qword [rbp + 0xf], rax
movabs rax, 0x55947fd32407f62f
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x79]
mov qword [rbp + 0x17], rax
movabs rax, 0x9ab7429282e5b3a8
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x79]
movdqa xmm1, xmmword [rbp - 0x19]
xorps xmm1, xmmword [rbp + 7]
movdqa xmm0, xmmword [rbp - 9]
mov qword [rbp + 0x1f], rax
movq rax, xmm1
xorps xmm0, xmmword [rbp + 0x17]
movdqa xmmword [rbp - 0x19], xmm1
movdqa xmmword [rbp - 9], xmm0
test al, al
je 0x1800512e4
inc rcx
cmp byte [rcx], 0
jne 0x1800512d5
mov r8d, ecx
lea rdx, [rbp - 0x19]
xor esi, esi
sub r8d, edx
xor r9d, r9d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x19]
lea rcx, [rsi - 1]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rax, rdi
mov r8d, edi
cmp byte [rdi], sil
je 0x18005131b
nop word [rax + rax]
inc rax
mov r8, rax
cmp byte [rax], sil
jne 0x180051310
xor r9d, r9d
mov qword [rsp + 0x20], rsi
sub r8d, edi
mov rdx, rdi
lea rcx, [r9 - 1]
call qword [sym.imp.KERNEL32.dll_WriteFile]
movabs rax, 0x6cee32b505f74b27
lea r8, [rbp - 0x29]
mov qword [rbp - 0x79], rax
lea rcx, [rbp - 0x29]
mov rax, qword [rbp - 0x79]
mov edx, r8d
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x79], r14
mov rax, qword [rbp - 0x79]
mov qword [rbp - 0x21], rax
mov qword [rbp - 0x79], r15
mov rax, qword [rbp - 0x79]
mov qword [rbp - 0x69], rax
mov qword [rbp - 0x79], r14
mov rax, qword [rbp - 0x79]
movdqa xmm0, xmmword [rbp - 0x29]
mov qword [rbp - 0x61], rax
xorps xmm0, xmmword [rbp - 0x69]
movq rax, xmm0
movdqa xmmword [rbp - 0x29], xmm0
test al, al
je 0x18005139f
nop
inc rcx
cmp byte [rcx], sil
jne 0x180051390
mov r8d, ecx
lea rdx, [rbp - 0x29]
xor r9d, r9d
mov qword [rsp + 0x20], rsi
sub r8d, edx
lea rdx, [rbp - 0x29]
lea rcx, [r9 - 1]
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor eax, eax
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1800c2800
mov rbx, qword [rsp + 0x120]
add rsp, 0xe0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call qword [rbx]
mov dl, 1
mov rdi, rax
call fcn.18005d400
movabs rax, 0x88b40c071872a66
lea r8, [rbp - 0x49]
mov qword [rbp - 0x79], rax
movabs r15, 0x6cee32b505f74b05
mov rcx, qword [rbp - 0x79]
movabs rax, 0xa136cd1cc97f2656
mov qword [rbp - 0x49], rcx
movabs r14, 0xa136cd1cc97f0476
mov qword [rbp - 0x79], rax
mov edx, r8d
mov rcx, qword [rbp - 0x79]
mov qword [rbp - 0x41], rcx
mov qword [rbp - 0x79], r15
mov rcx, qword [rbp - 0x79]
mov qword [rbp - 0x59], rcx
lea rcx, [rbp - 0x49]
mov qword [rbp - 0x79], r14
mov rax, qword [rbp - 0x79]
mov qword [rbp - 0x51], rax
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rbp - 0x49]
movq rax, xmm0
movdqa xmmword [rbp - 0x49], xmm0
test al, al
je 0x180051472
inc rcx
cmp byte [rcx], 0
jne 0x180051463
mov r8d, ecx
lea rdx, [rbp - 0x49]
xor esi, esi
sub r8d, edx
xor r9d, r9d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x49]
lea rcx, [rsi - 1]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rdx, qword [rbx + 8]
mov rax, rdx
mov r8d, edx
cmp byte [rdx], sil
je 0x1800514ab
nop dword [rax]
inc rax
mov r8, rax
cmp byte [rax], sil
jne 0x1800514a0
xor r9d, r9d
mov qword [rsp + 0x20], rsi
sub r8d, edx
lea rcx, [r9 - 1]
call qword [sym.imp.KERNEL32.dll_WriteFile]
movabs rax, 0xa9c57c16b9e6b27
lea r8, [rbp - 0x39]
mov qword [rbp - 0x79], rax
lea rdx, [rbp - 0x39]
mov rax, qword [rbp - 0x79]
mov ecx, r8d
mov qword [rbp - 0x39], rax
movabs rax, 0xa136cd1cc91a6717
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x79]
mov qword [rbp - 0x31], rax
mov qword [rbp - 0x79], r15
mov rax, qword [rbp - 0x79]
mov qword [rbp - 0x69], rax
mov qword [rbp - 0x79], r14
mov rax, qword [rbp - 0x79]
movdqa xmm0, xmmword [rbp - 0x39]
mov qword [rbp - 0x61], rax
xorps xmm0, xmmword [rbp - 0x69]
movq rax, xmm0
movdqa xmmword [rbp - 0x39], xmm0
test al, al
je 0x180051535
inc rdx
cmp byte [rdx], sil
jne 0x180051526
mov r8d, edx
lea rcx, [rbp - 0x39]
xor r9d, r9d
mov qword [rsp + 0x20], rsi
sub r8d, ecx
lea rdx, [rbp - 0x39]
lea rcx, [r9 - 1]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rax, rdi
jmp 0x1800513ba