Function at 0x140052040
Capabilities:
Enumerate gui resources

Disassembly:
mov qword [rsp + 0x18], rbx
mov byte [rsp + 0x20], r9b
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
mov rdi, rdx
mov r14, rcx
xor r12d, r12d
mov dword [rsp + 0x20], r12d
lea r13, vtable.JRWndPtr.0
mov qword [rcx], r13
mov qword [rcx + 8], r12
mov dword [rcx + 0x10], r12d
mov r15d, 1
mov dword [rsp + 0x20], r15d
cmp qword [rdx + 8], r12
jne 0x14005236c
xor edx, edx
lea rcx, [rsp + 0x28]
call fcn.140067310
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400520e3
mov rax, qword [rcx]
call qword [rax + 0x308]
test al, al
je 0x1400520e3
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
call qword [rax + 0x548]
nop
lea r15d, [r12 + 3]
mov rcx, qword [rbp - 0x49]
jmp 0x1400520fc
mov qword [rbp - 0x51], r13
mov rcx, r12
mov qword [rbp - 0x49], rcx
mov dword [rbp - 0x41], r12d
lea rax, [rbp - 0x51]
mov r15d, 5
mov dword [rsp + 0x20], r15d
mov qword [rsp + 0x58], r13
mov qword [rbp - 0x79], r12
mov dword [rbp - 0x71], r12d
lea rdx, [rsp + 0x58]
cmp rax, rdx
je 0x140052178
mov dword [rbp - 0x71], r12d
mov qword [rbp - 0x79], r12
mov edx, dword [rax + 0x10]
cmp edx, 2
jne 0x140052161
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14005214c
mov rax, qword [rcx]
call qword [rax + 0x300]
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.14004fd90
jmp 0x140052174
mov rax, r12
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.14004fd90
jmp 0x140052174
cmp edx, 1
jne 0x140052178
mov rdx, qword [rax + 8]
lea rcx, [rsp + 0x58]
call fcn.14004fca0
mov rcx, qword [rbp - 0x49]
test r15b, 4
je 0x1400521c8
and r15d, 0xfffffffb
mov dword [rsp + 0x20], r15d
mov qword [rbp - 0x51], r13
test rcx, rcx
je 0x1400521a7
cmp dword [rbp - 0x41], 1
jne 0x1400521a7
mov rax, qword [rcx]
lea rdx, [rbp - 0x51]
call qword [rax + 0x608]
mov rcx, qword [rbp - 0x49]
cmp dword [rbp - 0x41], 2
jne 0x1400521c0
test rcx, rcx
je 0x1400521c0
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rbp - 0x41], r12d
mov qword [rbp - 0x49], r12
test r15b, 2
je 0x140052224
and r15d, 0xfffffffd
mov dword [rsp + 0x20], r15d
mov qword [rsp + 0x40], r13
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140052200
cmp dword [rsp + 0x50], 1
jne 0x140052200
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
call qword [rax + 0x608]
mov rcx, qword [rsp + 0x48]
cmp dword [rsp + 0x50], 2
jne 0x14005221a
test rcx, rcx
je 0x14005221a
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rsp + 0x50], r12d
mov qword [rsp + 0x48], r12
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x1400522e1
mov rax, qword [rcx]
call qword [rax + 0x308]
test al, al
je 0x1400522e1
lea rax, [rsp + 0x58]
cmp rax, rdi
je 0x1400522e1
mov r8, qword [rdi + 8]
mov rcx, r8
test r8, r8
je 0x140052272
cmp dword [rdi + 0x10], 1
jne 0x140052272
mov rax, qword [r8]
mov rdx, rdi
call qword [rax + 0x608]
mov rcx, qword [rdi + 8]
cmp dword [rdi + 0x10], 2
jne 0x14005228b
test rcx, rcx
je 0x14005228b
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rdi + 0x10], r12d
mov qword [rdi + 8], r12
cmp dword [rbp - 0x71], 2
jne 0x1400522ce
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x1400522bb
mov rax, qword [rcx]
call qword [rax + 0x300]
xor r8d, r8d
mov rdx, rax
mov rcx, rdi
call fcn.14004fd90
jmp 0x1400522e1
mov rax, r12
xor r8d, r8d
mov rdx, rax
mov rcx, rdi
call fcn.14004fd90
jmp 0x1400522e1
cmp dword [rbp - 0x71], 1
jne 0x1400522e1
mov rdx, qword [rbp - 0x79]
mov rcx, rdi
call fcn.14004fca0
nop
mov qword [rsp + 0x58], r13
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x140052303
cmp dword [rbp - 0x71], 1
jne 0x140052303
mov rax, qword [rcx]
lea rdx, [rsp + 0x58]
call qword [rax + 0x608]
cmp dword [rbp - 0x71], 2
jne 0x140052320
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x140052320
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rbp - 0x71], r12d
mov qword [rbp - 0x79], r12
mov qword [rsp + 0x28], r13
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14005234c
cmp dword [rsp + 0x38], 1
jne 0x14005234c
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
call qword [rax + 0x608]
cmp dword [rsp + 0x38], 2
jne 0x14005236c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14005236c
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
nop
cmp qword [rdi + 8], 0
jne 0x140052584
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x39], xmm0
movups xmmword [rbp - 0x29], xmm0
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm0
mov qword [rbp + 7], rax
mov dword [rbp - 0x39], 0x48
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rdx, [rbp - 0x39]
mov ecx, eax
call qword [sym.imp.USER32.dll_GetGUIThreadInfo]
test eax, eax
je 0x140052493
mov rdx, qword [rbp - 0x31]
lea rcx, [rsp + 0x28]
call fcn.1400539e0
nop
mov rsi, qword [rsp + 0x30]
test rsi, rsi
je 0x14005244e
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, eax
mov rax, qword [rsi]
lea rdx, [rbp + 0x7f]
mov rcx, rsi
call qword [rax + 0x340]
cmp dword [rax], ebx
jne 0x140052449
mov rdx, qword [rbp - 0x31]
lea rcx, [rsp + 0x40]
call fcn.1400539e0
nop
mov rdx, rax
mov rcx, rdi
call fcn.14004feb0
nop
mov qword [rsp + 0x40], r13
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x14005242e
cmp dword [rsp + 0x50], 1
jne 0x14005242e
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
call qword [rax + 0x608]
mov rcx, qword [rsp + 0x48]
cmp dword [rsp + 0x50], 2
jne 0x140052449
test rcx, rcx
je 0x140052449
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
nop
mov rsi, qword [rsp + 0x30]
mov qword [rsp + 0x28], r13
test rsi, rsi
je 0x140052475
cmp dword [rsp + 0x38], 1
jne 0x140052475
mov rax, qword [rsi]
lea rdx, [rsp + 0x28]
mov rcx, rsi
call qword [rax + 0x608]
mov rsi, qword [rsp + 0x30]
cmp dword [rsp + 0x38], 2
jne 0x140052493
test rsi, rsi
je 0x140052493
mov rax, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [rax + 0x2e8]
nop
cmp qword [rdi + 8], 0
jne 0x140052584
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x50], r12d
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], r12
mov dword [rbp - 0x21], 0xe
mov qword [rbp - 0x19], r12
lea rdx, [rbp - 0x39]
lea rcx, [0x140053b00]
call qword [sym.imp.USER32.dll_EnumWindows]
mov rbx, qword [rbp - 0x29]
mov qword [rsp + 0x40], r13
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140052502
cmp dword [rsp + 0x50], 1
jne 0x140052502
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
call qword [rax + 0x608]
mov rcx, qword [rsp + 0x48]
cmp dword [rsp + 0x50], 2
jne 0x14005251c
test rcx, rcx
je 0x14005251c
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rsp + 0x50], r12d
mov qword [rsp + 0x48], r12
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.1400539e0
nop
mov rdx, rax
mov rcx, rdi
call fcn.14004feb0
nop
mov qword [rsp + 0x28], r13
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140052569
cmp dword [rsp + 0x38], 1
jne 0x140052569
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
call qword [rax + 0x608]
mov rcx, qword [rsp + 0x30]
cmp dword [rsp + 0x38], 2
jne 0x140052584
test rcx, rcx
je 0x140052584
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
nop
mov rsi, qword [rdi + 8]
test rsi, rsi
je 0x1400525ec
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, eax
mov rax, qword [rsi]
lea rdx, [rbp + 0x7f]
mov rcx, rsi
call qword [rax + 0x340]
cmp dword [rax], ebx
je 0x1400525ec
mov r8, qword [rdi + 8]
mov rcx, r8
test r8, r8
je 0x1400525cb
cmp dword [rdi + 0x10], 1
jne 0x1400525cb
mov rax, qword [r8]
mov rdx, rdi
call qword [rax + 0x608]
mov rcx, qword [rdi + 8]
cmp dword [rdi + 0x10], 2
jne 0x1400525e4
test rcx, rcx
je 0x1400525e4
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rdi + 0x10], r12d
mov qword [rdi + 8], r12
cmp qword [rdi + 8], 0
je 0x14005281e
mov rdx, rdi
mov rcx, r14
call fcn.14004feb0
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
call qword [rax + 0x450]
bt eax, 0x1e
jae 0x140052696
nop dword [rax]
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
call qword [rax + 0x518]
nop
mov rdx, rax
mov rcx, r14
call fcn.14004feb0
nop
mov qword [rsp + 0x28], r13
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140052668
cmp dword [rsp + 0x38], 1
jne 0x140052668
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
call qword [rax + 0x608]
mov rcx, qword [rsp + 0x30]
cmp dword [rsp + 0x38], 2
jne 0x140052683
test rcx, rcx
je 0x140052683
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
nop
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
call qword [rax + 0x450]
bt eax, 0x1e
jb 0x140052620
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x14005281e
mov rax, qword [rcx]
lea rdx, [rbp - 0x69]
call qword [rax + 0x550]
nop
mov rcx, qword [rbp - 0x61]
test rcx, rcx
je 0x1400527e4
cmp dword [rbp - 0x59], 2
jne 0x140052704
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x1400526e2
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x300]
mov rbx, rax
mov rcx, qword [rbp - 0x61]
jmp 0x1400526e5
mov rbx, r12
test rcx, rcx
je 0x1400526fc
mov rax, qword [rcx]
call qword [rax + 0x300]
mov rcx, qword [rbp - 0x61]
cmp rbx, rax
jmp 0x14005271b
mov rax, r12
cmp rbx, rax
jmp 0x14005271b
cmp dword [rbp - 0x59], 1
jne 0x140052710
cmp qword [r14 + 8], rcx
jmp 0x14005271b
cmp dword [rbp - 0x59], 0
jne 0x140052726
cmp dword [r14 + 0x10], 0
sete al
test al, al
jne 0x1400527e4
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, str.JRMenuWnd
call qword [rax + 0x390]
test al, al
jne 0x1400527e0
lea rax, [rbp - 0x69]
cmp rax, r14
je 0x1400527e0
mov r8, qword [r14 + 8]
mov rcx, r8
test r8, r8
je 0x140052771
cmp dword [r14 + 0x10], 1
jne 0x140052771
mov rax, qword [r8]
mov rdx, r14
call qword [rax + 0x608]
mov rcx, qword [r14 + 8]
cmp dword [r14 + 0x10], 2
jne 0x14005278b
test rcx, rcx
je 0x14005278b
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [r14 + 0x10], r12d
mov qword [r14 + 8], r12
cmp dword [rbp - 0x59], 2
jne 0x1400527ce
mov rcx, qword [rbp - 0x61]
test rcx, rcx
je 0x1400527bb
mov rax, qword [rcx]
call qword [rax + 0x300]
xor r8d, r8d
mov rdx, rax
mov rcx, r14
call fcn.14004fd90
jmp 0x1400527e0
mov rax, r12
xor r8d, r8d
mov rdx, rax
mov rcx, r14
call fcn.14004fd90
jmp 0x1400527e0
cmp dword [rbp - 0x59], 1
jne 0x1400527e0
mov rdx, qword [rbp - 0x61]
mov rcx, r14
call fcn.14004fca0
mov rcx, qword [rbp - 0x61]
mov qword [rbp - 0x69], r13
test rcx, rcx
je 0x140052804
cmp dword [rbp - 0x59], 1
jne 0x140052804
mov rax, qword [rcx]
lea rdx, [rbp - 0x69]
call qword [rax + 0x608]
mov rcx, qword [rbp - 0x61]
cmp dword [rbp - 0x59], 2
jne 0x14005281e
test rcx, rcx
je 0x14005281e
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
nop
cmp qword [r14 + 8], 0
jne 0x140052893
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rdx, rax
lea rcx, [rsp + 0x28]
call fcn.1400539e0
or r15d, 8
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0x28]
mov rcx, r14
call fcn.14004feb0
nop
mov qword [rsp + 0x28], r13
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140052878
cmp dword [rsp + 0x38], 1
jne 0x140052878
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
call qword [rax + 0x608]
mov rcx, qword [rsp + 0x30]
cmp dword [rsp + 0x38], 2
jne 0x140052893
test rcx, rcx
je 0x140052893
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
nop
mov qword [rdi], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400528b1
cmp dword [rdi + 0x10], 1
jne 0x1400528b1
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 0x608]
cmp dword [rdi + 0x10], 2
jne 0x1400528ce
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400528ce
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x2e8]
mov dword [rdi + 0x10], r12d
mov qword [rdi + 8], r12
mov rax, r14
mov rbx, qword [rsp + 0x150]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret