Function at 0x1800033e1
Capabilities:
Write file on windows

Disassembly:
jmp 0x18005960c
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov r15d, r8d
mov rdi, rdx
movsxd r12, ecx
test r8d, r8d
jne 0x180059638
xor eax, eax
jmp 0x180059936
test rdi, rdi
jne 0x18005965d
call fcn.180002b80
and dword [rax], 0
call fcn.180001fff
mov dword [rax], 0x16
call fcn.18000143d
or eax, 0xffffffff
jmp 0x180059936
mov rcx, r12
lea rdx, [0x180085490]
and ecx, 0x3f
mov rax, r12
sar rax, 6
mov rsi, r12
shl rcx, 6
mov rdx, qword [rdx + rax*8]
mov r14b, byte [rdx + rcx + 0x39]
lea eax, [r14 - 1]
cmp al, 1
ja 0x180059692
mov eax, r15d
not eax
test al, 1
je 0x18005963d
test byte [rdx + rcx + 0x38], 0x20
je 0x1800596a7
xor edx, edx
mov ecx, r12d
lea r8d, [rdx + 2]
call fcn.1800016fe
xor ebx, ebx
mov ecx, r12d
mov qword [rbp - 0x20], rbx
call fcn.180003cb0
test eax, eax
je 0x180059825
mov r13, rsi
lea rcx, [0x180085490]
and r13d, 0x3f
mov rax, rsi
sar rax, 6
mov qword [rbp - 0x30], rax
shl r13, 6
mov rax, qword [rcx + rax*8]
cmp byte [rax + r13 + 0x38], bl
jge 0x180059825
call fcn.180001965
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rax + 0x90]
cmp qword [rdx + 0x138], rbx
jne 0x180059718
lea rax, [0x180085490]
mov rax, qword [rax + rcx*8]
cmp byte [rax + r13 + 0x39], bl
je 0x180059825
lea rax, [0x180085490]
mov rcx, qword [rax + rcx*8]
lea rdx, [rbp - 0x10]
mov rcx, qword [rcx + r13 + 0x28]
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
je 0x180059825
test r14b, r14b
je 0x180059805
dec r14b
cmp r14b, 1
ja 0x1800597bf
xor r14d, r14d
lea r12, [rdi + r15]
mov qword [rbp - 0x30], r14
mov r15, rdi
cmp rdi, r12
jae 0x1800597b2
mov ebx, dword [rbp - 0x2c]
movzx r13d, word [r15]
movzx ecx, r13w
call fcn.18000100f
cmp ax, r13w
jne 0x1800597a9
add ebx, 2
mov dword [rbp - 0x2c], ebx
cmp r13w, 0xa
jne 0x18005979e
mov r13d, 0xd
mov ecx, r13d
call fcn.18000100f
cmp ax, r13w
jne 0x1800597a9
inc ebx
mov dword [rbp - 0x2c], ebx
inc r14d
add r15, 2
cmp r15, r12
jae 0x1800597b2
jmp 0x180059762
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
movsd xmm0, qword [rbp - 0x30]
mov ebx, r14d
movsd qword [rbp - 0x20], xmm0
lea r13, [0x180085490]
mov rax, qword [rbp - 0x20]
shr rax, 0x20
test eax, eax
jne 0x180059931
mov ecx, dword [rbp - 0x20]
test ecx, ecx
je 0x1800598f6
cmp ecx, 5
jne 0x1800598ec
call fcn.180001fff
mov dword [rax], 9
call fcn.180002b80
mov dword [rax], 5
jmp 0x180059655
mov r9d, r15d
lea rcx, [rbp - 0x30]
mov r8, rdi
mov edx, r12d
call fcn.180058c5c
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
movsd qword [rbp - 0x20], xmm0
jmp 0x1800597bf
mov rcx, rsi
lea r13, [0x180085490]
and ecx, 0x3f
mov rax, rsi
sar rax, 6
shl rcx, 6
mov rdx, qword [r13 + rax*8]
cmp byte [rdx + rcx + 0x38], bl
jge 0x1800598aa
movsx ecx, r14b
test r14b, r14b
je 0x180059887
sub ecx, 1
je 0x180059873
cmp ecx, 1
jne 0x1800597c6
mov r9d, r15d
lea rcx, [rbp - 0x30]
mov r8, rdi
mov edx, r12d
call fcn.1800591b8
jmp 0x180059899
mov r9d, r15d
lea rcx, [rbp - 0x30]
mov r8, rdi
mov edx, r12d
call fcn.180059318
jmp 0x180059899
mov r9d, r15d
lea rcx, [rbp - 0x30]
mov r8, rdi
mov edx, r12d
call fcn.180059074
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
movsd qword [rbp - 0x20], xmm0
jmp 0x1800597c6
mov rcx, qword [rdx + rcx + 0x28]
lea r9, [rbp - 0x2c]
xor eax, eax
mov rdx, rdi
and qword [rsp + 0x20], rax
mov r8d, r15d
mov qword [rbp - 0x30], rax
mov dword [rbp - 0x28], eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x1800598da
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
movsd xmm0, qword [rbp - 0x30]
mov ebx, dword [rbp - 0x28]
movsd qword [rbp - 0x20], xmm0
jmp 0x1800597c6
call fcn.180001cc1
jmp 0x180059655
mov rax, rsi
and esi, 0x3f
sar rax, 6
shl rsi, 6
mov rax, qword [r13 + rax*8]
test byte [rax + rsi + 0x38], 0x40
je 0x180059919
cmp byte [rdi], 0x1a
je 0x180059631
call fcn.180001fff
mov dword [rax], 0x1c
call fcn.180002b80
and dword [rax], 0
jmp 0x180059655
mov eax, dword [rbp - 0x1c]
sub eax, ebx
mov rbx, qword [rsp + 0xb8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret