Function at 0x140046c80
Capabilities:
Enumerate gui resources

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x37]
sub rsp, 0xd0
mov qword [rbp - 0x11], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov r12, r8
mov r15, rdx
mov r13, rcx
xor r14d, r14d
mov qword [rbp - 0x49], r14
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x41], xmm0
cmp r9d, 1
jne 0x140046dc2
movdqu xmmword [rbp - 0x79], xmm0
mov qword [rbp - 0x69], r14
lea r9, [rbp - 0x79]
xor r8d, r8d
mov edx, dword [rbp + 0x5f]
call fcn.140046880
mov rax, qword [rbp - 0x71]
mov rbx, qword [rbp - 0x79]
sub rax, rbx
sar rax, 5
test rax, rax
je 0x140046d3d
lea r8, [rbx + 8]
xor edx, edx
lea rcx, [rbp - 0x49]
call fcn.140044e50
mov rax, qword [r12 + 0x40]
cmp qword [r12 + 0x48], rax
je 0x140046d28
mov rdx, qword [rbp - 0x79]
mov rcx, rax
call fcn.1400452a0
add qword [r12 + 0x40], 0x20
jmp 0x140046d39
mov r8, qword [rbp - 0x79]
mov rdx, rax
lea rcx, [r12 + 0x38]
call fcn.140044cb0
mov rbx, qword [rbp - 0x79]
test rbx, rbx
je 0x140046f59
mov rdi, qword [rbp - 0x71]
cmp rbx, rdi
je 0x140046d87
nop
mov rcx, qword [rbx]
add rcx, 0xfffffffffffffff4
cmp rcx, qword [0x140104010]
je 0x140046d7a
mov eax, 0xffffffff
lock xadd dword [rcx], eax
sub eax, 1
jg 0x140046d7a
mov rcx, qword [rbx]
sub rcx, 0xc
call fcn.1400bf5e4
add rbx, 0x20
cmp rbx, rdi
jne 0x140046d50
mov rbx, qword [rbp - 0x79]
mov rdx, qword [rbp - 0x69]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x140046efa
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140046efa
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp r9d, 2
jne 0x140046f04
movdqu xmmword [rbp - 0x61], xmm0
mov qword [rbp - 0x51], r14
mov dword [rbp - 0x1d], 1
mov eax, dword [rbp + 0x5f]
mov dword [rbp - 0x21], eax
lea rax, [rbp - 0x61]
mov qword [rbp - 0x19], rax
lea rdx, [rbp - 0x21]
lea rcx, [0x140046640]
call qword [sym.imp.USER32.dll_EnumWindows]
mov edi, r14d
mov rax, qword [rbp - 0x59]
mov rcx, qword [rbp - 0x61]
sub rax, rcx
sar rax, 5
test eax, eax
jle 0x140046e64
mov rbx, r14
mov rdx, qword [rbp - 0x41]
nop dword [rax + rax]
lea r8, [rcx + 8]
add r8, rbx
cmp qword [rbp - 0x39], rdx
je 0x140046e3e
movups xmm0, xmmword [r8]
movups xmmword [rdx], xmm0
add rdx, 0x10
mov qword [rbp - 0x41], rdx
jmp 0x140046e4b
lea rcx, [rbp - 0x49]
call fcn.140044e50
mov rdx, qword [rbp - 0x41]
inc edi
add rbx, 0x20
mov rax, qword [rbp - 0x59]
mov rcx, qword [rbp - 0x61]
sub rax, rcx
sar rax, 5
cmp edi, eax
jl 0x140046e20
lea rcx, [r12 + 0x38]
lea rdx, [rbp - 0x61]
call fcn.140045490
nop
mov rbx, qword [rbp - 0x61]
test rbx, rbx
je 0x140046f59
mov rdi, qword [rbp - 0x59]
cmp rbx, rdi
je 0x140046ec7
nop dword [rax]
mov rcx, qword [rbx]
add rcx, 0xfffffffffffffff4
cmp rcx, qword [0x140104010]
je 0x140046eba
mov eax, 0xffffffff
lock xadd dword [rcx], eax
sub eax, 1
jg 0x140046eba
mov rcx, qword [rbx]
sub rcx, 0xc
call fcn.1400bf5e4
add rbx, 0x20
cmp rbx, rdi
jne 0x140046e90
mov rbx, qword [rbp - 0x61]
mov rdx, qword [rbp - 0x51]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x140046efa
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140046efa
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.1400bf5e4
jmp 0x140046f59
mov ecx, 0x4e
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov esi, eax
mov ecx, 0x4f
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
mov ecx, 0x4c
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
mov dword [rbp - 0x31], eax
mov ecx, 0x4d
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov edx, eax
mov dword [rbp - 0x2d], eax
lea eax, [rsi + rbx]
mov dword [rbp - 0x29], eax
lea eax, [rdi + rdx]
mov dword [rbp - 0x25], eax
lea r8, [rbp - 0x31]
xor edx, edx
lea rcx, [rbp - 0x49]
call fcn.140044e50
mov dword [r12], 1
mov ecx, 0x4e
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
mov ecx, 0x4f
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
mov ecx, 0x4c
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [r12 + 0x10], eax
mov ecx, 0x4d
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [r12 + 0x14], eax
mov ecx, dword [r12 + 0x10]
add ecx, edi
mov dword [r12 + 0x18], ecx
add eax, ebx
mov dword [r12 + 0x1c], eax
lea rcx, [r12 + 8]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea rax, [rsp + 0x40]
mov qword [rbp - 0x31], rax
mov rax, qword [0x140104018]
mov qword [rsp + 0x40], rax
test r15, r15
je 0x14004702c
mov rax, r15
shr rax, 0x10
test ax, ax
jne 0x140046fef
movzx edx, r15w
lea rcx, [rsp + 0x40]
call fcn.140001ff0
jmp 0x14004702c
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rbx, eax
test eax, eax
je 0x14004702c
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.140001970
test eax, eax
je 0x14004702c
mov r9, rbx
add r9, r9
lea eax, [rbx + 1]
movsxd rdx, eax
add rdx, rdx
mov r8, r15
mov rcx, qword [rsp + 0x40]
call fcn.1400029b0
nop
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 9]
call fcn.1400450d0
mov rdx, rax
lea rax, [r12 + 0x20]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp + 0x77]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 0x6f]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x67]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x7f]
lea r8, [rsp + 0x40]
mov rcx, r13
call fcn.140045930
test eax, eax
setne r14b
mov rcx, qword [rbp - 0x49]
test rcx, rcx
je 0x1400470b3
mov rdx, qword [rbp - 0x39]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400470ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400470ae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400bf5e4
mov eax, r14d
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret