Function at 0x180021820
Capabilities:
Accept command line arguments

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x148]
sub rsp, 0x220
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x1804e0010]
xor rax, rsp
mov qword [rbp + 0x110], rax
mov rbx, rcx
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
xor r12d, r12d
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], r12w
mov rdi, 0xffffffffffffffff
mov r8, rdi
inc r8
cmp word [rax + r8*2], r12w
jne 0x180021895
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.180005cd0
nop
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], r12w
mov dword [rsp + 0x20], r12d
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rcx, rax
lea rdx, [rsp + 0x20]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov rsi, rax
test rax, rax
je 0x1800219c4
cmp dword [rsp + 0x20], 2
jl 0x1800219bb
mov rdx, qword [rax + 8]
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
nop word [rax + rax]
inc rdi
cmp word [rdx + rdi*2], 0
jne 0x180021920
mov r8, rdi
lea rcx, [rsp + 0x50]
call fcn.180005cd0
nop
lea rcx, [rbx + 0x58]
lea rax, [rsp + 0x50]
cmp rcx, rax
je 0x180021962
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
call fcn.180005cd0
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x1800219a7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800219a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800219a2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180393fb0
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LocalFree]
lea rdx, [rbx + 0x58]
mov rcx, rbx
call fcn.180023120
test al, al
je 0x180021f09
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIAppModule____ptr64___cdecl_RC::RCMiniUIAppModule::Instance_void_]
mov rcx, rax
lea r15, [0x180000000]
mov rdx, r15
call qword [sym.imp.2345MiniUI.dll_public:_void___cdecl_RC::RCMiniUIAppModule::Init_struct_HINSTANCE______ptr64____ptr64]
lea rcx, [rbp - 0x10]
call fcn.180165670
cmp dword [rbp - 0xc], 6
jb 0x180021aad
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], r12
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
mov r8d, 4
lea rdx, [0x1803cf138]
lea rcx, [rsp + 0x70]
call fcn.180005cd0
nop
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIFontPoolInterface____ptr64___cdecl_RC::RCMiniUIResourceManager::GetGolobalFontPool_void_]
mov r9, qword [rax]
mov r8d, 0xfffffff4
lea rdx, [rsp + 0x70]
mov rcx, rax
call qword [r9 + 0x18]
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x180021a96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180021a91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180021a91
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180393fb0
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
jmp 0x180021b4c
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
mov r8d, 2
lea rdx, [0x1803cf12c]
lea rcx, [rbp - 0x70]
call fcn.180005cd0
nop
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIFontPoolInterface____ptr64___cdecl_RC::RCMiniUIResourceManager::GetGolobalFontPool_void_]
mov r9, qword [rax]
mov r8d, 0xfffffff4
lea rdx, [rbp - 0x70]
mov rcx, rax
call qword [r9 + 0x18]
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x180021b3b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180021b36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180021b36
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180393fb0
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIStylePoolInterface____ptr64___cdecl_RC::RCMiniUIManner::GetGlobalStylePool_void_]
mov r8, qword [rax]
mov edx, 0x65
mov rcx, rax
call qword [r8]
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUISkinPoolInterface____ptr64___cdecl_RC::RCMiniUIManner::GetGlobalSkinPool_void_]
mov r8, qword [rax]
mov edx, 0x64
mov rcx, rax
call qword [r8]
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIStringPoolInterface____ptr64___cdecl_RC::RCMiniUIResourceManager::GetGolobalStringPool_void_]
mov r8, qword [rax]
mov edx, 0x66
mov rcx, rax
call qword [r8 + 8]
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIAppModule____ptr64___cdecl_RC::RCMiniUIAppModule::Instance_void_]
mov rcx, rax
call qword [sym.imp.2345MiniUI.dll_public:_void___cdecl_RC::RCMiniUIAppModule::CreateCurrentThreadMessageLoop_void____ptr64]
call qword [sym.imp.2345MiniUI.dll_public:_static_class_RC::RCMiniUIAppModule____ptr64___cdecl_RC::RCMiniUIAppModule::Instance_void_]
mov rcx, rax
call qword [sym.imp.2345MiniUI.dll_public:_class_WTL::CMessageLoop____ptr64___cdecl_RC::RCMiniUIAppModule::GetMessageLoop_void____ptr64]
mov r14, rax
test rax, rax
je 0x180021f09
lea rdi, [rax + 8]
mov qword [rsp + 0x28], rdi
mov edx, dword [rdi + 8]
movsxd r8, dword [rdi + 0xc]
cmp edx, r8d
jne 0x180021c22
mov r9, qword [rdi]
lea rax, [rsp + 0x30]
cmp rax, r9
jb 0x180021be7
lea rcx, [r9 + r8*8]
lea rax, [rsp + 0x30]
cmp rax, rcx
jb 0x180021fa9
test r8d, r8d
jne 0x180021bf2
lea esi, [r8 + 1]
jmp 0x180021bf9
lea esi, [rdx + rdx]
test esi, esi
js 0x180021c40
movsxd rdx, esi
cmp rdx, 0xfffffff
ja 0x180021c40
mov r8d, 8
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll__recalloc]
test rax, rax
je 0x180021c40
mov dword [rdi + 0xc], esi
mov qword [rdi], rax
mov edx, dword [rdi + 8]
mov dword [rsp + 0x30], edx
movsxd rcx, edx
mov rax, qword [rdi]
lea rdx, [rax + rcx*8]
mov qword [rsp + 0x38], rdx
test rdx, rdx
je 0x180021c3d
mov qword [rdx], rbx
inc dword [rdi + 8]
test rbx, rbx
je 0x180021c50
lea rsi, [rbx + 8]
mov qword [rsp + 0x28], rsi
jmp 0x180021c58
mov rsi, r12
mov qword [rsp + 0x28], r12
lea rdi, [r14 + 0x18]
mov qword [rsp + 0x38], rdi
mov edx, dword [rdi + 8]
movsxd r8, dword [rdi + 0xc]
cmp edx, r8d
jne 0x180021cca
mov r9, qword [rdi]
lea rax, [rsp + 0x28]
cmp rax, r9
jb 0x180021c8c
lea rcx, [r9 + r8*8]
lea rax, [rsp + 0x28]
cmp rax, rcx
jb 0x180021f9e
test r8d, r8d
jne 0x180021c97
lea r14d, [r8 + 1]
jmp 0x180021ca0
lea r14d, [rdx + rdx]
test r14d, r14d
js 0x180021ce8
movsxd rdx, r14d
cmp rdx, 0xfffffff
ja 0x180021ce8
mov r8d, 8
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll__recalloc]
test rax, rax
je 0x180021ce8
mov dword [rdi + 0xc], r14d
mov qword [rdi], rax
mov edx, dword [rdi + 8]
mov dword [rsp + 0x30], edx
movsxd rcx, edx
mov rax, qword [rdi]
lea rdx, [rax + rcx*8]
mov qword [rsp + 0x40], rdx
test rdx, rdx
je 0x180021ce5
mov qword [rdx], rsi
inc dword [rdi + 8]
mov rcx, rbx
call fcn.180022560
test al, al
je 0x180021f09
mov rcx, rbx
call fcn.180022880
test al, al
je 0x180021f09
mov rcx, rbx
call fcn.180021fc0
test al, al
je 0x180021f09
mov rcx, rbx
call fcn.180022200
test al, al
je 0x180021f09
mov ecx, ILFree
call fcn.180393f74
mov rdi, rax
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.180265ef0
nop
lea rax, vtable.RC::RCExplorerCommandCenter.0
mov qword [rdi], rax
mov qword [rdi + 0x90], rbx
mov ecx, 0x48
call fcn.180393f74
mov qword [rsp + 0x38], rax
mov rcx, rax
call fcn.180134910
nop
mov rsi, qword [rdi + 8]
mov qword [rdi + 8], rax
test rsi, rsi
je 0x180021d93
mov qword [rsp + 0x38], rsi
mov rcx, rsi
call fcn.18008e710
mov edx, 0x48
mov rcx, rsi
call fcn.180393fb0
lea rcx, [rdi + 0x10]
lea r8, [0x1804e1790]
lea rdx, [0x1804e1490]
call fcn.18008e7f0
mov rcx, rdi
call fcn.18008cab0
nop
mov rcx, qword [rbx + 0x28]
mov qword [rbx + 0x28], rdi
test rcx, rcx
je 0x180021dca
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov ecx, 0xe90
call fcn.180393f74
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.180091710
mov rsi, rax
mov rcx, qword [rbx + 0x48]
mov qword [rbx + 0x48], rax
test rcx, rcx
je 0x180021e00
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 8]
mov rsi, qword [rbx + 0x48]
mov rdi, qword [rbx + 0x10]
mov rcx, qword [rsi + 0x128]
cmp rcx, rdi
je 0x180021e36
test rdi, rdi
je 0x180021e24
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov rcx, qword [rsi + 0x128]
test rcx, rcx
je 0x180021e2f
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rsi + 0x128], rdi
mov rax, qword [rbx + 0x48]
mov qword [rax + 0x110], r15
xchg qword [0x1804f19e8], r15
mov rdi, qword [rbx + 0x20]
mov rsi, qword [rbx + 0x48]
mov rcx, qword [rsi + 0x130]
cmp rcx, rdi
je 0x180021e82
test rdi, rdi
je 0x180021e70
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov rcx, qword [rsi + 0x130]
test rcx, rcx
je 0x180021e7b
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rsi + 0x130], rdi
mov rcx, qword [rbx + 0x28]
mov rax, qword [rbx + 0x48]
mov qword [rax + 0x140], rcx
mov rdi, qword [rbx + 0x30]
mov rsi, qword [rbx + 0x48]
mov rcx, qword [rsi + 0x138]
cmp rcx, rdi
je 0x180021ecb
test rdi, rdi
je 0x180021eb9
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov rcx, qword [rsi + 0x138]
test rcx, rcx
je 0x180021ec4
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rsi + 0x138], rdi
mov rdi, qword [rbx + 0x38]
mov rbx, qword [rbx + 0x48]
mov rcx, qword [rbx + 0x540]
cmp rcx, rdi
je 0x180021f05
test rdi, rdi
je 0x180021ef3
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov rcx, qword [rbx + 0x540]
test rcx, rcx
je 0x180021efe
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rbx + 0x540], rdi
mov bl, 1
jmp 0x180021f0b
xor bl, bl
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], r12w
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x180021f5f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180021f5a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180021f5a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180393fb0
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], r12w
movzx eax, bl
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.180393f50
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov ecx, 0x80004005
call fcn.180019cb0
int3
mov ecx, 0x80004005
call fcn.180019cb0
int3