Function at 0x180009d80
Capabilities:
Write file on windows

Disassembly:
push rbx
push rdi
push r15
sub rsp, 0x20
mov rax, qword [0x1800c8be0]
mov rdi, rax
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x180009e48
cmp byte [rax + 1], 0
je 0x180009e48
mov byte [rcx + 0x18], 0
mov rbx, qword [rax + 0x50]
test rbx, rbx
je 0x180009e48
mov rcx, rbx
call fcn.180033580
mov rcx, qword [rbx + 0x70]
test rcx, rcx
je 0x180009de4
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x180009dde
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [rbx + 0x60]
test rcx, rcx
je 0x180009e05
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x180009dff
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [rbx + 0x50]
test rcx, rcx
je 0x180009e26
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x180009e20
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x180009e38
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x1800c8be0]
xor r15d, r15d
mov qword [rdi + 0x50], r15
cmp byte [rdi], r15b
je 0x18000a5e4
mov qword [rsp + 0x50], rsi
cmp byte [rdi + 0x5568], r15b
je 0x180009ebd
mov rbx, qword [rdi + 0x20]
test rbx, rbx
je 0x180009ebd
lea rcx, [rsp + 0x40]
mov dword [rax + 0x556c], r15d
mov qword [rsp + 0x40], r15
call fcn.18001aeb0
lea rdx, [0x1800ab060]
mov rcx, rbx
mov rsi, rax
call fcn.1800034c0
mov rbx, rax
test rax, rax
je 0x180009ebd
mov r8, qword [rsp + 0x40]
lea edx, [r15 + 1]
mov r9, rax
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov qword [rsp + 0x48], rbp
call fcn.18001d6a0
mov esi, r15d
cmp dword [rdi + 0x5530], r15d
jle 0x180009f22
mov rbp, r15
nop word [rax + rax]
mov rax, qword [rdi + 0x5538]
mov rbx, qword [rax + rbp + 8]
test rbx, rbx
je 0x180009f14
mov rcx, rbx
call fcn.18001ed70
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x180009f0b
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
add rbp, 0x10
cmp esi, dword [rdi + 0x5530]
jl 0x180009ee0
mov ebx, r15d
cmp dword [rdi + 0x55b0], r15d
jle 0x180009f5e
mov rsi, r15
mov rax, qword [rdi + 0x55b8]
cmp dword [rsi + rax + 4], 6
jne 0x180009f50
movsxd rdx, ebx
mov rcx, rdi
shl rdx, 5
add rdx, rax
call qword [rsi + rax + 0x10]
inc ebx
add rsi, 0x20
cmp ebx, dword [rdi + 0x55b0]
jl 0x180009f31
mov esi, r15d
cmp dword [rdi + 0x3f80], r15d
jle 0x180009fc6
mov qword [rsp + 0x58], r14
mov r14, r15
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdi + 0x3f88]
mov rbx, qword [r14 + rax]
test rbx, rbx
je 0x180009fb3
mov rcx, rbx
call fcn.180006180
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x180009faa
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
add r14, 8
cmp esi, dword [rdi + 0x3f80]
jl 0x180009f80
mov r14, qword [rsp + 0x58]
mov rcx, qword [rdi + 0x3f88]
test rcx, rcx
je 0x180009ff8
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x3f80], r15
test rax, rax
je 0x180009feb
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3f88], r15
mov rcx, qword [rdi + 0x3f98]
test rcx, rcx
je 0x18000a02a
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x3f90], r15
test rax, rax
je 0x18000a01d
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3f98], r15
mov rcx, qword [rdi + 0x3fa8]
test rcx, rcx
je 0x18000a05c
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x3fa0], r15
test rax, rax
je 0x18000a04f
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3fa8], r15
mov qword [rdi + 0x3fe0], r15
mov rcx, qword [rdi + 0x3fb8]
test rcx, rcx
je 0x18000a095
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x3fb0], r15
test rax, rax
je 0x18000a088
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3fb8], r15
mov rcx, qword [rdi + 0x3fc8]
test rcx, rcx
je 0x18000a0c7
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x3fc0], r15
test rax, rax
je 0x18000a0ba
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3fc8], r15
mov qword [rdi + 0x4268], r15
mov qword [rdi + 0x3ff0], r15
mov qword [rdi + 0x3fe8], r15
mov qword [rdi + 0x4088], r15
mov qword [rdi + 0x4070], r15
mov qword [rdi + 0x4000], r15
mov rcx, qword [rdi + 0x4188]
test rcx, rcx
je 0x18000a123
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4180], r15
test rax, rax
je 0x18000a116
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4188], r15
mov rcx, qword [rdi + 0x4198]
test rcx, rcx
je 0x18000a155
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4190], r15
test rax, rax
je 0x18000a148
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4198], r15
mov rcx, qword [rdi + 0x41a8]
test rcx, rcx
je 0x18000a187
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x41a0], r15
test rax, rax
je 0x18000a17a
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x41a8], r15
mov rcx, qword [rdi + 0x41e8]
test rcx, rcx
je 0x18000a1b9
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x41e0], r15
test rax, rax
je 0x18000a1ac
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x41e8], r15
mov rcx, qword [rdi + 0x41f8]
test rcx, rcx
je 0x18000a1eb
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x41f0], r15
test rax, rax
je 0x18000a1de
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x41f8], r15
mov qword [rdi + 0x4230], r15
mov ebx, r15d
mov qword [rdi + 0x4228], r15
mov qword [rdi + 0x4220], r15
cmp dword [rdi + 0x4208], r15d
jle 0x18000a22e
mov rsi, r15
nop
mov rcx, qword [rdi + 0x4210]
mov rcx, qword [rcx + rsi]
call fcn.1800272d0
inc ebx
lea rsi, [rsi + 8]
cmp ebx, dword [rdi + 0x4208]
jl 0x18000a210
mov rcx, qword [rdi + 0x4210]
test rcx, rcx
je 0x18000a260
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4208], r15
test rax, rax
je 0x18000a253
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4210], r15
lea rcx, [rdi + 0x4528]
call fcn.180026450
mov rcx, qword [rdi + 0x4558]
test rcx, rcx
je 0x18000a29e
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4550], r15
test rax, rax
je 0x18000a291
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4558], r15
mov rcx, qword [rdi + 0x4568]
test rcx, rcx
je 0x18000a2d0
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4560], r15
test rax, rax
je 0x18000a2c3
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4568], r15
mov ebx, r15d
cmp dword [rdi + 0x44a8], r15d
jle 0x18000a317
mov rsi, r15
nop
mov rax, qword [rdi + 0x44b0]
mov rcx, qword [rsi + rax + 0x20]
test rcx, rcx
je 0x18000a309
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x18000a303
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc ebx
add rsi, 0x28
cmp ebx, dword [rdi + 0x44a8]
jl 0x18000a2e0
mov rcx, qword [rdi + 0x44b0]
test rcx, rcx
je 0x18000a349
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x44a8], r15
test rax, rax
je 0x18000a33c
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x44b0], r15
lea rcx, [rdi + 0x44d8]
call fcn.180026560
mov esi, r15d
cmp dword [rdi + 0x44c8], r15d
jle 0x18000a3b3
mov rbp, r15
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rdi + 0x44d0]
lea rcx, [rbx + 0x10]
add rcx, rbp
call fcn.180032630
mov rcx, qword [rbx + rbp + 0x20]
test rcx, rcx
je 0x18000a3a5
mov rax, qword [0x1800c8be0]
test rax, rax
je 0x18000a39f
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
add rbp, 0x70
cmp esi, dword [rdi + 0x44c8]
jl 0x18000a370
mov rcx, qword [rdi + 0x44d0]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
test rcx, rcx
je 0x18000a3ef
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x44c8], r15
test rax, rax
je 0x18000a3e2
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x44d0], r15
mov rcx, qword [rdi + 0x4518]
test rcx, rcx
je 0x18000a421
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4510], r15
test rax, rax
je 0x18000a414
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4518], r15
mov rcx, qword [rdi + 0x54f0]
test rcx, rcx
je 0x18000a453
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x54e8], r15
test rax, rax
je 0x18000a446
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x54f0], r15
mov rcx, qword [rdi + 0x5500]
test rcx, rcx
je 0x18000a485
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x54f8], r15
test rax, rax
je 0x18000a478
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5500], r15
mov rcx, qword [rdi + 0x4590]
test rcx, rcx
je 0x18000a4b7
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4588], r15
test rax, rax
je 0x18000a4aa
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4590], r15
mov rcx, qword [rdi + 0x45a0]
test rcx, rcx
je 0x18000a4e9
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x4598], r15
test rax, rax
je 0x18000a4dc
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x45a0], r15
mov rcx, qword [rdi + 0x45b0]
test rcx, rcx
je 0x18000a51b
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x45a8], r15
test rax, rax
je 0x18000a50e
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x45b0], r15
mov rcx, qword [rdi + 0x5598]
test rcx, rcx
je 0x18000a54d
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x5590], r15
test rax, rax
je 0x18000a540
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5598], r15
mov rcx, qword [rdi + 0x5588]
test rcx, rcx
je 0x18000a57f
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x5580], r15
test rax, rax
je 0x18000a572
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5588], r15
cmp qword [rdi + 0x55d0], r15
je 0x18000a5af
mov rbx, qword [rdi + 0x55d0]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
cmp rbx, rax
je 0x18000a5a8
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov qword [rdi + 0x55d0], r15
mov rcx, qword [rdi + 0x55e0]
test rcx, rcx
je 0x18000a5e1
mov rax, qword [0x1800c8be0]
mov qword [rdi + 0x55d8], r15
test rax, rax
je 0x18000a5d4
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x55e0], r15
mov byte [rdi], r15b
add rsp, 0x20
pop r15
pop rdi
pop rbx
ret