Function at 0x140055ec0
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7b0]
sub rsp, 0x8b0
mov rax, qword [0x1402cf910]
xor rax, rsp
mov qword [rbp + 0x7a0], rax
mov rdi, rcx
xor esi, esi
mov dword [rsp + 0x30], esi
call fcn.14006fc48
xor edx, edx
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetSystemMenu]
mov rcx, rax
call fcn.140098194
mov r15, rax
lea r14, [rsi - 1]
test rax, rax
je 0x140055f9d
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057527
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x30], rax
lea edx, [rsi + 0x65]
lea rcx, [rbp - 0x30]
call fcn.140003220
mov rbx, qword [rbp - 0x30]
cmp dword [rbx - 0x10], esi
je 0x140055f83
xor r9d, r9d
xor r8d, r8d
mov edx, 0x800
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_AppendMenuW]
mov r9, rbx
xor edx, edx
lea r8d, [rsi + 0x10]
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_AppendMenuW]
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140055f9d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r9, qword [rdi + 0x130]
mov edx, 0x80
lea r8d, [rdx - 0x7f]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, qword [rdi + 0x130]
xor r8d, r8d
mov edx, 0x80
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r8d, 0x40
lea rdx, [rdi + 0x818]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetWindowTextA]
mov r8, r14
nop word [rax + rax]
inc r8
cmp byte [rdi + r8 + 0x818], 0
jne 0x140055ff0
inc r8
mov qword [rbp - 0x28], 0x64
mov qword [rsp + 0x20], r8
lea r9, [rdi + 0x818]
lea rdx, [rbp]
lea rcx, [rbp - 0x28]
call fcn.140200aa0
xor r15b, r15b
mov rax, qword [0x1402de1d0]
test rax, rax
je 0x14005603b
call rax
test eax, eax
setne r15b
jmp 0x140056081
lea rcx, [0x14028e078]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rbx, rax
test rax, rax
je 0x140056456
lea rdx, [0x14028e090]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1402de1d0], rax
test rax, rax
je 0x140056078
call rax
test eax, eax
setne r15b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r15b, r15b
je 0x140056456
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x48], rsi
lea rbx, vtable.CBitmap.0
mov qword [rbp - 0x50], rbx
movdqu xmmword [rbp - 0x68], xmm0
mov dword [rbp - 0x58], 4
call fcn.140074f50
mov edx, 0x96
mov rcx, qword [rax + 0x18]
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14006bda8
lea rcx, [rdi + 0x148]
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 5
mov edx, 0x20
lea r9d, [rdx - 7]
mov r8d, edx
call fcn.1400723f8
mov r8d, 0x808000
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x150]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x70], rax
lea rcx, [rdi + 0x1f98]
test rcx, rcx
jne 0x140056127
mov rcx, rsi
jmp 0x14005612b
mov rcx, qword [rcx + 0x40]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x1602
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rbp - 0x50]
call fcn.14006bf04
call fcn.140074f50
mov edx, 0x14b
mov rcx, qword [rax + 0x18]
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14006bda8
lea rcx, [rdi + 0x158]
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 5
mov edx, 0x20
lea r9d, [rdx - 7]
mov r8d, edx
call fcn.1400723f8
mov r8d, 0x808000
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x160]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rax, qword [rdi + 0x160]
mov qword [rbp - 0x70], rax
lea rcx, [rdi + 0x2718]
test rcx, rcx
jne 0x1400561c1
mov rcx, rsi
jmp 0x1400561c5
mov rcx, qword [rcx + 0x40]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x1602
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rbp - 0x50]
call fcn.14006bf04
call fcn.140074f50
mov edx, 0x142
mov rcx, qword [rax + 0x18]
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14006bda8
lea rcx, [rdi + 0x168]
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 5
mov edx, 0x20
lea r9d, [rdx - 7]
mov r8d, edx
call fcn.1400723f8
mov r8d, 0x808000
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x170]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rax, qword [rdi + 0x170]
mov qword [rbp - 0x70], rax
lea rcx, [rdi + 0x2800]
test rcx, rcx
jne 0x14005625b
mov rcx, rsi
jmp 0x14005625f
mov rcx, qword [rcx + 0x40]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x1602
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rbp - 0x50]
call fcn.14006bf04
call fcn.140074f50
mov edx, 0x13f
mov rcx, qword [rax + 0x18]
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14006bda8
lea rcx, [rdi + 0x1a8]
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 5
mov edx, 0x20
lea r9d, [rdx - 7]
mov r8d, edx
call fcn.1400723f8
mov r8d, 0x808000
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x1b0]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rax, qword [rdi + 0x1b0]
mov qword [rbp - 0x70], rax
lea r15, [rdi + 0x2b68]
test r15, r15
mov rcx, rsi
je 0x1400562f7
mov rcx, qword [r15 + 0x40]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x1602
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rbp - 0x50]
call fcn.14006bf04
call fcn.140074f50
mov edx, 0x149
mov rcx, qword [rax + 0x18]
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14006bda8
lea rcx, [rdi + 0x198]
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 5
mov edx, 0x20
lea r9d, [rdx - 7]
mov r8d, edx
call fcn.1400723f8
mov r8d, 0x808000
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x1a0]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rax, qword [rdi + 0x1a0]
mov qword [rbp - 0x70], rax
lea rcx, [rdi + 0x2c50]
test rcx, rcx
jne 0x14005638d
mov rcx, rsi
jmp 0x140056391
mov rcx, qword [rcx + 0x40]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x1602
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rbp - 0x50]
call fcn.14006bf04
call fcn.140074f50
mov edx, 0x148
mov rcx, qword [rax + 0x18]
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14006bda8
lea rcx, [rdi + 0x188]
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 5
mov edx, 0x20
lea r9d, [rdx - 7]
mov r8d, edx
call fcn.1400723f8
mov r8d, 0x808000
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x190]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rax, qword [rdi + 0x190]
mov qword [rbp - 0x70], rax
lea rcx, [rdi + 0x2a80]
test rcx, rcx
jne 0x140056427
mov rcx, rsi
jmp 0x14005642b
mov rcx, qword [rcx + 0x40]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x1602
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rbp - 0x50]
call fcn.14006bf04
nop
mov qword [rbp - 0x50], rbx
lea rcx, [rbp - 0x50]
call fcn.1400039e0
jmp 0x14005645d
lea r15, [rdi + 0x2b68]
mov ecx, 0x120
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056491
xor edx, edx
mov r8d, 0x120
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.1400750d4
mov rcx, rax
jmp 0x140056494
mov rcx, rsi
mov qword [rdi + 0x1b8], rcx
mov rax, qword [rcx]
xor r8d, r8d
mov rdx, rdi
call qword [rax + 0x2c8]
test eax, eax
je 0x1400567be
mov qword [rsp + 0x50], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057532
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x30], 1
mov edx, 0x194
lea rcx, [rsp + 0x50]
call fcn.140003220
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov rbx, qword [rsp + 0x50]
mov r8, rbx
mov rdx, r15
mov rcx, qword [rdi + 0x1b8]
call fcn.14007521c
mov dword [rsp + 0x30], esi
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14005652c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov qword [rsp + 0x58], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x14005753d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x30], 2
mov edx, VarBstrFromDisp
lea rcx, [rsp + 0x58]
call fcn.140003220
lea rdx, [rdi + 0x2800]
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov rbx, qword [rsp + 0x58]
mov r8, rbx
mov rcx, qword [rdi + 0x1b8]
call fcn.14007521c
mov dword [rsp + 0x30], esi
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400565aa
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov qword [rsp + 0x60], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057548
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x30], 4
mov edx, 0x195
lea rcx, [rsp + 0x60]
call fcn.140003220
lea rdx, [rdi + 0x2718]
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov rbx, qword [rsp + 0x60]
mov r8, rbx
mov rcx, qword [rdi + 0x1b8]
call fcn.14007521c
mov dword [rsp + 0x30], esi
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140056628
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov qword [rsp + 0x68], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057553
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x30], 8
mov edx, 0x196
lea rcx, [rsp + 0x68]
call fcn.140003220
lea rdx, [rdi + 0x1f98]
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov rbx, qword [rsp + 0x68]
mov r8, rbx
mov rcx, qword [rdi + 0x1b8]
call fcn.14007521c
mov dword [rsp + 0x30], esi
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400566a6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov qword [rsp + 0x70], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x14005755e
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x30], 0x10
mov edx, 0x197
lea rcx, [rsp + 0x70]
call fcn.140003220
lea rdx, [rdi + 0x2c50]
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov rbx, qword [rsp + 0x70]
mov r8, rbx
mov rcx, qword [rdi + 0x1b8]
call fcn.14007521c
mov dword [rsp + 0x30], esi
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140056724
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov qword [rsp + 0x78], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057569
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x30], 0x20
mov edx, 0x198
lea rcx, [rsp + 0x78]
call fcn.140003220
lea rdx, [rdi + 0x2a80]
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov rbx, qword [rsp + 0x78]
mov r8, rbx
mov rcx, qword [rdi + 0x1b8]
call fcn.14007521c
mov dword [rsp + 0x30], esi
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400567a1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rdi + 0x1b8]
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rcx + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9d, 0x3e80000
xor r8d, r8d
mov edx, 0x401
mov rcx, qword [rdi + 0x2350]
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, 0x1e20d8
call fcn.1401fa840
mov qword [rdi + 0xd18], rax
test rax, rax
jne 0x14005685a
mov qword [rbp - 0x80], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057574
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
mov dword [rsp + 0x30], 0x40
mov edx, 0x6c
lea rcx, [rbp - 0x80]
call fcn.140003220
xor r8d, r8d
xor edx, edx
mov rbx, qword [rbp - 0x80]
mov rcx, rbx
call fcn.14006ce00
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], r14d
sub r14d, 1
jg 0x140056853
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x1400574ec
xor edx, edx
mov r8d, 0x1e20d8
mov rcx, rax
call fcn.1401f0eb0
lea rcx, [rdi + 0xd20]
xor edx, edx
mov r8d, 0xc28
call fcn.1401f0eb0
mov r8d, 0x104
lea rdx, [rbp + 0x180]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea r9, [rbp + 0x390]
lea r8, [rbp + 0x590]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x180]
call fcn.140048200
mov r13d, esi
test al, al
je 0x14005690b
lea rbx, [rbp + 0x80]
mov r15d, 0x18
cmp r15d, 0xfffffff8
jle 0x14005690b
test rbx, rbx
je 0x140056902
mov rcx, rbx
call fcn.1401fc38c
mov r12d, eax
lea rdx, [0x140286c18]
mov rcx, rbx
call fcn.1401f02e0
mov rbx, rax
test rax, rax
je 0x1400568f9
add rbx, 2
mov ecx, r15d
shl r12d, cl
add r13d, r12d
sub r15d, 8
test rbx, rbx
jne 0x1400568c8
mov rax, qword [rdi + 0xd18]
mov dword [rax + 4], r13d
mov rax, qword [rdi + 0xd18]
mov dword [rax], 0x4149
mov rax, qword [rdi + 0xd18]
mov dword [rax + 0x20], 2
mov rcx, qword [rdi + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 8], rcx
mov rcx, rdi
call fcn.14005bdb0
lea rcx, [rdi + 0x2310]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xa8], rcx
lea rbx, [rdi + 0x2178]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xb0], rbx
lea r15, [rdi + 0x23f8]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xb8], r15
lea r12, [rdi + 0x2588]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xc0], r12
lea r13, [rdi + 0x2090]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xc8], r13
mov rax, qword [rdi + 0xd18]
lea rcx, [rdi + 0xd20]
mov qword [rax + 0x18], rcx
mov rcx, qword [rdi + 0xd18]
call fcn.1400456d0
call fcn.1400486f0
test eax, eax
jne 0x140056ac0
mov qword [rsp + 0x48], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x14005757f
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x30], 0x80
mov edx, 0x14f
lea rcx, [rsp + 0x48]
call fcn.140003220
nop
mov qword [rbp - 0x78], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x14005758a
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x78], rax
mov dword [rsp + 0x30], 0x180
mov edx, 0x19b
lea rcx, [rbp - 0x78]
call fcn.140003220
mov r9d, 0x10
mov r8, qword [rsp + 0x48]
mov rbx, qword [rbp - 0x78]
mov rdx, rbx
mov rcx, rdi
call fcn.1400649a0
mov dword [rsp + 0x30], 0x80
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140056a8f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r14d
sub r14d, 1
jg 0x140056aad
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x308]
xor eax, eax
jmp 0x1400574ec
mov rax, qword [rdi + 0xd18]
mov dword [rax + 0xd0], 1
mov rax, qword [rdi + 0xd18]
mov dword [rax + 0x134], esi
mov rax, qword [rdi + 0x40]
mov rcx, qword [rdi + 0xd18]
mov qword [rdi + 0x8a8], rax
mov qword [rdi + 0x8b0], rcx
call fcn.140047370
mov rcx, qword [rdi + 0xd18]
mov rcx, qword [rcx + 0x28]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rax, qword [rdi + 0xd18]
mov ecx, dword [rax + 0x5c]
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, qword [rdi + 0xd18]
mov qword [rdx + 0x28], rax
mov rax, qword [rdi + 0xd18]
mov edx, dword [rax + 0x60]
mov dword [rdi + 0x24f0], edx
mov rcx, r15
call fcn.140042720
mov rax, qword [rdi + 0xd18]
mov edx, dword [rax + 0x60]
mov dword [rdi + 0x2270], edx
mov rcx, rbx
call fcn.140042720
mov rax, qword [rdi + 0xd18]
mov edx, dword [rax + 0x60]
mov dword [rdi + 0x2680], edx
mov rcx, r12
call fcn.140042720
mov rax, qword [rdi + 0xd18]
mov ecx, dword [rax + 0x60]
mov dword [rdi + 0x29e8], ecx
lea rcx, [rdi + 0x28f0]
call fcn.140042720
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x10], xmm1
lea rdx, [rbp - 0x20]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov edx, 0x445
mov rcx, rdi
call fcn.14006a230
lea rdx, [rbp - 0x10]
mov rcx, qword [rax + 0x40]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [rbp - 0x14]
sub eax, dword [rbp - 4]
sub eax, 8
mov dword [rdi + 0xc8c], eax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x40]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [rbp - 0x34]
sub eax, dword [rdi + 0xc8c]
mov dword [rbp - 0x34], eax
mov r8d, dword [rbp - 0x3c]
sub eax, r8d
mov r9d, dword [rbp - 0x38]
mov edx, dword [rbp - 0x40]
sub r9d, edx
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], eax
mov rcx, rdi
call fcn.14006a52c
lea rdx, [rbp - 0x40]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetClientRect]
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.14006c564
mov eax, dword [rbp - 0x38]
sub eax, dword [rbp - 0x40]
mov dword [rdi + 0x1954], eax
mov dword [rdi + 0x194c], eax
mov eax, dword [rbp - 0x34]
sub eax, dword [rbp - 0x3c]
mov dword [rdi + 0x1958], eax
mov dword [rdi + 0x1950], eax
mov ecx, 0x1e70
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056c8d
xor edx, edx
mov r8d, 0x1e70
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.140007740
mov rcx, rax
jmp 0x140056c90
mov rcx, rsi
mov qword [rdi + 0x1960], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0x1ed8
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056cd9
xor edx, edx
mov r8d, 0x1ed8
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.140021640
mov rcx, rax
jmp 0x140056cdc
mov rcx, rsi
mov qword [rdi + 0x1968], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0xb78
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056d25
xor edx, edx
mov r8d, 0xb78
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.14002fdc0
mov rcx, rax
jmp 0x140056d28
mov rcx, rsi
mov qword [rdi + 0x1970], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0xe08
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056d71
xor edx, edx
mov r8d, 0xe08
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.1400107e0
mov rcx, rax
jmp 0x140056d74
mov rcx, rsi
mov qword [rdi + 0x1978], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0x998
call fcn.14007508c
mov r15, rax
mov qword [rsp + 0x40], rax
lea r12, vtable.CButton.0
test rax, rax
je 0x140056e84
xor edx, edx
mov r8d, 0x998
mov rcx, rax
call fcn.1401f0eb0
xor r8d, r8d
mov edx, 0x9b
mov rcx, r15
call fcn.14006e798
nop
lea rax, vtable.CFunctionFolderView.0
mov qword [r15], rax
lea rcx, [r15 + 0x178]
call fcn.1400720f8
nop
lea rcx, [r15 + 0x1b0]
call fcn.1400421d0
nop
lea rbx, [r15 + 0x340]
mov qword [rsp + 0x38], rbx
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x140057595
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbx], rax
lea rdx, [0x140285280]
cmp rdx, 0x10000
jae 0x140056e37
movzx edx, dx
mov rcx, rbx
call fcn.140003220
jmp 0x140056e56
mov rax, r14
nop word [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x140056e40
mov r8d, eax
mov rcx, rbx
call fcn.140003400
nop
lea rcx, [r15 + 0x348]
call fcn.14003b760
nop
lea rbx, [r15 + 0x8b0]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
mov byte [r15 + 0x170], 1
jmp 0x140056e87
mov r15, rsi
mov qword [rdi + 0x1980], r15
mov rax, qword [rdi + 0xd18]
mov qword [r15 + 0x1a8], rax
mov ecx, 0x1600
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056ed0
xor edx, edx
mov r8d, 0x1600
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.14000ce10
mov rcx, rax
jmp 0x140056ed3
mov rcx, rsi
mov qword [rdi + 0x1988], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0x1790
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056f1c
xor edx, edx
mov r8d, 0x1790
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.1400187c0
mov rcx, rax
jmp 0x140056f1f
mov rcx, rsi
mov qword [rdi + 0x1990], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0x15f8
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056f68
xor edx, edx
mov r8d, 0x15f8
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.1400247f0
mov rcx, rax
jmp 0x140056f6b
mov rcx, rsi
mov qword [rdi + 0x1998], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0x1470
call fcn.14007508c
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140056fb4
xor edx, edx
mov r8d, 0x1470
mov rcx, rax
call fcn.1401f0eb0
mov rcx, rbx
call fcn.14002b140
mov rcx, rax
jmp 0x140056fb7
mov rcx, rsi
mov qword [rdi + 0x19a8], rcx
mov rax, qword [rdi + 0xd18]
mov qword [rcx + 0x170], rax
mov ecx, 0xd58
call fcn.14007508c
mov r15, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14005710c
xor edx, edx
mov r8d, 0xd58
mov rcx, rax
call fcn.1401f0eb0
xor r8d, r8d
mov edx, 0x16b
mov rcx, r15
call fcn.14006e798
nop
lea rax, vtable.CFunctionExtraTests.0
mov qword [r15], rax
lea rcx, [r15 + 0x190]
call fcn.140043110
nop
lea rbx, [r15 + 0x5d0]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
lea rax, vtable.CListCtrl.0
mov qword [rbx], rax
lea rbx, [r15 + 0x6b8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
lea rax, vtable.CCacheGraph.0
mov qword [rbx], rax
mov dword [rbx + 0xe8], 0x2710
mov dword [rbx + 0xec], 0x4e20
mov dword [rbx + 0xf8], 0xffc000
mov byte [rbx + 0x108], 0
lea rbx, [r15 + 0x7e8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
lea rbx, [r15 + 0x8d0]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
lea rbx, [r15 + 0x9b8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
lea rbx, [r15 + 0xaa0]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
lea rbx, [r15 + 0xb88]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
lea rbx, [r15 + 0xc70]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.1400612e0
mov qword [rbx], r12
jmp 0x14005710f
mov r15, rsi
mov qword [rdi + 0x19a0], r15
mov rax, qword [rdi + 0xd18]
mov qword [r15 + 0x170], rax
mov rax, qword [rdi + 0xd18]
mov dword [rax + 0x130], 1
mov qword [rsp + 0x38], rsi
call fcn.14006e454
mov rcx, rax
test rax, rax
je 0x14005751c
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x200
mov edx, 0x66
lea rcx, [rsp + 0x38]
call fcn.140003220
mov rcx, qword [rdi + 0xd18]
mov rbx, qword [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rcx + 0xb8]
call fcn.14006a6e8
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400571a7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 0x50
xor r9d, r9d
lea r8, str.Time
xor edx, edx
mov rcx, r13
call fcn.140072e38
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 0x1e
xor r9d, r9d
lea r8, str.Number
lea edx, [r9 + 1]
mov rcx, r13
call fcn.140072e38
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], 0x12c
xor r9d, r9d
lea r8, str.Status
lea edx, [r9 + 2]
mov rcx, r13
call fcn.140072e38
lea rbx, [rdi + 0x178]
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
mov edx, 0x10
lea r9d, [rdx + 0x11]
mov r8d, edx
mov rcx, rbx
call fcn.1400723f8
mov edx, 0x7f04
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadIconW]
mov r8, rax
mov edx, r14d
mov rcx, qword [rdi + 0x180]
call qword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov edx, 0x7f03
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadIconW]
mov r8, rax
mov edx, r14d
mov rcx, qword [rdi + 0x180]
call qword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov edx, 0x7f01
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadIconW]
mov r8, rax
mov edx, r14d
mov rcx, qword [rdi + 0x180]
call qword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
test rbx, rbx
mov r9, rsi
je 0x1400572aa
mov r9, qword [rbx + 8]
mov edx, 0x1003
mov r8d, 1
mov rcx, qword [rdi + 0x20d0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rax
call fcn.140072870
mov rcx, rdi
call fcn.140058a70
lea rcx, [rdi + 0x2d38]
test rcx, rcx
jne 0x1400572e3
mov rcx, rsi
jmp 0x1400572e7
mov rcx, qword [rcx + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xd8], rcx
lea rcx, [rdi + 0x1eb0]
test rcx, rcx
jne 0x140057306
mov rcx, rsi
jmp 0x14005730a
mov rcx, qword [rcx + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xe0], rcx
mov rax, qword [rdi + 0x1960]
add rax, 0x2f0
mov rcx, rsi
je 0x14005732e
mov rcx, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xe8], rcx
mov rax, qword [rdi + 0x1978]
add rax, 0x3a8
mov rcx, rsi
je 0x140057352
mov rcx, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xf0], rcx
mov rax, qword [rdi + 0x1980]
add rax, 0x8b0
mov rcx, rsi
je 0x140057376
mov rcx, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0xf8], rcx
mov rax, qword [rdi + 0x1988]
add rax, 0x700
mov rcx, rsi
je 0x14005739a
mov rcx, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0x100], rcx
mov rax, qword [rdi + 0x1990]
add rax, 0x16a8
mov rcx, rsi
je 0x1400573be
mov rcx, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0x108], rcx
mov rax, qword [rdi + 0x19a8]
add rax, 0x11b8
mov rcx, rsi
je 0x1400573e2
mov rcx, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0x110], rcx
mov rax, qword [rdi + 0x19a0]
add rax, 0x9b8
je 0x140057403
mov rsi, qword [rax + 0x40]
mov rax, qword [rdi + 0xd18]
mov qword [rax + 0x118], rsi
mov rcx, rdi
call fcn.1400575a0
test al, al
je 0x1400574e7
mov eax, 1
sub eax, dword [rdi + 0xdac]
mov dword [rdi + 0xdac], eax
mov rcx, rdi
call fcn.14005b120
mov byte [rdi + 0x1948], 1
lea rbx, [rdi + 0x8a0]
cmp dword [rdi + 0xde0], 0
je 0x140057459
mov rcx, rbx
call fcn.14005e3c0
mov rcx, rdi
call fcn.14005b700
mov rcx, rdi
call fcn.14005c770
cmp byte [rbx], 0
je 0x14005749c
mov rax, qword [rdi + 0xd18]
cmp byte [rax + 0x1e1ebd], 0
je 0x14005749c
mov rax, qword [rax + 0x18]
cmp dword [rax + 0xa20], 0
jne 0x14005749c
mov byte [rdi + 0xc88], 0
xor edx, edx
mov rcx, rdi
call fcn.14006a75c
cmp dword [rdi + 0xe00], 0
je 0x1400574e7
cmp dword [rdi + 0x1740], 0
jne 0x1400574e7
mov edx, dword [rdi + 0xe04]
cmp edx, 0xffffffff
je 0x1400574e7
mov r8d, dword [rdi + 0xe08]
mov ecx, dword [rdi + 0xe10]
sub ecx, r8d
mov r9d, dword [rdi + 0xe0c]
sub r9d, edx
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], ecx
mov rcx, rdi
call fcn.14006a52c
mov eax, 1
mov rcx, qword [rbp + 0x7a0]
xor rcx, rsp
call fcn.1401ee030
lea r11, [rsp + 0x8b0]
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
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
nop
mov ecx, 0x80004005
call fcn.1400037e0
int3