Function at 0x140048660
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x100
mov rax, qword [0x140155040]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov rdi, rdx
mov qword [rsp + 0x58], rdx
mov rsi, rcx
mov qword [rsp + 0x78], rdx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x80], xmm0
movups xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xa0], rax
xor r14d, r14d
mov r13d, r14d
lea r9, [rsp + 0x68]
lea r8, [0x1400e90f0]
lea rdx, [0x1400e9110]
lea rcx, str.comdlg32.dll
call fcn.140073880
test eax, eax
js 0x140048727
mov rdi, qword [rsp + 0x68]
mov edx, 4
mov r8d, 0x10
mov rcx, qword [0x140159238]
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov rbx, rax
mov byte [rax + 1], 1
test rdi, rdi
je 0x140048716
mov byte [rax], 1
mov qword [rax + 8], rdi
mov rdi, qword [rsp + 0x58]
jmp 0x14004872a
mov ecx, 0xc000000d
call qword [sym.imp.ntdll.dll_RtlRaiseStatus]
int3
mov rbx, r14
test rbx, rbx
je 0x140048765
lea rdx, str.Resource_data__.data_
mov rcx, rbx
call fcn.140071b60
mov rdx, rbx
mov rcx, rdi
call fcn.140071ac0
test al, al
je 0x140048758
mov rcx, rbx
call fcn.140071ee0
mov r13, rax
mov rcx, rbx
call fcn.140071a20
mov qword [rsp + 0x70], r13
test r13, r13
je 0x140048a79
mov rdx, qword ds:[rsp + 0x150]
mov ecx, dword [rdx + 0x60]
test ecx, ecx
jne 0x1400487a6
lea rdx, [0x14015a500]
lea rcx, [rsp + 0x80]
call fcn.14005b180
test eax, eax
jns 0x1400487b4
mov esi, 0xffffffff
jmp 0x140048a66
cmp ecx, 1
jne 0x1400487bc
lea rdx, [rsi + 0x110]
jmp 0x14004878b
mov rdx, qword [rsp + 0x150]
mov r12d, r14d
mov dword [rsp + 0x50], r14d
mov esi, 0xffffffff
nop dword [rax]
cmp r12d, dword [rsp + 0x98]
jae 0x140048a4b
mov eax, r12d
lea rcx, [rax + rax*4]
mov rax, qword [rsp + 0xa0]
movups xmm2, xmmword [rax + rcx*8 + 0x10]
movups xmmword [rsp + 0xa8], xmm2
mov edi, dword [rax + rcx*8 + 0x18]
cmp rdi, qword [rdx + 0x68]
jne 0x140048a3e
movdqa xmm0, xmm2
psrldq xmm0, 8
movq rax, xmm0
shr rax, 0x20
test eax, eax
je 0x140048a3e
mov dword [rsp + 0x38], 0x60
mov dword [rsp + 0x30], 5
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 0x80
mov r8d, 0x12019f
mov rdx, qword [r13 + 8]
lea rcx, [rsp + 0x60]
call fcn.140076e00
mov ebx, eax
mov dword [rsp + 0x54], eax
test eax, eax
js 0x140048954
test edi, edi
jne 0x140048873
mov rcx, r14
jmp 0x1400488d7
mov edx, r14d
mov r9d, dword [0x14015a520]
test r9d, r9d
je 0x1400488b3
mov r10, qword [0x14015a528]
nop dword [rax]
mov eax, edx
lea rcx, [rax + rax*4]
lea r8, [r10 + rcx*8]
mov ecx, dword [r8 + 0xc]
cmp edi, ecx
jb 0x1400488ac
add ecx, dword [r8 + 0x10]
cmp edi, ecx
jb 0x1400488b6
inc edx
cmp edx, r9d
jb 0x140048890
mov r8, r14
test r8, r8
jne 0x1400488c2
mov rcx, r14
jmp 0x1400488d7
mov ecx, dword [r8 + 0x14]
mov eax, dword [r8 + 0xc]
sub rcx, rax
add rcx, rdi
add rcx, qword [0x14015a508]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], r14
movups xmm0, xmmword [rsp + 0xa8]
psrldq xmm0, 0xc
movd dword [rsp + 0x30], xmm0
mov qword [rsp + 0x28], rcx
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.ntdll.dll_NtWriteFile]
mov ebx, eax
mov dword [rsp + 0x54], eax
jmp 0x14004894b
mov rcx, rdi
call qword [sym.imp.ntdll.dll_NtClose]
test ebx, ebx
jns 0x140048a36
mov ecx, r14d
cmp ebx, 0xc0000022
je 0x14004898d
cmp ebx, 0xc0000005
je 0x14004898d
mov eax, ebx
shr eax, 0x10
and eax, 0xfff
cmp eax, 7
jne 0x140048984
movzx ecx, bx
jmp 0x14004899c
cmp eax, 0xb
jne 0x14004899c
mov ecx, ebx
jmp 0x14004899c
lfence
mov ecx, dword [rsp + 0x54]
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosErrorNoTeb]
mov ecx, eax
lfence
test ecx, ecx
jne 0x1400489af
mov ecx, dword [rsp + 0x54]
call fcn.14006e580
jmp 0x1400489b4
call fcn.14006e860
mov rbx, rax
lea r9, str.Unable_to_save_resource.
mov rcx, qword [rsp + 0x58]
test rax, rax
je 0x140048a25
lfence
lfence
mov rax, qword [rax + 8]
mov qword [rsp + 0x28], rax
lea rax, [0x14013b8a8]
mov qword [rsp + 0x20], rax
mov edx, 0x20
mov r8d, 0xfffe
call fcn.14006eba0
lea rcx, ds:[rbx - 0x10]
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140048a36
lfence
call fcn.1400602c0
mov rdx, qword ds:[rsp + 0x150]
inc r12d
mov dword [rsp + 0x50], r12d
jmp 0x1400487d0
lea r8, [0x14013b8a8]
mov edx, 0x10
call fcn.14006eb20
mov rdx, qword [rsp + 0x150]
inc r12d
mov dword [rsp + 0x50], r12d
jmp 0x1400487d0
mov r8, qword ds:[rsp + 0xa0]
xor edx, edx
mov rcx, qword [0x140159238]
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
lea rcx, [r13 - 0x10]
lock xadd dword [rcx + 8], esi
cmp esi, 1
jne 0x140048a79
call fcn.1400602c0
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.1400c6a20
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret