Function at 0x140101d20
Capabilities:
Accept command line arguments

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
movaps xmmword [rsp + 0x140], xmm7
movaps xmmword [rsp + 0x130], xmm6
mov rax, qword [0x140219028]
xor rax, rsp
mov qword [rsp + 0x128], rax
mov rbx, qword [0x140231be8]
test rbx, rbx
jne 0x1401020e8
mov ecx, 0x50
call fcn.14012cd5c
mov rbp, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov byte [rax + 0x10], 0
mov ecx, 0x18
call fcn.14012cd5c
mov qword [rbp + 0x18], rax
lea rcx, [rax + 0x18]
mov qword [rbp + 0x28], rcx
test rax, rax
je 0x1401027f2
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rbp + 0x20], rcx
mov rsi, rbp
add rsi, 0x38
movups xmmword [rbp + 0x38], xmm6
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x48], 1
mov qword [0x140231be8], rbp
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
test rax, rax
je 0x1401027f5
mov rdi, rax
mov rcx, rax
call fcn.14012d784
lea r12, [rsp + 0xf0]
mov qword [r12], rdi
mov qword [r12 + 8], rax
lea rax, [0x1401f9b20]
lea r8, [rsp + 0x110]
mov qword [r8], rax
mov qword [r8 + 8], 0x19
lea r14, [rsp + 0xd0]
mov rcx, r14
mov rdx, r12
mov r9d, 3
call fcn.1400d9120
mov rax, qword [r14 + 8]
test rax, rax
je 0x1401020e8
mov rdi, qword [rsp + 0xd0]
mov qword [rbp], rdi
mov qword [rbp + 8], rax
mov dword [rsp + 0x64], 0
lea rcx, [0x1401f9f74]
xor edx, edx
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
test rax, rax
mov qword [rsp + 0x38], rax
je 0x14010282d
lea rdx, [0x1401f9fc4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1401027f8
lea rdx, [rsp + 0x64]
mov rcx, rdi
call qword [0x140243008]
mov qword [rsp + 0x20], rax
movsxd rdi, dword [rsp + 0x64]
test rdi, rdi
mov qword [rsp + 0x40], rbx
je 0x140102811
test edi, edi
js 0x1401027ff
shl rdi, 3
lea rcx, [rdi + rdi*2]
call fcn.14012cd5c
mov r13, rax
xor ebx, ebx
xor r15d, r15d
mov rcx, r13
add rcx, rbx
je 0x14010279a
mov rax, qword [rsp + 0x20]
mov rdx, qword [rax + r15]
call fcn.140168480
add r15, 8
add rbx, 0x18
cmp rdi, r15
jne 0x140101eca
mov rax, r13
add rax, rbx
mov qword [rsp + 0x28], rax
mov ecx, 0x18
call fcn.14012cd5c
test rax, rax
je 0x140102802
mov rdi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov rbx, qword [rbp + 0x18]
test rbx, rbx
mov qword [rsp + 0x30], r13
je 0x140101f7e
mov r15, r14
mov r14, r12
mov r12, qword [rbp + 0x20]
mov rcx, rbx
cmp r12, rbx
je 0x140101f6a
add r12, 0xffffffffffffffe8
test r12, r12
je 0x14010280e
cmp byte [r12 + 0x17], 0
js 0x140102071
lea rax, [r12 - 0x18]
cmp r12, rbx
mov r12, rax
jne 0x140101f44
mov rcx, qword [rbp + 0x18]
mov qword [rbp + 0x20], rbx
call fcn.14012cd4c
mov r12, r14
mov r14, r15
mov r13, qword [rsp + 0x30]
mov rax, rdi
add rax, 0x18
mov qword [rbp + 0x18], rdi
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov rcx, qword [rbp + 0x38]
call fcn.140013220
mov qword [rbp + 0x30], rsi
movups xmmword [rbp + 0x38], xmm6
mov qword [rbp + 0x48], 1
mov rsi, qword [rsp + 0x28]
cmp r13, rsi
je 0x14010281b
movzx eax, byte [r13 + 0x17]
test al, al
jns 0x140102840
mov rcx, qword [r13]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rax
test rax, rax
js 0x140102805
test rcx, rcx
jne 0x140101fee
test rax, rax
jne 0x140102852
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x68]
call fcn.1400f4860
lea rdi, [rsp + 0x110]
mov rcx, rbp
mov rdx, rdi
call fcn.14001ade0
cmp byte [rdi + 0x17], 0
jns 0x140102026
mov rcx, qword [rsp + 0x110]
call fcn.14012cd4c
mov rax, rsi
sub rax, r13
sar rax, 3
movabs rcx, 0xaaaaaaaaaaaaaaab
imul rcx, rax
mov qword [rsp + 0x50], rcx
cmp rcx, 2
jb 0x14010207f
mov rax, qword [rbp + 8]
mov qword [rsp + 0x48], rax
mov sil, 1
mov eax, 1
movaps xmm6, xmmword [0x1401ee3a0]
lea r15, [rsp + 0x98]
xorps xmm7, xmm7
jmp 0x1401021f5
mov rcx, qword [r12]
call fcn.14012cd4c
jmp 0x140101f59
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1401020a1
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r13, r13
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x28]
je 0x1401020e8
cmp r13, rsi
je 0x1401020e0
add rsi, 0xffffffffffffffe8
jmp 0x1401020cf
mov rcx, qword [rsi]
call fcn.14012cd4c
lea rax, [rsi - 0x18]
cmp rsi, r13
mov rsi, rax
je 0x1401020e0
test rsi, rsi
je 0x1401027d3
cmp byte [rsi + 0x17], 0
jns 0x1401020c3
jmp 0x1401020bb
mov rcx, r13
call fcn.14012cd4c
test rbx, rbx
sete bl
mov rcx, qword [rsp + 0x128]
xor rcx, rsp
call fcn.14012f6f0
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x130]
movaps xmm7, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov byte [rsp + 0x107], dil
mov rcx, r14
jmp 0x14010234b
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
test rax, rax
js 0x1401027b5
test rcx, rcx
jne 0x14010216b
test rax, rax
jne 0x1401027d0
mov rcx, rbp
lea rdx, [rsp + 0xb0]
lea r8, [rsp + 0xc0]
call fcn.14001a060
cmp byte [rsp + 0xaf], 0
jns 0x14010219a
mov rcx, qword [rsp + 0x98]
call fcn.14012cd4c
mov sil, 1
cmp byte [rsp + 0xe7], 0
jns 0x1401021b4
mov rcx, qword [rsp + 0xd0]
call fcn.14012cd4c
cmp byte [rsp + 0x107], 0
jns 0x1401021cb
mov rcx, qword [rsp + 0xf0]
call fcn.14012cd4c
cmp byte [rsp + 0x127], 0
jns 0x1401021e2
mov rcx, qword [rsp + 0x110]
call fcn.14012cd4c
mov rax, qword [rsp + 0x58]
inc rax
cmp rax, qword [rsp + 0x50]
je 0x14010207f
mov qword [rsp + 0x58], rax
lea rax, [rax + rax*2]
lea rax, [rax*8]
add rax, r13
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x120], rcx
movaps xmmword [rsp + 0x110], xmm6
cmp byte [rax + 0x17], 0
jns 0x1401027d6
mov rdx, qword [rax]
mov r8, qword [rax + 8]
mov rcx, rdi
call fcn.1400144b0
movzx ecx, byte [rsp + 0x127]
mov eax, ecx
and eax, 0x7f
test cl, cl
cmovs rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x110]
cmovns rcx, rdi
test rax, rax
js 0x1401027a6
test rcx, rcx
jne 0x140102277
test rax, rax
jne 0x1401027bb
lea rdx, [0x1401f9b20]
mov qword [rsp + 0xf0], rdx
mov qword [rsp + 0xf8], 0x19
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rax
mov r13, r15
mov rcx, r15
mov r15, r14
mov rdx, r14
mov r14, r12
mov r8, r12
mov r9d, 3
call fcn.1400d9120
mov rdi, qword [rsp + 0xa0]
movabs rax, 0x7ffffffffffffff7
cmp rdi, rax
ja 0x1401027a9
mov rbx, rbp
mov r12, qword [rsp + 0x98]
cmp rdi, 0xa
jbe 0x140102124
mov rax, rdi
and rax, 0xfffffffffffffffc
add rax, 4
mov rbp, rdi
or rbp, 3
cmp rbp, 0xb
cmove rbp, rax
inc rbp
js 0x1401027b8
lea rcx, [rbp*2]
call fcn.14012cd5c
mov rcx, rax
mov qword [rsp + 0xf0], rax
movabs rax, 0x7ffffffffffffff7
add rax, 9
or rax, rbp
mov qword [rsp + 0x100], rax
mov qword [rsp + 0xf8], rdi
lea rbp, [rcx + rdi*2]
cmp rcx, r12
ja 0x14010235d
cmp rbp, r12
ja 0x1401027be
test rdi, rdi
je 0x140102370
add rdi, rdi
mov rdx, r12
mov r8, rdi
call fcn.140131180
mov word [rbp], 0
cmp byte [rsp + 0x127], 0
jns 0x14010238d
mov rcx, qword [rsp + 0x110]
call fcn.14012cd4c
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x120], rax
movups xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x110], xmm0
xor eax, eax
mov qword [rsp + 0x100], rax
movaps xmmword [rsp + 0xf0], xmm7
mov qword [rsp + 0xe0], rax
movaps xmmword [rsp + 0xd0], xmm7
movzx edx, byte [rsp + 0x127]
mov eax, edx
and eax, 0x7f
test dl, dl
mov rcx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x118]
mov r10, rax
cmovs r10, r8
lea rdi, [rsp + 0x110]
mov r9, rdi
cmovs r9, rcx
test r10, r10
js 0x1401027ac
mov rbp, rbx
mov r12, r14
test r9, r9
mov r14, r15
mov r15, r13
jne 0x140102427
test r10, r10
jne 0x1401027c1
cmp r10, 2
mov r13, qword [rsp + 0x30]
je 0x14010276f
test sil, 1
je 0x140102796
mov rcx, rdi
mov rdx, r12
mov r8, r14
call fcn.1400f05f0
test al, al
je 0x14010270f
cmp qword [rsp + 0x48], 0
je 0x140102536
movzx eax, byte [rsp + 0x107]
mov esi, eax
and esi, 0x7f
test al, al
cmovs rsi, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0xf0]
cmovns rdi, r12
test rsi, rsi
js 0x14010279d
test rdi, rdi
jne 0x14010249d
test rsi, rsi
jne 0x1401027c4
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xa0], rsi
mov rcx, r15
call fcn.1400f07d0
test rax, rax
je 0x140102536
cmp rsi, rax
je 0x140102536
lea rcx, [rdi + rsi*2]
mov rdx, rcx
test rsi, rsi
je 0x1401024e7
mov rdx, rdi
mov r8, rsi
cmp word [rdx], 0x3d
je 0x1401025ff
add rdx, 2
dec r8
jne 0x1401024d1
mov rdx, rcx
sub rsi, rax
jb 0x1401027a0
mov r8, rdx
sub r8, rdi
sar r8, 1
cmp rdx, rcx
mov rcx, 0xffffffffffffffff
cmove r8, rcx
sub r8, rax
cmp rsi, r8
cmovb r8, rsi
test r8, r8
js 0x1401027a3
lea rax, [rdi + rax*2]
test rax, rax
jne 0x14010252c
test r8, r8
jne 0x1401027c7
cmp r8, 0xf
je 0x14010260d
movzx ecx, byte [rsp + 0xe7]
mov eax, ecx
and eax, 0x7f
test cl, cl
cmovs rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xd0]
cmovns rcx, r14
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xc8], rax
test rax, rax
lea rdi, [rsp + 0x110]
js 0x1401027af
test rcx, rcx
jne 0x140102589
test rax, rax
jne 0x1401027ca
movzx ecx, byte [rsp + 0x107]
mov eax, ecx
and eax, 0x7f
test cl, cl
cmovs rax, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0xf0]
cmovns rcx, r12
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
test rax, rax
js 0x1401027b2
test rcx, rcx
jne 0x1401025d4
test rax, rax
jne 0x1401027cd
mov rcx, r15
lea rdx, [rsp + 0x88]
call fcn.1400e23d0
movzx eax, byte [rsp + 0xaf]
test al, al
js 0x140102134
and eax, 0x7f
mov rcx, r15
jmp 0x140102144
test rdx, rdx
jne 0x1401024e7
jmp 0x1401024e4
cmp word [rax], 0x73
jne 0x140102536
cmp word [rax + 2], 0x69
jne 0x140102536
cmp word [rax + 4], 0x6e
jne 0x140102536
cmp word [rax + 6], 0x67
jne 0x140102536
cmp word [rax + 8], 0x6c
jne 0x140102536
cmp word [rax + 0xa], 0x65
jne 0x140102536
cmp word [rax + 0xc], 0x2d
jne 0x140102536
cmp word [rax + 0xe], 0x61
jne 0x140102536
cmp word [rax + 0x10], 0x72
jne 0x140102536
cmp word [rax + 0x12], 0x67
jne 0x140102536
cmp word [rax + 0x14], 0x75
jne 0x140102536
cmp word [rax + 0x16], 0x6d
jne 0x140102536
cmp word [rax + 0x18], 0x65
jne 0x140102536
cmp word [rax + 0x1a], 0x6e
jne 0x140102536
cmp word [rax + 0x1c], 0x74
jne 0x140102536
lea rdx, [rsp + 0xf0]
mov rcx, rbp
call fcn.140168550
cmp byte [rsp + 0xe7], 0
jns 0x1401026d8
mov rcx, qword [rsp + 0xd0]
call fcn.14012cd4c
cmp byte [rsp + 0x107], 0
jns 0x1401026ef
mov rcx, qword [rsp + 0xf0]
call fcn.14012cd4c
cmp byte [rsp + 0x127], 0
jns 0x14010207f
mov rcx, qword [rsp + 0x110]
call fcn.14012cd4c
jmp 0x14010207f
movzx edx, byte [rsp + 0x127]
mov rcx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x118]
mov eax, edx
and eax, 0x7f
mov sil, 1
test dl, dl
cmovs rax, r8
cmovns rcx, rdi
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rax
test rax, rax
js 0x140102808
test rcx, rcx
jne 0x14010275d
test rax, rax
jne 0x14010280b
mov rcx, rbp
lea rdx, [rsp + 0x78]
call fcn.1400133b0
jmp 0x14010219d
cmp word [r9], 0x2d
jne 0x140102436
test dl, dl
mov r9, rdi
cmovs r9, rcx
cmp word [r9 + 2], 0x2d
setne r9b
test sil, r9b
jne 0x140102440
xor esi, esi
jmp 0x14010272f
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x120], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x110], xmm0
jmp 0x14010223c
int3
int3
xor eax, eax
jmp 0x140101e95
int3
int3
int3
int3
int3
int3
xor r13d, r13d
xor eax, eax
jmp 0x140101ef7
lea rcx, [rsp + 0x110]
call fcn.14012c020
jmp 0x140102000
lea rdx, [rsp + 0x64]
mov rcx, rdi
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
jmp 0x140101e95
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x70], rax
mov rcx, r13
jmp 0x140101fe0
int3