Function at 0x140028890
Capabilities:
Get token membership

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x420
mov rax, qword [0x1401040f0]
xor rax, rsp
mov qword [rsp + 0x410], rax
mov r14, rdx
mov r15d, ecx
mov dword [rsp + 0xa8], ecx
mov qword [rsp + 0x1c0], rdx
xor esi, esi
mov dword [rsp + 0x60], esi
mov dword [rsp + 0x78], 1
mov byte [rsp + 0x64], sil
mov qword [0x1401065a8], rsi
mov qword [0x140106598], rsi
mov qword [0x1401065b0], 1
lea rax, [0x1400d6018]
mov qword [0x140106590], rax
lea rbx, [0x140106598]
mov qword [section..data], rbx
lea rdi, [0x140106590]
mov r8, qword [rdi]
lea rdi, [rdi + 8]
mov qword [rsp + 0x80], r8
mov qword [rsp + 0x88], rsi
mov qword [rbx + 0x20], r8
lea rax, [rbx + 8]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov rdx, rbx
lea rcx, [0x140028760]
call qword [sym.imp.ADVAPI32.dll_RegisterTraceGuidsA]
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140028920
lea rdx, str.Entering_installer_helper_application
lea rcx, [0x140106640]
call fcn.140001840
mov rdi, rax
mov dword [rsp + 0x60], esi
mov ebx, esi
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x210], ebx
mov word [rsp + 0x214], 0x500
lea rax, [rsp + 0x68]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x48], esi
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
mov r9d, 0x220
mov r8d, 0x20
mov dl, 2
lea rcx, [rsp + 0x210]
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
je 0x140028a03
lea r8, [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_CheckTokenMembership]
test eax, eax
jne 0x140028a0b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140028a20
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov qword [rsp + 0x68], rsi
test ebx, ebx
jne 0x140029b76
lea rax, str.as_admin
lea rdx, [0x1400d6038]
cmp dword [rsp + 0x60], esi
cmovne rdx, rax
mov rcx, rdi
call fcn.140001840
mov rbx, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call fcn.140027d40
movzx edx, al
mov rcx, rbx
call fcn.140024420
mov rcx, rbx
call fcn.14001df30
nop
cmp r15d, 2
jge 0x140028a7e
mov eax, 1
jmp 0x140029b49
mov rdx, qword [r14 + 0x10]
mov qword [rsp + 0x258], rsi
mov qword [rsp + 0x268], rsi
mov r13d, 0xf
mov qword [rsp + 0x270], r13
mov byte [rsp + 0x258], 0
mov rdi, 0xffffffffffffffff
mov r8, rdi
inc r8
cmp byte [rdx + r8], 0
jne 0x140028ab2
lea rcx, [rsp + 0x258]
call fcn.140018ea0
nop
mov rdx, qword [r14 + 8]
mov qword [rsp + 0x2b8], rsi
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2d0], r13
mov byte [rsp + 0x2b8], 0
mov r8, rdi
inc r8
cmp byte [rdx + r8], 0
jne 0x140028af1
lea rcx, [rsp + 0x2b8]
call fcn.140018ea0
nop
mov qword [rsp + 0x2d8], rsi
mov qword [rsp + 0x2e8], rsi
mov qword [rsp + 0x2f0], r13
mov byte [rsp + 0x2d8], 0
lea rax, [0x1400d7218]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x168], rsi
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x190], xmm0
mov qword [rsp + 0x1a0], rsi
mov dword [rsp + 0x60], 4
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + 0x160], rax
mov dword [rsp + 0x15c], 0x98
mov qword [rsp + 0xb8], rsi
xor r8d, r8d
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x160]
call fcn.14001f600
nop
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0xb0], rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0xac], edx
lea rcx, [rsp + 0xc0]
call fcn.14000d9b0
lea rax, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rsp + 0xc0], rax
mov byte [rsp + 0x13c], 0
mov byte [rsp + 0x131], 0
lea rax, [rsp + 0xc8]
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0xe0], rax
lea rax, [rsp + 0xe8]
mov qword [rsp + 0xf8], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x100], rax
lea rax, [rsp + 0x108]
mov qword [rsp + 0x110], rax
lea rax, [rsp + 0x10c]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0x140], rsi
mov rax, qword [0x1401066d0]
mov qword [rsp + 0x134], rax
mov qword [rsp + 0x128], rsi
mov r15, rsi
mov r8d, 0x104
lea rdx, [rsp + 0x300]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rax, [rsp + 0x298]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x300]
nop dword [rax]
inc rdi
cmp byte [rax + rdi], r15b
jne 0x140028cd0
call fcn.1400325ac
mov r14d, eax
mov qword [rsp + 0x298], rsi
mov rcx, rsi
mov qword [rsp + 0x2a8], rcx
mov edx, 7
mov qword [rsp + 0x2b0], rdx
mov word [rsp + 0x298], si
mov dword [rsp + 0x60], 0x44
test rdi, rdi
je 0x140028db0
cmp rdi, 0x7fffffff
ja 0x140029b92
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8d, edi
lea rdx, [rsp + 0x300]
mov ecx, r14d
call fcn.1400325d4
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x140029b9a
xor r8d, r8d
movsxd rdx, ebx
lea rcx, [rsp + 0x298]
call fcn.140024680
lea r9, [rsp + 0x298]
cmp qword [rsp + 0x2b0], 8
cmovae r9, qword [rsp + 0x298]
mov dword [rsp + 0x20], ebx
mov r8d, edi
lea rdx, [rsp + 0x300]
mov ecx, r14d
call fcn.1400325d4
shr rax, 0x20
test eax, eax
jne 0x140029ba1
mov rdx, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x2a8]
lea rdi, [rsp + 0x298]
cmp rdx, 8
cmovae rdi, qword [rsp + 0x298]
lea rbx, [rdi + rcx*2]
mov rdx, rbx
mov rcx, rdi
call fcn.140016100
cmp rax, rbx
je 0x140028e3d
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x140028def
cmp cx, 0x2f
jne 0x140028df8
add rax, 2
cmp rax, rbx
jne 0x140028de0
cmp rax, rbx
je 0x140028e3d
nop dword [rax]
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x140028e1d
cmp cx, 0x2f
je 0x140028e1d
mov rbx, rdx
cmp rax, rdx
jne 0x140028e00
jmp 0x140028e3d
cmp rax, rbx
je 0x140028e3d
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x140028e35
cmp cx, 0x2f
jne 0x140028e3d
mov rbx, rdx
cmp rax, rdx
jne 0x140028e22
sub rbx, rdi
sar rbx, 1
mov qword [rsp + 0x278], rsi
mov qword [rsp + 0x288], rsi
mov qword [rsp + 0x290], 7
mov word [rsp + 0x278], si
mov r8, rbx
mov rdx, rdi
lea rcx, [rsp + 0x278]
call fcn.140019170
nop
lea rdx, str.Focusrite_IHelper.exe__
lea rcx, [0x140106640]
call fcn.140001840
mov rdi, rax
mov qword [rsp + 0x68], rax
lea rbx, [rsp + 0x278]
cmp qword [rsp + 0x290], 8
cmovae rbx, qword [rsp + 0x278]
mov qword [rsp + 0x70], rbx
mov r12, qword [rsp + 0x288]
call fcn.1400325ac
mov dword [rsp + 0x210], eax
mov qword [rsp + 0x218], rsi
mov rcx, rsi
mov qword [rsp + 0x228], rcx
mov rdx, r13
mov qword [rsp + 0x230], rdx
mov byte [rsp + 0x218], cl
mov dword [rsp + 0x60], 0x13b4
test r12, r12
je 0x140029022
cmp r12, 0x7fffffff
ja 0x140029ba9
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8d, r12d
mov rdx, rbx
mov ecx, eax
call fcn.14003261c
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x140029bb3
movsxd rcx, ebx
mov rdx, qword [rsp + 0x228]
cmp rcx, rdx
ja 0x140028f67
lea rax, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae rax, qword [rsp + 0x218]
mov qword [rsp + 0x228], rcx
mov byte [rax + rcx], 0
jmp 0x140028fd4
mov r14, rcx
sub r14, rdx
mov r8, qword [rsp + 0x230]
mov rax, r8
sub rax, rdx
cmp r14, rax
ja 0x140028fb9
mov qword [rsp + 0x228], rcx
lea rdi, [rsp + 0x218]
cmp r8, 0x10
cmovae rdi, qword [rsp + 0x218]
add rdi, rdx
mov r8, r14
xor edx, edx
mov rcx, rdi
call fcn.14005fd20
mov byte [r14 + rdi], 0
mov rdi, qword [rsp + 0x68]
jmp 0x140028fd4
mov byte [rsp + 0x20], 0
mov r9, r14
xor r8d, r8d
mov rdx, r14
lea rcx, [rsp + 0x218]
call fcn.140004570
lea r9, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae r9, qword [rsp + 0x218]
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov rdx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x210]
call fcn.14003261c
shr rax, 0x20
test eax, eax
jne 0x140029bba
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x228]
mov r14d, 0xfb4
lea rax, [rsp + 0x218]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x218]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rcx
mov word [rsp + 0x90], 0x5c22
lea rdx, [rsp + 0x80]
mov rcx, rdi
call fcn.140001380
mov rbx, rax
mov rdx, qword [rsp + 0x230]
cmp rdx, 0x10
jb 0x1400290ad
inc rdx
mov rcx, qword [rsp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400290a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029bc2
call fcn.14005ca58
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], r13
mov byte [rsp + 0x218], 0
lea rdx, [0x1400d722c]
mov rcx, rbx
call fcn.140001840
mov rbx, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call fcn.140027d40
movzx edx, al
mov rcx, rbx
call fcn.140024420
mov rcx, rbx
call fcn.14001df30
cmp qword [rsp + 0x268], 0x104
ja 0x1400294e9
lea rdx, [rsp + 0x258]
cmp qword [rsp + 0x270], 0x10
cmovae rdx, qword [rsp + 0x258]
mov r9d, 0x40
lea r8d, [r9 - 0x3f]
lea rcx, [rsp + 0xb0]
call fcn.140020750
cmp qword [rsp + 0x140], 0
je 0x1400293e0
mov ecx, 0xa8
call fcn.14005ca1c
mov r15, rax
mov qword [rsp + 0x68], rax
test rax, rax
je 0x140029302
lea rbx, [rsp + 0x278]
cmp qword [rsp + 0x290], 8
cmovae rbx, qword [rsp + 0x278]
mov qword [rsp + 0x70], rbx
mov r12, qword [rsp + 0x288]
call fcn.1400325ac
mov dword [rsp + 0x210], eax
mov qword [rsp + 0x238], rsi
mov qword [rsp + 0x248], rsi
mov qword [rsp + 0x250], r13
mov byte [rsp + 0x238], 0
mov dword [rsp + 0x60], 0x10fb4
test r12, r12
je 0x1400292da
cmp r12, 0x7fffffff
ja 0x140029bc8
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8d, r12d
mov rdx, rbx
mov ecx, eax
call fcn.14003261c
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x140029bd2
movsxd rcx, ebx
mov rdx, qword [rsp + 0x248]
cmp rcx, rdx
ja 0x140029234
lea rax, [rsp + 0x238]
cmp qword [rsp + 0x250], 0x10
cmovae rax, qword [rsp + 0x238]
mov qword [rsp + 0x248], rcx
mov byte [rax + rcx], 0
jmp 0x14002929c
mov r14, rcx
sub r14, rdx
mov r8, qword [rsp + 0x250]
mov rax, r8
sub rax, rdx
cmp r14, rax
ja 0x140029281
mov qword [rsp + 0x248], rcx
lea rdi, [rsp + 0x238]
cmp r8, 0x10
cmovae rdi, qword [rsp + 0x238]
add rdi, rdx
mov r8, r14
xor edx, edx
mov rcx, rdi
call fcn.14005fd20
mov byte [r14 + rdi], 0
jmp 0x14002929c
mov byte [rsp + 0x20], 0
mov r9, r14
xor r8d, r8d
mov rdx, r14
lea rcx, [rsp + 0x238]
call fcn.140004570
lea r9, [rsp + 0x238]
cmp qword [rsp + 0x250], 0x10
cmovae r9, qword [rsp + 0x238]
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov rdx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x210]
call fcn.14003261c
shr rax, 0x20
test eax, eax
jne 0x140029bd9
mov r14d, 0xefb5
mov dword [rsp + 0x60], r14d
lea r8, [rsp + 0x238]
lea rdx, [rsp + 0xb0]
mov rcx, r15
call fcn.14000e300
mov r15, rax
jmp 0x140029305
mov r15, rsi
test r14b, 1
je 0x14002936a
and r14d, 0xfffffffe
mov rdx, qword [rsp + 0x250]
cmp rdx, 0x10
jb 0x140029352
inc rdx
mov rcx, qword [rsp + 0x238]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002934d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029be1
call fcn.14005ca58
mov qword [rsp + 0x248], rsi
mov qword [rsp + 0x250], r13
mov byte [rsp + 0x238], 0
cmp qword [rsp + 0x140], 0
je 0x1400293e0
mov rax, qword [rsp + 0xd8]
lea rcx, [rsp + 0x130]
cmp qword [rax], rcx
jne 0x1400293b4
mov rdx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
mov qword [rax], rcx
mov rax, qword [rsp + 0xf8]
mov qword [rax], rcx
sub edx, ecx
mov rax, qword [rsp + 0x110]
mov dword [rax], edx
lea rbx, [rsp + 0xc0]
lea rcx, [rsp + 0xc0]
call fcn.140016000
test al, al
cmove rbx, rsi
mov rcx, qword [rsp + 0x140]
call fcn.14006ed94
test eax, eax
je 0x1400293e3
mov rbx, rsi
mov byte [rsp + 0x13c], 0
mov byte [rsp + 0x131], 0
lea rax, [rsp + 0xc8]
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0xe0], rax
lea rax, [rsp + 0xe8]
mov qword [rsp + 0xf8], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x100], rax
lea rax, [rsp + 0x108]
mov qword [rsp + 0x110], rax
lea rax, [rsp + 0x10c]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0x140], rsi
mov rax, qword [0x1401066d0]
mov qword [rsp + 0x134], rax
mov qword [rsp + 0x128], rsi
test rbx, rbx
jne 0x1400294e0
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rsp + rcx + 0xf8], rbx
cmovne eax, edx
or eax, dword [rsp + rcx + 0xc0]
and eax, 0x17
mov dword [rsp + rcx + 0xc0], eax
mov edx, dword [rsp + rcx + 0xc4]
and edx, eax
jne 0x140029be7
test r15, r15
jne 0x1400297fa
lea r8, [rsp + 0x2d8]
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0x218]
call fcn.1400123a0
mov rdx, qword [rsp + 0x230]
cmp rdx, 0x10
jb 0x140029549
inc rdx
mov rcx, qword [rsp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029544
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c43
call fcn.14005ca58
mov ecx, 0xa8
call fcn.14005ca1c
mov r15, rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x80], rax
test rax, rax
je 0x140029796
lea rbx, [rsp + 0x278]
cmp qword [rsp + 0x290], 8
cmovae rbx, qword [rsp + 0x278]
mov qword [rsp + 0x70], rbx
mov r12, qword [rsp + 0x288]
call fcn.1400325ac
mov dword [rsp + 0x210], eax
mov qword [rsp + 0x218], rsi
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], r13
mov byte [rsp + 0x218], 0
bts r14d, 0x14
mov dword [rsp + 0x60], r14d
test r12, r12
je 0x1400296e5
cmp r12, 0x7fffffff
ja 0x140029c49
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8d, r12d
mov rdx, rbx
mov ecx, eax
call fcn.14003261c
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x140029c53
movsxd rcx, ebx
mov rdx, qword [rsp + 0x228]
cmp rcx, rdx
ja 0x14002963a
lea rax, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae rax, qword [rsp + 0x218]
mov qword [rsp + 0x228], rcx
mov byte [rax + rcx], 0
jmp 0x1400296a7
mov r15, rcx
sub r15, rdx
mov r8, qword [rsp + 0x230]
mov rax, r8
sub rax, rdx
cmp r15, rax
ja 0x140029687
mov qword [rsp + 0x228], rcx
lea rdi, [rsp + 0x218]
cmp r8, 0x10
cmovae rdi, qword [rsp + 0x218]
add rdi, rdx
mov r8, r15
xor edx, edx
mov rcx, rdi
call fcn.14005fd20
mov byte [rdi + r15], 0
jmp 0x1400296a2
mov byte [rsp + 0x20], 0
mov r9, r15
xor r8d, r8d
mov rdx, r15
lea rcx, [rsp + 0x218]
call fcn.140004570
mov r15, qword [rsp + 0x68]
lea r9, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae r9, qword [rsp + 0x218]
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov rdx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x210]
call fcn.14003261c
shr rax, 0x20
test eax, eax
jne 0x140029c5a
btr r14d, 0x14
or r14d, 0xe0000
or r14d, 2
mov dword [rsp + 0x60], r14d
lea rax, vtable.CommandHandler.0
mov qword [r15], rax
xor edx, edx
lea rcx, [r15 + 8]
call fcn.14000d7a0
mov dl, 1
lea rcx, [r15 + 8]
call fcn.140018df0
nop
lea rbx, [r15 + 0x18]
mov qword [rbx], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], r13
mov byte [rbx], 0
lea rcx, [r15 + 0x38]
mov edx, 1
call fcn.14000d300
nop
lea rdx, [rsp + 0x2d8]
lea rcx, [rsp + 0x1c8]
call fcn.14000da50
mov rdx, rax
mov rcx, r15
call fcn.140018720
lea rax, [rsp + 0x218]
cmp rbx, rax
je 0x140029794
lea rdx, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x228]
mov rcx, rbx
call fcn.140018ea0
nop
jmp 0x140029799
mov r15, rsi
test r14b, 2
je 0x1400297fa
mov rdx, qword [rsp + 0x230]
cmp rdx, 0x10
jb 0x1400297e2
inc rdx
mov rcx, qword [rsp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400297dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c62
call fcn.14005ca58
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], r13
mov byte [rsp + 0x218], 0
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], rsi
lea rdi, [rsp + 0x2b8]
mov rbx, qword [rsp + 0x2b8]
mov r12, qword [rsp + 0x2d0]
cmp r12, 0x10
cmovae rdi, rbx
mov r14, qword [rsp + 0x2c8]
cmp r14, 0x10
jae 0x14002984d
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0x80], xmm0
jmp 0x1400298c7
mov r13, r14
or r13, 0xf
movabs rax, 0x7fffffffffffffff
cmp r13, rax
cmova r13, rax
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x1400298a1
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140029c68
mov rcx, rax
call fcn.14005ca1c
mov rcx, rax
test rax, rax
je 0x140029c6d
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400298b0
test rcx, rcx
je 0x1400298ad
call fcn.14005ca1c
jmp 0x1400298b0
mov rax, rsi
mov qword [rsp + 0x80], rax
lea r8, [r14 + 1]
mov rdx, rdi
mov rcx, rax
call fcn.14005f670
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], r13
lea r8, [rsp + 0x64]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.14001a110
movzx edi, al
mov dword [rsp + 0x78], edi
mov rdx, qword [rsp + 0x290]
cmp rdx, 8
jb 0x14002993b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x278]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029936
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c73
call fcn.14005ca58
movdqa xmm0, xmmword [0x1400d9c90]
movdqu xmmword [rsp + 0x288], xmm0
mov word [rsp + 0x278], si
mov rdx, qword [rsp + 0x2b0]
cmp rdx, 8
jb 0x14002999c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x298]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029997
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c79
call fcn.14005ca58
movdqa xmm0, xmmword [0x1400d9c90]
movdqu xmmword [rsp + 0x2a8], xmm0
mov word [rsp + 0x298], si
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0xb0], rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0xac], edx
lea rcx, [rsp + 0xc0]
call fcn.14000f1b0
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0xb0], rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0xac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0x160]
call fcn.140031dec
nop
mov rdx, qword [rsp + 0x2f0]
cmp rdx, 0x10
jb 0x140029a88
inc rdx
mov rcx, qword [rsp + 0x2d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029a82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c7f
call fcn.14005ca58
nop
cmp r12, 0x10
jb 0x140029ac1
lea rdx, [r12 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140029ab8
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c85
mov rcx, rbx
call fcn.14005ca58
nop
mov rdx, qword [rsp + 0x270]
cmp rdx, 0x10
jb 0x140029b05
inc rdx
mov rcx, qword [rsp + 0x258]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029aff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029c8b
call fcn.14005ca58
nop
jmp 0x140029b0d
lea r14, section..data
mov rbx, qword [section..data]
cmp rbx, r14
je 0x140029b47
test rbx, rbx
je 0x140029b40
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140029b38
call qword [sym.imp.ADVAPI32.dll_UnregisterTraceGuids]
mov qword [rbx + 8], rsi
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140029b25
mov qword [section..data], r14
mov eax, edi
mov rcx, qword [rsp + 0x410]
xor rcx, rsp
call fcn.14005cfc0
lea r11, [rsp + 0x420]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov dword [rsp + 0xa0], ebx
lea rdx, [0x140101b38]
lea rcx, [rsp + 0xa0]
call fcn.14005e408
nop
lea ecx, [rdx + 0xf]
call fcn.140018250
mov ecx, eax
call fcn.140018290
mov ecx, eax
call fcn.140018290
nop
mov ecx, 0x16
call fcn.140018250
mov ecx, eax
call fcn.140018290
mov ecx, eax
call fcn.140018290
nop
call fcn.14006dea8
nop
mov ecx, 0x16
call fcn.140018250
mov ecx, eax
call fcn.140018290
mov ecx, eax
call fcn.140018290
nop
call fcn.14006dea8
int3
test dl, 4
je 0x140029bf5
lea rbx, str.ios_base::badbit_set
jmp 0x140029c0a
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x80]
call fcn.14001fb10
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x1e8]
call fcn.14000e9b0
lea rdx, [0x140101a68]
lea rcx, [rsp + 0x1e8]
call fcn.14005e408
call fcn.14006dea8
nop
mov ecx, 0x16
call fcn.140018250
mov ecx, eax
call fcn.140018290
mov ecx, eax
call fcn.140018290
nop
call fcn.14006dea8
int3
call fcn.1400181e0
call fcn.14006dea8
nop
call fcn.14006dea8
nop
call fcn.14006dea8
nop
call fcn.14006dea8
nop
call fcn.14006dea8
nop
call fcn.14006dea8
int3