Function at 0x180021010
Capabilities:
Enumerate gui resources
Write file on windows

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
mov qword [rbp - 0x29], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1802240e0]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov r14, rcx
xor r15d, r15d
lea rdi, [rcx + 0x40]
mov qword [rbp - 0x61], rdi
xor sil, sil
mov byte [rbp - 0x59], sil
test rdi, rdi
je 0x18002108d
mov rcx, qword [rdi]
test rcx, rcx
je 0x180021089
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x180021082
xor sil, sil
jmp 0x180021089
mov byte [rdi + 8], 1
mov sil, 1
mov byte [rbp - 0x59], sil
lea rbx, [r14 + 0x38]
mov qword [rbp - 0x69], rbx
test rbx, rbx
je 0x1800210a9
mov rcx, qword [rbx]
test rcx, rcx
je 0x1800210a9
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov rcx, r14
call fcn.1800212b0
mov qword [rbp - 0x79], r15
lea rdx, [r14 + 0x18]
cmp qword [rdx + 0x18], 8
jb 0x1800210c3
mov rdx, qword [rdx]
lea r8, [0x1801b6108]
lea rcx, [rbp - 0x79]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen_s]
test eax, eax
jne 0x180021202
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x180021202
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
mov eax, dword [rbp - 0x49]
and eax, 0xffffff00
mov dword [rbp - 0x49], eax
btr eax, 8
mov dword [rbp - 0x49], eax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x41], xmm0
mov qword [rbp - 0x31], r15
lea r12, vtable.RCJson::Writer.0
mov qword [rbp - 1], r12
lea r13, vtable.RCJson::FastWriter.0
mov qword [rbp - 1], r13
mov qword [rbp + 0x17], r15
mov qword [rbp + 0x1f], r15
mov qword [rbp + 0x17], r15
mov qword [rbp + 0x1f], InitCommonControls
mov byte [rbp + 7], 0
mov word [rbp + 0x27], 0
mov byte [rbp + 0x29], 0
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x21]
lea rcx, [rbp - 1]
call fcn.1800e7a90
nop
lea rcx, [rbp - 0x21]
cmp qword [rbp - 9], 0x10
cmovae rcx, qword [rbp - 0x21]
mov r9, qword [rbp - 0x79]
mov r8, qword [rbp - 0x11]
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, qword [rbp - 0x79]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rdx, r14
lea rcx, [0x18001faf0]
call qword [sym.imp.USER32.dll_EnumWindows]
nop
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x1800211d6
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800211d1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800211d1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017df04
mov qword [rbp - 0x11], r15
mov qword [rbp - 9], InitCommonControls
mov byte [rbp - 0x21], 0
mov qword [rbp - 1], r13
lea rcx, [rbp + 7]
call fcn.1800070e0
nop
mov qword [rbp - 1], r12
lea rcx, [rbp - 0x51]
call fcn.1800e9610
nop
test rbx, rbx
je 0x180021219
mov rcx, qword [rbx]
test rcx, rcx
je 0x180021215
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rbp - 0x69], r15
test rdi, rdi
je 0x180021235
test sil, sil
je 0x180021235
mov rcx, qword [rdi]
test rcx, rcx
je 0x180021231
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rdi + 8], 0
mov qword [rbp - 0x61], r15
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.18017dee0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret