Function at 0x18013f270
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], r9
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov rbx, rdx
mov r12, rcx
mov edx, 7
mov rcx, r8
mov rdi, r8
call fcn.180026950
mov edx, 7
movsxd r14, eax
mov rcx, rdi
call fcn.180026700
mov r15, rax
test r14d, r14d
jle 0x18013f8e1
test rax, rax
je 0x18013f8e1
xor esi, esi
mov qword [rsp + 0x190], r13
mov qword [rsp + 0x58], rsi
test rbx, rbx
je 0x18013f304
mov r9, rbx
mov r8d, r14d
mov rdx, rax
mov rcx, r12
call fcn.180143c00
mov rbx, rax
test rax, rax
jne 0x18013f581
jmp 0x18013f556
lea eax, [r14 + 1]
mov dword [rsp + 0x50], esi
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x18013f3b4
movdqa xmm0, xmmword [0x1801611a0]
lea rdx, [rbp - 0x68]
movdqa xmm1, xmmword [0x180162360]
lea rcx, [rbp - 0x10]
mov dword [rbp - 0x47], eax
mov word [rbp - 0x43], ax
mov byte [rbp - 0x41], al
movabs rax, 0x7f02b73546d22d
mov qword [rbp - 0x40], rax
movabs rax, 0x6e089c70ecaf2308
mov qword [rbp - 0x38], rax
movabs rax, 0x4a596171cb918bbc
mov qword [rbp - 0x30], rax
movdqu xmmword [rbp - 0x68], xmm0
mov byte [rbp - 0x48], 0xaa
movdqu xmmword [rbp - 0x58], xmm1
call fcn.18000cdb0
lea r8, [rsp + 0x60]
movups xmm2, xmmword [rax]
movups xmmword [rsp + 0x60], xmm2
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm0
movzx eax, word [rax + 0x20]
mov word [rbp - 0x80], ax
jmp 0x18013f51c
mov r8, r14
mov rdx, r15
mov rcx, rbx
call fcn.18014af30
movdqa xmm0, xmmword [0x1801615f0]
lea rdx, [rbp - 0x68]
movdqa xmm1, xmmword [0x1801619c0]
lea rcx, [rsp + 0x60]
movabs rax, 0xe699c7809ba10907
mov dword [rbp - 0x48], 0x163c4c9
movabs r12, 0x53a4a43623c65917
mov qword [rbp - 0x30], rax
movabs r13, 0x3a6803306d2e183c
mov dword [rbp - 0x44], 0xa19b76
movdqu xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x40], r12
movdqu xmmword [rbp - 0x58], xmm1
mov qword [rbp - 0x38], r13
call fcn.18000d7e0
mov r9, r15
mov dword [rsp + 0x20], r14d
lea r8, [rbp - 0x10]
mov edx, 0x100000
lea rcx, [0x18017bd90]
movups xmm2, xmmword [rax]
movups xmmword [rbp - 0x10], xmm2
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp], xmm0
movsd xmm1, qword [rax + 0x20]
movsd qword [rbp + 0x10], xmm1
call fcn.1800010e0
mov rcx, qword [0x18017bd78]
lea r9, [0x18017bd80]
mov r8d, eax
mov dword [0x18017bd84], eax
lea rdx, [0x18017bd90]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea r9, [rsp + 0x50]
mov edx, r14d
lea r8, [rsp + 0x58]
mov rcx, rbx
call fcn.180140ac0
test eax, eax
jne 0x18013f57c
movdqa xmm0, xmmword [0x180161410]
lea rdx, [rbp - 0x68]
movdqa xmm1, xmmword [0x1801619e0]
lea rcx, [rsp + 0x60]
xor eax, eax
mov word [rbp - 0x38], 0xad5c
movdqu xmmword [rbp - 0x68], xmm0
mov dword [rbp - 0x35], eax
movdqa xmm0, xmmword [str._E_]
mov byte [rbp - 0x31], al
movabs rax, 0xe699c7809ba10907
movdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x20], rax
movdqu xmmword [rbp - 0x58], xmm1
mov byte [rbp - 0x36], 0x87
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r13
call fcn.18000b5b0
lea r8, [rbp - 0x10]
movups xmm2, xmmword [rax]
movups xmmword [rbp - 0x10], xmm2
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp + 0x10], xmm1
mov eax, dword [rax + 0x30]
mov dword [rbp + 0x20], eax
mov edx, 0x100000
lea rcx, [0x18017bd90]
call fcn.1800010e0
mov rcx, qword [0x18017bd78]
lea r9, [0x18017bd80]
mov r8d, eax
mov dword [0x18017bd84], eax
lea rdx, [0x18017bd90]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor eax, eax
mov r13, qword [rsp + 0x190]
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov rbx, qword [rsp + 0x58]
xor edx, edx
mov rcx, rdi
call fcn.180026830
test rax, rax
lea rsi, [0x18015f0aa]
mov r14, rsi
mov edx, 1
mov rcx, rdi
cmovne r14, rax
call fcn.1800267e0
mov rcx, rax
test rax, rax
je 0x18013f5f0
movabs rax, 0x431bde82d7b634db
lea r8, [0x18015f1f0]
imul rcx
movabs r9, 0xfffffffd49ef6f00
sar rdx, 0x12
mov rcx, rdx
add r9, rdx
shr rcx, 0x3f
mov edx, 0x16
add r9, rcx
lea rcx, [rbp + 0x28]
call fcn.1800010e0
jmp 0x18013f600
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
mov dword [rbp + 0x38], eax
mov word [rbp + 0x3c], ax
mov edx, 2
mov rcx, rdi
call fcn.1800267a0
test eax, eax
jne 0x18013f65d
movabs rax, 0xffecc7b5d047cc19
mov dword [rsp + 0x60], 0xb89a422
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
movabs rax, 0xaa9e01521a390148
mov dword [rsp + 0x64], 0xb5fd
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x58]
movabs rax, 0x74230659ba45b13c
mov qword [rsp + 0x78], rax
call fcn.18000f970
mov edx, 3
mov rcx, rdi
call fcn.180026830
test rax, rax
mov r12, rsi
mov edx, 4
mov rcx, rdi
cmovne r12, rax
call fcn.180026830
test rax, rax
xorps xmm0, xmm0
mov rcx, rdi
cmovne rsi, rax
xor eax, eax
movups xmmword [rbp + 0x40], xmm0
mov dword [rbp + 0x50], eax
mov word [rbp + 0x54], ax
lea edx, [rax + 5]
call fcn.1800267a0
mov r9d, eax
lea r8, [0x18015f1f8]
mov edx, 0x16
lea rcx, [rbp + 0x40]
call fcn.1800010e0
mov edx, 6
mov rcx, rdi
call fcn.1800267a0
test eax, eax
je 0x18013f726
xor r10d, r10d
lea r15, [rbp - 0x18]
mov al, 0x3d
mov byte [rsp + 0x55], r10b
xor al, 0x49
mov word [rsp + 0x65], r10w
mov byte [rsp + 0x50], al
mov cl, 0xc5
xor cl, 0xb7
mov byte [rsp + 0x67], r10b
mov dl, 0x27
mov byte [rsp + 0x51], cl
xor dl, 0x52
mov r8b, 0xf
xor r8b, 0x6a
mov byte [rsp + 0x52], dl
mov r9b, 0x18
mov byte [rsp + 0x53], r8b
mov eax, dword [rsp + 0x50]
xor r9b, r9b
mov byte [rsp + 0x54], r9b
mov dword [rbp - 0x18], eax
movzx eax, word [rsp + 0x54]
mov word [rbp - 0x14], ax
jmp 0x18013f78e
movabs rax, 0x4863e3ae9c06d2f
mov dword [rsp + 0x60], 0x193ed62f
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
movabs rax, 0x8509d316dfcdfd66
mov dword [rsp + 0x64], 0x577d
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x50]
movabs rax, 0xcf7c303f107722a7
mov qword [rsp + 0x78], rax
call fcn.18000f970
lea r15, [rsp + 0x58]
mov ecx, dword [rax]
mov dword [rsp + 0x58], ecx
movzx ecx, word [rax + 4]
mov word [rsp + 0x5c], cx
movzx eax, byte [rax + 6]
mov byte [rsp + 0x5e], al
mov edx, 8
mov rcx, rdi
call fcn.1800267a0
test eax, eax
je 0x18013f7eb
movabs rax, 0x587f9cbbfb40fa25
mov dword [rsp + 0x60], 0xc7eedbe7
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
movabs rax, 0xbe446f692da109c6
mov dword [rsp + 0x64], 0x3048
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x50]
movabs rax, 0xbbde12c677dcc182
mov qword [rsp + 0x78], rax
call fcn.18000f970
mov rcx, 0xffffffffffffffff
mov rax, rcx
inc rax
cmp byte [r15 + rax], 0
jne 0x18013f7f5
mov rdx, rcx
inc rdx
cmp byte [rsi + rdx], 0
jne 0x18013f802
add rax, rdx
mov rdx, rcx
inc rdx
cmp byte [r12 + rdx], 0
jne 0x18013f811
add rax, rdx
mov rdx, rcx
inc rdx
cmp byte [r14 + rdx], 0
jne 0x18013f821
add rax, rdx
mov rdx, rcx
inc rdx
cmp byte [rbx + rdx], 0
jne 0x18013f831
add rax, rdx
lea r8, [rbp + 0x40]
mov rdx, rcx
inc rdx
cmp byte [r8 + rdx], 0
jne 0x18013f844
add rax, rdx
lea r8, [rbp + 0x28]
nop word [rax + rax]
cmp byte [r8 + rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x18013f860
lea r13, [rax + rcx]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8, [r13 + 0x1e]
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
je 0x18013f8d9
mov qword [rsp + 0x48], rbx
lea rax, [rbp + 0x28]
mov qword [rsp + 0x40], r12
lea r8, str._s_t_s_t_s_t_s_t_s_t_s_t_s_n
mov qword [rsp + 0x38], rax
lea rdx, [r13 + 0x1e]
mov qword [rsp + 0x30], r15
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rsi
mov r9, r14
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.1800010e0
movsxd rcx, eax
mov rax, qword [rbp + 0xa8]
mov qword [rax], rcx
mov rax, rdi
jmp 0x18013f558
movdqa xmm0, xmmword [0x180161110]
lea rdx, [rbp - 0x68]
movdqa xmm1, xmmword [0x180161d60]
lea rcx, [rsp + 0x60]
movabs rax, 0x7f02b73546d22d
mov qword [rbp - 0x38], rax
movabs rax, 0x6e089c70ecaf2308
mov qword [rbp - 0x30], rax
movabs rax, 0x4a596171cb918bbc
movdqu xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x28], rax
movdqa xmm0, xmmword [0x180160800]
movdqu xmmword [rbp - 0x58], xmm1
movdqu xmmword [rbp - 0x48], xmm0
call fcn.180005380
lea r8, [rbp - 0x10]
mov edx, 0x100000
movups xmm2, xmmword [rax]
movups xmmword [rbp - 0x10], xmm2
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp], xmm0
movsd xmm1, qword [rax + 0x20]
movsd qword [rbp + 0x10], xmm1
mov ecx, dword [rax + 0x28]
mov dword [rbp + 0x18], ecx
movzx ecx, word [rax + 0x2c]
mov word [rbp + 0x1c], cx
lea rcx, [0x18017bd90]
movzx eax, byte [rax + 0x2e]
mov byte [rbp + 0x1e], al
call fcn.1800010e0
mov rcx, qword [0x18017bd78]
lea r9, [0x18017bd80]
xor esi, esi
mov dword [0x18017bd84], eax
mov r8d, eax
mov qword [rsp + 0x20], rsi
lea rdx, [0x18017bd90]
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor eax, eax
jmp 0x18013f560