Function at 0x100017000
Capabilities:
Write file on windows

Disassembly:
mov r11, rsp
push r12
push r13
push r15
sub rsp, 0x230
mov qword [rsp + 0xd0], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov rax, qword [0x1000a92d0]
xor rax, rsp
mov qword [rsp + 0x220], rax
lea rdx, [0x100003f2c]
lea rcx, [r11 - 0x78]
call fcn.100016320
nop
mov r13d, 7
mov qword [rsp + 0x218], r13
xor esi, esi
mov qword [rsp + 0x210], rsi
mov word [rsp + 0x200], si
lea rdx, [0x100003f2c]
lea rcx, [rsp + 0x158]
call fcn.100016320
nop
lea rdx, [0x100003f2c]
lea rcx, [rsp + 0x180]
call fcn.100016320
nop
mov qword [rsp + 0x60], rsi
lea rdx, [0x100003f18]
lea rcx, [rsp + 0x130]
call fcn.100016320
nop
mov dword [rsp + 0x44], 1
lea rax, [rsp + 0x44]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x1d0]
call fcn.1000167f0
lea rdx, [rsp + 0x1d8]
cmp qword [rsp + 0x1f0], 8
cmovae rdx, qword [rsp + 0x1d8]
xor eax, eax
or rbx, 0xffffffffffffffff
mov rcx, rbx
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x1f8]
call fcn.100015e58
mov edi, dword [rsp + 0x48]
cmp edi, 1
jne 0x100017140
lea r8d, [r13 - 3]
lea rdx, [0x100003f08]
lea rcx, [rsp + 0x130]
call fcn.1000160a4
jmp 0x10001715a
mov r8d, 4
lea rdx, [0x100003ef8]
lea rcx, [rsp + 0x130]
call fcn.1000160a4
mov ecx, 0x48
call fcn.100018088
mov qword [rsp + 0x58], rax
cmp rax, rsi
je 0x100017187
mov r8d, dword [rsp + 0x40]
mov edx, edi
mov rcx, rax
call fcn.10001db14
mov r12, rax
mov qword [rsp + 0x50], rax
jmp 0x10001718f
mov r12, rsi
mov qword [rsp + 0x50], rsi
lea r8, [rsp + 0x130]
lea rdx, [0x100003ed8]
lea rcx, [rsp + 0x80]
call fcn.100016240
nop
lea r8, [0x100003e60]
mov rdx, rax
lea rcx, [rsp + 0xa8]
call fcn.10001642c
nop
mov qword [rsp + 0x1c8], r13
mov qword [rsp + 0x1c0], rsi
mov word [rsp + 0x1b0], si
mov r9, rbx
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x1a8]
call fcn.100015d30
nop
cmp qword [rsp + 0xc8], 8
jb 0x10001720b
mov rcx, qword [rsp + 0xb0]
call fcn.100018048
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0xc0], rsi
mov word [rsp + 0xb0], si
cmp qword [rsp + 0xa0], 8
jb 0x10001723b
mov rcx, qword [rsp + 0x88]
call fcn.100018048
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x98], rsi
mov word [rsp + 0x88], si
lea rdx, [rsp + 0x1b0]
cmp qword [rsp + 0x1c8], 8
cmovae rdx, qword [rsp + 0x1b0]
mov rcx, r12
call fcn.10001c3f4
lea rdx, [0x100003e20]
mov rcx, r12
call fcn.10001cd6c
mov r15d, 1
cmp qword [rsp + 0x170], rsi
je 0x1000173e5
lea rcx, [0x100002f30]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp rax, rsi
jne 0x1000172e3
lea rax, [0x100003c70]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x3e
lea r9, [0x100002340]
xor edx, edx
lea r8d, [r15 + 7]
mov rcx, r12
call fcn.10001d7c0
mov r15d, esi
lea rcx, [0x100003ac0]
call qword [sym.imp.msvcrt.dll_wprintf]
cmp qword [rsp + 0x170], rsi
je 0x1000173e5
cmp r15d, esi
je 0x1000173e5
mov r8, r12
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x158]
call fcn.1000156dc
cmp eax, esi
jne 0x100017363
lea rax, [rsp + 0x160]
cmp qword [rsp + 0x178], 8
cmovae rax, qword [rsp + 0x160]
mov qword [rsp + 0x30], rax
lea rax, [0x100003a10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x55
lea r9, [0x100002340]
xor edx, edx
lea r8d, [rdx + 8]
mov rcx, r12
call fcn.10001d7c0
mov r15d, esi
jmp 0x1000173e5
lea rdx, [0x1000039c8]
lea rcx, [rsp + 0xe0]
call fcn.100016320
nop
mov r8, r12
mov rdx, rax
mov rcx, qword [rsp + 0x60]
call fcn.100014fb4
cmp eax, esi
sete dil
cmp qword [rsp + 0x100], 8
jb 0x1000173a6
mov rcx, qword [rsp + 0xe8]
call fcn.100018048
cmp dil, sil
je 0x1000173bc
lea rdx, [0x100003900]
mov rcx, r12
call fcn.10001d5d0
jmp 0x1000173e5
lea r8, [rsp + 0x160]
cmp qword [rsp + 0x178], 8
cmovae r8, qword [rsp + 0x160]
lea rdx, [fcn.100003820]
mov rcx, r12
call fcn.10001d5d0
mov ecx, 0x18
call fcn.100018088
mov qword [rsp + 0x58], rax
cmp rax, rsi
je 0x10001740e
mov rdx, r12
mov rcx, rax
call fcn.10001dd44
mov rbx, rax
mov qword [rsp + 0x58], rax
jmp 0x100017416
mov rbx, rsi
mov qword [rsp + 0x58], rbx
mov edi, 0x80004005
cmp r15d, esi
je 0x100017467
cmp dword [rsp + 0x44], esi
je 0x100017455
cmp qword [rsp + 0x1e8], rsi
je 0x100017444
lea rdx, [rsp + 0x1f8]
mov rcx, rbx
call fcn.10001f380
mov edi, eax
jmp 0x100017467
mov rdx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.10001f4c0
mov edi, eax
jmp 0x100017467
lea rdx, [rsp + 0x1f8]
mov rcx, rbx
call fcn.10001f590
mov edi, eax
or r15, 0xffffffffffffffff
jmp 0x10001749f
cmp rbx, rsi
je 0x1000174b1
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
neg edi
sbb edi, edi
neg edi
add edi, 1
cmp edi, 2
jne 0x1000174e8
lea rax, [0x1000037c0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa0
lea r9, [0x100002340]
xor edx, edx
lea r8d, [rdi + 6]
mov rcx, r12
call fcn.10001d7c0
cmp qword [rsp + 0x1e8], rsi
jne 0x1000175af
lea r8, [rsp + 0x158]
lea rdx, [0x100003790]
lea rcx, [rsp + 0x108]
call fcn.100016240
nop
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf8], rsi
mov word [rsp + 0xe8], si
mov r9, r15
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xe0]
call fcn.100015d30
nop
mov r9, r15
xor r8d, r8d
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x180]
call fcn.100015d30
nop
cmp qword [rsp + 0x100], 8
jb 0x100017576
mov rcx, qword [rsp + 0xe8]
call fcn.100018048
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf8], rsi
mov word [rsp + 0xe8], si
cmp qword [rsp + 0x128], 8
jb 0x100017722
mov rcx, qword [rsp + 0x110]
call fcn.100018048
jmp 0x100017722
cmp dword [rsp + 0x44], esi
je 0x100017672
lea r8, [rsp + 0x1d0]
lea rdx, [0x100003758]
lea rcx, [rsp + 0x108]
call fcn.100016240
nop
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf8], rsi
mov word [rsp + 0xe8], si
mov r9, r15
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xe0]
call fcn.100015d30
nop
mov r9, r15
xor r8d, r8d
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x180]
call fcn.100015d30
nop
cmp qword [rsp + 0x100], 8
jb 0x100017639
mov rcx, qword [rsp + 0xe8]
call fcn.100018048
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf8], rsi
mov word [rsp + 0xe8], si
cmp qword [rsp + 0x128], 8
jb 0x100017722
mov rcx, qword [rsp + 0x110]
call fcn.100018048
jmp 0x100017722
lea r8, [rsp + 0x1d0]
lea rdx, [0x100003710]
lea rcx, [rsp + 0x108]
call fcn.100016240
nop
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf8], rsi
mov word [rsp + 0xe8], si
mov r9, r15
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xe0]
call fcn.100015d30
nop
mov r9, r15
xor r8d, r8d
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x180]
call fcn.100015d30
nop
cmp qword [rsp + 0x100], 8
jb 0x1000176f2
mov rcx, qword [rsp + 0xe8]
call fcn.100018048
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf8], rsi
mov word [rsp + 0xe8], si
cmp qword [rsp + 0x128], 8
jb 0x100017722
mov rcx, qword [rsp + 0x110]
call fcn.100018048
lea r9, [rsp + 0x188]
cmp qword [rsp + 0x1a0], 8
cmovae r9, qword [rsp + 0x188]
mov r8d, edi
lea rdx, [0x100003e20]
mov rcx, r12
call fcn.10001cf5c
mov rcx, r12
call fcn.10001dc44
mov rcx, r12
call fcn.10001c4b4
cmp dword [rsp + 0x48], 1
jne 0x100017a32
lea rcx, [rsp + 0x68]
call fcn.10001fb6c
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x120], rsi
mov word [rsp + 0x110], si
xor r8d, r8d
lea rdx, [0x100003f2c]
lea rcx, [rsp + 0x108]
call fcn.100015e58
nop
mov qword [rsp + 0x100], 0xf
mov qword [rsp + 0xf8], rsi
mov byte [rsp + 0xe8], sil
xor r8d, r8d
lea rdx, [0x100003708]
lea rcx, [rsp + 0xe0]
call fcn.100015c34
nop
lea rdx, [rsp + 0x68]
mov rcx, r12
call fcn.10001dce4
mov rdx, qword [rsp + 0x70]
mov rbx, qword [rdx]
cmp rbx, rdx
je 0x10001786d
cmp qword [rbx + 0x30], 8
jb 0x100017808
mov rdx, qword [rbx + 0x18]
jmp 0x10001780c
lea rdx, [rbx + 0x18]
lea rcx, [0x100003700]
call qword [sym.imp.msvcrt.dll_wprintf]
cmp qword [rbx + 0x30], 8
jb 0x100017826
mov rdx, qword [rbx + 0x18]
jmp 0x10001782a
lea rdx, [rbx + 0x18]
xor eax, eax
mov rcx, r15
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x108]
call fcn.1000160a4
mov r8d, 1
lea rdx, [0x1000036f8]
lea rcx, [rsp + 0x108]
call fcn.1000160a4
mov rbx, qword [rbx]
cmp rbx, qword [rsp + 0x70]
jne 0x1000177fb
mov rcx, qword [rsp + 0x120]
add rcx, 1
call fcn.100018120
mov rbx, rax
cmp rax, rsi
je 0x1000178eb
lea r8, [rsp + 0x110]
cmp qword [rsp + 0x128], 8
cmovae r8, qword [rsp + 0x110]
mov r9d, dword [rsp + 0x120]
add r9d, 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], rax
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
xor eax, eax
mov rcx, r15
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
lea rcx, [rsp + 0xe0]
call fcn.100015c34
mov rcx, rbx
call fcn.100018068
lea rcx, [rsp + 0x138]
cmp qword [rsp + 0x150], 8
cmovae rcx, qword [rsp + 0x138]
lea rdx, [0x1000036f0]
call qword [sym.imp.msvcrt.dll__wfopen]
mov rdi, rax
cmp rax, rsi
je 0x100017984
lea rcx, [rsp + 0xe8]
cmp qword [rsp + 0x100], 0x10
cmovae rcx, qword [rsp + 0xe8]
mov r9, rax
mov r8, qword [rsp + 0xf8]
mov edx, 1
call qword [sym.imp.msvcrt.dll_fwrite]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_fclose]
lea rdx, [rsp + 0x138]
cmp qword [rsp + 0x150], 8
cmovae rdx, qword [rsp + 0x138]
lea rcx, [0x1000036b0]
call qword [sym.imp.msvcrt.dll_wprintf]
jmp 0x1000179b8
lea rdi, [rsp + 0x138]
cmp qword [rsp + 0x150], 8
cmovae rdi, qword [rsp + 0x138]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
mov rdx, rdi
lea rcx, [0x100003630]
call qword [sym.imp.msvcrt.dll_wprintf]
nop
cmp qword [rsp + 0x100], 0x10
jb 0x1000179d0
mov rcx, qword [rsp + 0xe8]
call fcn.100018048
mov qword [rsp + 0x100], 0xf
mov qword [rsp + 0xf8], rsi
mov byte [rsp + 0xe8], sil
cmp qword [rsp + 0x128], 8
jb 0x100017a04
mov rcx, qword [rsp + 0x110]
call fcn.100018048
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x120], rsi
mov word [rsp + 0x110], si
lea rcx, [rsp + 0x68]
call fcn.1000163b0
mov rcx, qword [rsp + 0x70]
call fcn.100018048
jmp 0x100017a59
lea rdx, [rsp + 0x138]
cmp qword [rsp + 0x150], 8
cmovae rdx, qword [rsp + 0x138]
lea rcx, [0x1000036b0]
call qword [sym.imp.msvcrt.dll_wprintf]
cmp r12, rsi
je 0x100017a6c
mov rax, qword [r12]
mov edx, 1
mov rcx, r12
call qword [rax]
lea rcx, [0x100003608]
call qword [sym.imp.msvcrt.dll_wprintf]
nop
cmp qword [rsp + 0x1c8], 8
jb 0x100017a92
mov rcx, qword [rsp + 0x1b0]
call fcn.100018048
mov qword [rsp + 0x1c8], r13
mov qword [rsp + 0x1c0], rsi
mov word [rsp + 0x1b0], si
cmp qword [rsp + 0x150], 8
jb 0x100017ac2
mov rcx, qword [rsp + 0x138]
call fcn.100018048
mov qword [rsp + 0x150], r13
mov qword [rsp + 0x148], rsi
mov word [rsp + 0x138], si
mov rcx, qword [rsp + 0x60]
cmp rcx, rsi
je 0x100017aeb
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
cmp qword [rsp + 0x1a0], 8
jb 0x100017b03
mov rcx, qword [rsp + 0x188]
call fcn.100018048
mov qword [rsp + 0x1a0], r13
mov qword [rsp + 0x198], rsi
mov word [rsp + 0x188], si
cmp qword [rsp + 0x178], 8
jb 0x100017b33
mov rcx, qword [rsp + 0x160]
call fcn.100018048
mov qword [rsp + 0x178], r13
mov qword [rsp + 0x170], rsi
mov word [rsp + 0x160], si
cmp qword [rsp + 0x218], 8
jb 0x100017b63
mov rcx, qword [rsp + 0x200]
call fcn.100018048
mov qword [rsp + 0x218], r13
mov qword [rsp + 0x210], rsi
mov word [rsp + 0x200], si
cmp qword [rsp + 0x1f0], 8
jb 0x100017b93
mov rcx, qword [rsp + 0x1d8]
call fcn.100018048
xor eax, eax
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.100018ad0
lea r11, [rsp + 0x230]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r13
pop r12
ret