Function at 0x140016dd8
Capabilities:
Enumerate gui resources

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
mov eax, 0x1f90
call fcn.14001eca0
sub rsp, rax
xor r12d, r12d
lea rcx, str.comctl32.dll
mov rbp, r8
mov dword [rsp + 0x30], 8
mov dword [rsp + 0x34], 0xff
mov ebx, r12d
mov esi, r12d
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea r13d, [r12 + 1]
cmp rax, r12
mov rdi, rax
je 0x140016e5e
lea rdx, str.InitCommonControlsEx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp rax, r12
je 0x140016e50
lea rcx, [rsp + 0x30]
mov esi, r13d
call rax
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp esi, r12d
jne 0x140016e67
call qword [sym.imp.COMCTL32.dll_InitCommonControls]
mov ebx, r13d
cmp ebx, r12d
jne 0x140016e90
lea r8, str.Error
lea rdx, str.Error:_Cannot_load_the_common_control_classes.
mov r9d, 0x30
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, r13d
jmp 0x1400173eb
cmp qword [0x140026950], r12
jne 0x140016ec8
lea rcx, str.shell32.dll
call fcn.140007690
cmp rax, r12
mov qword [0x140026950], rax
je 0x140016ec8
lea rdx, str.SHGetSpecialFolderPathW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140026948], rax
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
mov ecx, 0x8001
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
xor ecx, ecx
mov dword [0x14002624c], 0x11223344
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, [0x14001a218]
xor r8d, r8d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnumResourceTypesW]
lea rcx, [rsp + 0x2f0]
mov edi, 0x100
mov dword [rsp + 0x60], 0x400
mov dword [rsp + 0x64], edi
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x44], r12d
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r12
mov dword [rsp + 0x68], r12d
mov dword [rsp + 0x48], r12d
mov dword [rsp + 0x7c], 0x20
mov qword [rsp + 0x70], r12
mov dword [rsp + 0x80], r12d
mov dword [rsp + 0x78], r12d
mov dword [rsp + 0x88], r12d
call fcn.14001478c
lea r11, [rsp + 0x40]
lea rcx, [rsp + 0x40]
mov rdx, rbp
mov qword [rsp + 0x1778], r11
call fcn.140007be4
mov rcx, qword [rsp + 0x1778]
or ebx, 0xffffffff
lea rdx, str._savelangfile
mov r8d, ebx
call fcn.140007dc8
cmp eax, r12d
jl 0x14001706a
lea rax, [0x140025798]
lea rcx, [rsp + 0xe2]
xor edx, edx
mov r8d, 0x208
mov word [rsp + 0xe0], r12w
mov qword [0x140026628], rax
call sub.msvcrt.dll_memset
lea r8d, [rdi + 4]
lea rdx, [rsp + 0xe0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rcx, [rsp + 0xe0]
mov dx, 0x2e
call sub.msvcrt.dll_wcsrchr
cmp rax, r12
je 0x140016ff5
mov word [rax], r12w
lea rdx, str._lng.ini
lea rcx, [rsp + 0xe0]
call sub.msvcrt.dll_wcscat
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, [rsp + 0xe0]
mov rcx, rax
call fcn.140008d64
lea rcx, [rsp + 0x2f0]
call fcn.140014a00
lea rcx, [rsp + 0x40]
call fcn.14000781c
mov rcx, qword [rsp + 0x70]
cmp rcx, r12
je 0x140017047
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x70], r12
mov dword [rsp + 0x80], r12d
mov dword [rsp + 0x78], r12d
call fcn.14000781c
xor eax, eax
jmp 0x1400173eb
call fcn.140008c50
mov rcx, qword [rsp + 0x1778]
lea rdx, str._deleteregkey
mov r8d, ebx
call fcn.140007dc8
cmp eax, r12d
jge 0x140017021
call fcn.140006c7c
cmp dword [rax + 4], 5
jbe 0x1400171a0
mov rcx, qword [rsp + 0x1778]
lea rdx, str._RunAsAdmin
mov r8d, ebx
call fcn.140007dc8
cmp eax, r12d
jl 0x1400171a0
cmp rbp, r12
mov dword [rsp + 0xa0], r12d
mov qword [rsp + 0x90], r12
mov dword [rsp + 0x98], r12d
mov dword [rsp + 0xa4], edi
mov dword [rsp + 0x9c], r12d
je 0x1400170f6
lea rcx, [rsp + 0x90]
mov rdx, rbp
call fcn.140007994
lea rdx, str._RunAsAdmin
lea rcx, [rsp + 0x90]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
call fcn.140007aa8
lea rcx, [rsp + 0x90]
cmp eax, r12d
jl 0x14001719b
mov r8d, 0xb
mov edx, eax
call fcn.140007b40
lea rcx, [rsp + 0xe2]
xor edx, edx
mov r8d, 0x208
mov word [rsp + 0xe0], r12w
call sub.msvcrt.dll_memset
lea rdx, [rsp + 0xe0]
mov r8d, 0x104
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov rax, qword [rsp + 0x90]
lea rdx, [0x14001f9c8]
cmp rax, r12
lea rcx, [rsp + 0xe0]
cmovne rdx, rax
call fcn.140007628
lea rcx, [rsp + 0x90]
call fcn.14000796c
jmp 0x1400173a4
call fcn.14000796c
mov rax, qword [rsp + 0x1778]
cmp dword [rax + 0x48], r13d
jl 0x1400171fc
lea rcx, [rsp + 0x2f0]
call fcn.140016954
cmp eax, r12d
je 0x1400171fc
call qword [sym.imp.ole32.dll_CoUninitialize]
mov ebx, dword [rsp + 0x1780]
lea rcx, [rsp + 0x2f0]
call fcn.140014a00
lea rcx, [rsp + 0x40]
call fcn.14000781c
mov rcx, qword [rsp + 0x70]
cmp rcx, r12
je 0x1400173cd
call sub.msvcrt.dll_free
jmp 0x1400173cd
lea rcx, [rsp + 0x2f0]
call fcn.1400146b0
mov r11, qword [rsp + 0x9c8]
cmp dword [r11 + 0x18], r12d
je 0x14001722f
cmp dword [r11 + 0x14], r12d
je 0x14001722f
mov rcx, qword [rsp + 0x500]
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x14001725e
mov rcx, qword [rsp + 0x500]
mov edx, 3
cmp dword [rsp + 0x578], edx
je 0x14001724a
mov edx, 5
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [rsp + 0x500]
call qword [sym.imp.USER32.dll_UpdateWindow]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov edx, 0x67
mov rcx, rax
call qword [sym.imp.USER32.dll_LoadAcceleratorsW]
mov qword [rsp + 0x530], rax
jmp 0x14001737f
mov ecx, dword [rsp + 0xb0]
mov eax, r13d
cmp ecx, 0x20a
jne 0x1400172af
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x2f0]
call fcn.14001414c
mov ecx, dword [rsp + 0xb0]
cmp ecx, edi
jne 0x140017301
movsxd rax, dword [0x14002794c]
mov byte [rsp + 0x30], 0x43
mov byte [rsp + 0x31], 0x4c
mov byte [rsp + 0x32], 0x52
mov byte [rsp + 0x33], r12b
movsx rcx, byte [rsp + rax + 0x30]
cmp qword [rsp + 0xb8], rcx
jne 0x1400172f2
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x2f0]
call fcn.14000f09c
jmp 0x140017301
mov byte [rsp + 0x33], r12b
mov dword [0x14002794c], r12d
mov eax, r13d
cmp eax, r12d
je 0x14001737f
mov rcx, qword [0x140026378]
cmp rcx, r12
je 0x140017325
lea rdx, [rsp + 0xa8]
call qword [sym.imp.USER32.dll_IsDialogMessageW]
cmp eax, r12d
jne 0x14001737f
mov rdx, qword [rsp + 0x530]
mov rcx, qword [rsp + 0x500]
lea r8, [rsp + 0xa8]
call qword [sym.imp.USER32.dll_TranslateAcceleratorW]
cmp eax, r12d
jne 0x14001737f
mov rcx, qword [rsp + 0x500]
lea rdx, [rsp + 0xa8]
call qword [sym.imp.USER32.dll_IsDialogMessageW]
cmp eax, r12d
jne 0x14001737f
lea rcx, [rsp + 0xa8]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rsp + 0xa8]
call qword [sym.imp.USER32.dll_DispatchMessageW]
lea rcx, [rsp + 0xa8]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
cmp eax, r12d
jne 0x140017281
call qword [sym.imp.ole32.dll_CoUninitialize]
lea rcx, [rsp + 0x2f0]
call fcn.140014a00
lea rcx, [rsp + 0x40]
call fcn.14000781c
mov rcx, qword [rsp + 0x70]
cmp rcx, r12
je 0x1400173ca
call sub.msvcrt.dll_free
mov ebx, r12d
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x70], r12
mov dword [rsp + 0x80], r12d
mov dword [rsp + 0x78], r12d
call fcn.14000781c
mov eax, ebx
lea r11, [rsp + 0x1f90]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r13
pop r12
pop rdi
ret