Function at 0x18008f368
Capabilities:
Write file on windows

Disassembly:
jmp 0x18008f368
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov r14d, r8d
mov rdi, rdx
movsxd r15, ecx
test r8d, r8d
jne 0x18008f394
xor eax, eax
jmp 0x18008f5e2
test rdi, rdi
jne 0x18008f3b9
call fcn.1800046a1
and dword [rax], 0
call fcn.180002f95
mov dword [rax], 0x16
call fcn.1800041d8
or eax, 0xffffffff
jmp 0x18008f5e2
mov rcx, r15
lea r13, [0x1800d3ce0]
and ecx, 0x3f
mov rax, r15
sar rax, 6
mov r12, r15
shl rcx, 6
mov rdx, qword [r13 + rax*8]
mov sil, byte [rdx + rcx + 0x39]
lea eax, [rsi - 1]
cmp al, 1
ja 0x18008f3ee
mov eax, r14d
not eax
test al, 1
je 0x18008f399
test byte [rdx + rcx + 0x38], 0x20
je 0x18008f403
xor edx, edx
mov ecx, r15d
lea r8d, [rdx + 2]
call fcn.180004f89
xor ebx, ebx
mov ecx, r15d
mov qword [rbp - 0x10], rbx
call fcn.18008ece8
test al, al
je 0x18008f4bb
test sil, sil
je 0x18008f49d
dec sil
cmp sil, 1
ja 0x18008f563
xor esi, esi
lea r15, [rdi + r14]
mov qword [rbp - 0x20], rsi
mov r14, rdi
cmp rdi, r15
jae 0x18008f496
mov ebx, dword [rbp - 0x1c]
movzx r13d, word [r14]
movzx ecx, r13w
call fcn.180003afd
cmp ax, r13w
jne 0x18008f486
add ebx, 2
mov dword [rbp - 0x1c], ebx
cmp r13w, 0xa
jne 0x18008f47b
mov r13d, 0xd
mov ecx, r13d
call fcn.180003afd
cmp ax, r13w
jne 0x18008f486
inc ebx
mov dword [rbp - 0x1c], ebx
inc esi
add r14, 2
cmp r14, r15
jae 0x18008f48f
jmp 0x18008f440
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x20], eax
lea r13, [0x1800d3ce0]
mov ebx, esi
jmp 0x18008f559
mov r9d, r14d
lea rcx, [rbp - 0x20]
mov r8, rdi
mov edx, r15d
call fcn.18008e930
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
jmp 0x18008f55e
mov rcx, r12
mov rax, r12
sar rax, 6
and ecx, 0x3f
shl rcx, 6
mov rdx, qword [r13 + rax*8]
cmp byte [rdx + rcx + 0x38], bl
jge 0x18008f526
movsx ecx, sil
test sil, sil
je 0x18008f512
sub ecx, 1
je 0x18008f4fe
cmp ecx, 1
jne 0x18008f563
mov r9d, r14d
lea rcx, [rbp - 0x20]
mov r8, rdi
mov edx, r15d
call fcn.18008eef8
jmp 0x18008f4af
mov r9d, r14d
lea rcx, [rbp - 0x20]
mov r8, rdi
mov edx, r15d
call fcn.18008f058
jmp 0x18008f4af
mov r9d, r14d
lea rcx, [rbp - 0x20]
mov r8, rdi
mov edx, r15d
call fcn.18008edb4
jmp 0x18008f4af
mov rcx, qword [rdx + rcx + 0x28]
lea r9, [rbp - 0x1c]
xor eax, eax
mov rdx, rdi
and qword [rsp + 0x20], rax
mov r8d, r14d
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x18], eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x18008f556
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x20], eax
mov ebx, dword [rbp - 0x18]
movsd xmm0, qword [rbp - 0x20]
movsd qword [rbp - 0x10], xmm0
mov rax, qword [rbp - 0x10]
shr rax, 0x20
test eax, eax
jne 0x18008f5dd
mov ecx, dword [rbp - 0x10]
test ecx, ecx
je 0x18008f5a0
cmp ecx, 5
jne 0x18008f596
call fcn.180002f95
mov dword [rax], 9
call fcn.1800046a1
mov dword [rax], 5
jmp 0x18008f3b1
call fcn.180003b9d
jmp 0x18008f3b1
mov rax, r12
and r12d, 0x3f
sar rax, 6
shl r12, 6
mov rax, qword [r13 + rax*8]
test byte [rax + r12 + 0x38], 0x40
je 0x18008f5c5
cmp byte [rdi], 0x1a
je 0x18008f38d
call fcn.180002f95
mov dword [rax], 0x1c
call fcn.1800046a1
and dword [rax], 0
jmp 0x18008f3b1
mov eax, dword [rbp - 0xc]
sub eax, ebx
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret