Function at 0x140031450
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x780]
sub rsp, 0x880
mov rax, qword [0x140313918]
xor rax, rsp
mov qword [rbp + 0x770], rax
xor esi, esi
xor edx, edx
mov r8d, 0x118
lea rcx, [rbp + 0x204]
call fcn.14021ac40
mov dword [rbp + 0x200], 0x11c
lea rcx, [rbp + 0x200]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
lea rdi, [rsi - 1]
lea r12, vtable.srl::Name.0
test eax, eax
je 0x1400327e1
cmp dword [rbp + 0x204], 6
jb 0x140031514
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x24]
lea rcx, [rsp + 0x28]
call fcn.14002fcb0
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x28]
cmp dword [rbp + 0x204], ecx
jne 0x1400314fe
cmp dword [rbp + 0x208], eax
je 0x140031514
mov dword [rbp + 0x204], ecx
mov dword [rbp + 0x208], eax
mov eax, dword [rsp + 0x20]
mov dword [rbp + 0x20c], eax
lea rcx, [rbp - 0x20]
call fcn.140018c50
nop
movzx ebx, word [rbp + 0x20c]
mov edx, dword [rbp + 0x204]
lea rcx, [rbp - 0x10]
call fcn.140018e50
mov rcx, rax
mov dl, 0x2e
call fcn.1400289b0
mov rcx, rax
mov edx, dword [rbp + 0x208]
call fcn.140018e50
mov rcx, rax
mov dl, 0x2e
call fcn.1400289b0
mov rcx, rax
mov edx, ebx
call fcn.140018e50
lea rdx, [rbp + 0x4c0]
lea rcx, [rbp - 8]
call fcn.140019820
nop
lea rbx, vtable.srl::Version.0
mov qword [rsp + 0x50], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x140032901
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rdx, [rbp + 0x4c0]
cmp qword [rbp + 0x4d8], 8
jb 0x1400315be
mov rdx, qword [rbp + 0x4c0]
test rdx, rdx
jne 0x1400315be
mov eax, esi
jmp 0x1400315cb
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400315c1
mov r8d, eax
lea rcx, [rsp + 0x58]
call fcn.140002aa8
nop
mov edx, 0x1168d
lea rcx, [rbp + 0x6b0]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rsp + 0x50]
mov rdx, rax
call fcn.14004fb30
nop
lea r15, vtable.srl::GroupID.0
mov qword [rbp + 0x6b0], r15
mov rdx, qword [rbp + 0x6d0]
cmp rdx, 8
jb 0x140031650
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003164b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003290c
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x6c8], xmm0
mov word [rbp + 0x6b8], si
mov qword [rsp + 0x50], rbx
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003168a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r14, vtable.srl::Value.0
mov qword [rsp + 0x50], r14
mov rdx, qword [rbp + 0x4d8]
cmp rdx, 8
jb 0x1400316dc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400316d7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032912
call fcn.14000410c
lea rdx, [rbp + 0x4e0]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rsp + 0x60], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x140032918
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rdx, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 8
jb 0x140031733
mov rdx, qword [rbp + 0x4e0]
test rdx, rdx
jne 0x140031733
mov eax, esi
jmp 0x140031740
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x140031736
mov r8d, eax
lea rcx, [rsp + 0x68]
call fcn.140002aa8
nop
mov edx, 0x115a0
lea rcx, [rbp + 0x630]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x630], r15
mov rdx, qword [rbp + 0x650]
cmp rdx, 8
jb 0x1400317be
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x638]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400317b9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032923
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x648], xmm0
mov word [rbp + 0x638], si
mov qword [rsp + 0x60], rbx
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400317f8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rsp + 0x60], r14
mov rdx, qword [rbp + 0x4f8]
cmp rdx, 8
jb 0x140031843
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003183e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032929
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x320]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x320]
cmp qword [rbp + 0x338], 8
cmovae rdx, qword [rbp + 0x320]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x330]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x338]
cmp rdx, 8
jb 0x1400318d2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x320]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400318cd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003292f
call fcn.14000410c
mov edx, dword [rbp + 0x204]
lea rcx, [rbp - 0x10]
call fcn.140018e50
lea rdx, [rbp + 0x500]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rsp + 0x70], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x140032935
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
lea rdx, [rbp + 0x500]
cmp qword [rbp + 0x518], 8
jb 0x140031938
mov rdx, qword [rbp + 0x500]
test rdx, rdx
jne 0x140031938
mov eax, esi
jmp 0x14003194a
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x140031940
mov r8d, eax
lea rcx, [rsp + 0x78]
call fcn.140002aa8
nop
mov edx, 0x116c7
lea rcx, [rbp + 0x540]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rsp + 0x70]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x540], r15
mov rdx, qword [rbp + 0x560]
cmp rdx, 8
jb 0x1400319c8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x548]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400319c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032940
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x558], xmm0
mov word [rbp + 0x548], si
mov qword [rsp + 0x70], rbx
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140031a02
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rsp + 0x70], r14
mov rdx, qword [rbp + 0x518]
cmp rdx, 8
jb 0x140031a4d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x500]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031a48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032946
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x340]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x340]
cmp qword [rbp + 0x358], 8
cmovae rdx, qword [rbp + 0x340]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x350]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 8
jb 0x140031adc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031ad7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003294c
call fcn.14000410c
mov edx, dword [rbp + 0x208]
lea rcx, [rbp - 0x10]
call fcn.140018e50
lea rdx, [rbp + 0x400]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rbp - 0x80], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x140032952
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x78], rax
lea rdx, [rbp + 0x400]
cmp qword [rbp + 0x418], 8
jb 0x140031b40
mov rdx, qword [rbp + 0x400]
test rdx, rdx
jne 0x140031b40
mov eax, esi
jmp 0x140031b4d
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x140031b43
mov r8d, eax
lea rcx, [rbp - 0x78]
call fcn.140002aa8
nop
mov edx, 0x116c8
lea rcx, [rbp + 0x570]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rbp - 0x80]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x570], r15
mov rdx, qword [rbp + 0x590]
cmp rdx, 8
jb 0x140031bc9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x578]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031bc4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003295d
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x588], xmm0
mov word [rbp + 0x578], si
mov qword [rbp - 0x80], rbx
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140031c01
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbp - 0x80], r14
mov rdx, qword [rbp + 0x418]
cmp rdx, 8
jb 0x140031c4b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x400]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031c46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032963
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x360]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x360]
cmp qword [rbp + 0x378], 8
cmovae rdx, qword [rbp + 0x360]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x370]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x378]
cmp rdx, 8
jb 0x140031cda
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x360]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031cd5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032969
call fcn.14000410c
movzx edx, word [rbp + 0x20c]
lea rcx, [rbp - 0x10]
call fcn.140018e50
lea rdx, [rbp + 0x420]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rbp - 0x70], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003296f
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x68], rax
lea rdx, [rbp + 0x420]
cmp qword [rbp + 0x438], 8
jb 0x140031d3f
mov rdx, qword [rbp + 0x420]
test rdx, rdx
jne 0x140031d3f
mov eax, esi
jmp 0x140031d4c
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x140031d42
mov r8d, eax
lea rcx, [rbp - 0x68]
call fcn.140002aa8
nop
mov edx, 0x116c6
lea rcx, [rbp + 0x5a0]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rbp - 0x70]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x5a0], r15
mov rdx, qword [rbp + 0x5c0]
cmp rdx, 8
jb 0x140031dc8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x5a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031dc3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003297a
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x5b8], xmm0
mov word [rbp + 0x5a8], si
mov qword [rbp - 0x70], rbx
mov rdx, qword [rbp - 0x68]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140031e00
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbp - 0x70], r14
mov rdx, qword [rbp + 0x438]
cmp rdx, 8
jb 0x140031e4a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x420]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031e45
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032980
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x380]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x380]
cmp qword [rbp + 0x398], 8
cmovae rdx, qword [rbp + 0x380]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x390]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x398]
cmp rdx, 8
jb 0x140031ed9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x380]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031ed4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032986
call fcn.14000410c
movzx edx, word [rbp + 0x314]
lea rcx, [rbp - 0x10]
call fcn.140035a50
lea rdx, [rbp + 0x440]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rbp - 0x60], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003298c
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x58], rax
lea rdx, [rbp + 0x440]
cmp qword [rbp + 0x458], 8
jb 0x140031f3e
mov rdx, qword [rbp + 0x440]
test rdx, rdx
jne 0x140031f3e
mov eax, esi
jmp 0x140031f4b
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x140031f41
mov r8d, eax
lea rcx, [rbp - 0x58]
call fcn.140002aa8
nop
mov edx, 0x116c4
lea rcx, [rbp + 0x5d0]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rbp - 0x60]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x5d0], r15
mov rdx, qword [rbp + 0x5f0]
cmp rdx, 8
jb 0x140031fc7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x5d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140031fc2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140032997
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x5e8], xmm0
mov word [rbp + 0x5d8], si
mov qword [rbp - 0x60], rbx
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140031fff
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbp - 0x60], r14
mov rdx, qword [rbp + 0x458]
cmp rdx, 8
jb 0x140032049
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140032044
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003299d
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x3a0]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x3a0]
cmp qword [rbp + 0x3b8], 8
cmovae rdx, qword [rbp + 0x3a0]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x3b0]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x3b8]
cmp rdx, 8
jb 0x1400320d8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400320d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329a3
call fcn.14000410c
movzx edx, word [rbp + 0x316]
lea rcx, [rbp - 0x10]
call fcn.140035a50
lea rdx, [rbp + 0x460]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rbp - 0x50], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x1400329a9
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x48], rax
lea rdx, [rbp + 0x460]
cmp qword [rbp + 0x478], 8
jb 0x14003213d
mov rdx, qword [rbp + 0x460]
test rdx, rdx
jne 0x14003213d
mov eax, esi
jmp 0x14003214a
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x140032140
mov r8d, eax
lea rcx, [rbp - 0x48]
call fcn.140002aa8
nop
mov edx, 0x116c5
lea rcx, [rbp + 0x600]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rbp - 0x50]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x600], r15
mov rdx, qword [rbp + 0x620]
cmp rdx, 8
jb 0x1400321c6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x608]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400321c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329b4
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x618], xmm0
mov word [rbp + 0x608], si
mov qword [rbp - 0x50], rbx
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400321fe
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbp - 0x50], r14
mov rdx, qword [rbp + 0x478]
cmp rdx, 8
jb 0x140032248
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140032243
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329ba
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x3c0]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x3c0]
cmp qword [rbp + 0x3d8], 8
cmovae rdx, qword [rbp + 0x3c0]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x3d0]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x3d8]
cmp rdx, 8
jb 0x1400322d7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400322d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329c0
call fcn.14000410c
movzx edx, word [rbp + 0x318]
lea rcx, [rbp - 0x10]
call fcn.140035a50
lea rdx, [rbp + 0x480]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rsp + 0x30], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x1400329c6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x480]
cmp qword [rbp + 0x498], 8
jb 0x140032346
mov rdx, qword [rbp + 0x480]
test rdx, rdx
jne 0x140032346
lea rcx, [rsp + 0x38]
call fcn.1400028b4
jmp 0x140032368
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x140032350
mov r8d, eax
lea rcx, [rsp + 0x38]
call fcn.140002aa8
nop
mov edx, 0x116c3
lea rcx, [rbp + 0x6e0]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rsp + 0x30]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x6e0], r15
mov rdx, qword [rbp + 0x700]
cmp rdx, 8
jb 0x1400323d8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400323d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329d1
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x6f8], xmm0
mov word [rbp + 0x6e8], si
mov qword [rsp + 0x30], r12
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140032412
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rsp + 0x30], r14
mov rdx, qword [rbp + 0x498]
cmp rdx, 8
jb 0x14003245d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x480]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140032458
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329d7
call fcn.14000410c
lea rdx, [0x1402c1640]
lea rcx, [rbp + 0x3e0]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a670
lea rdx, [rbp + 0x3e0]
cmp qword [rbp + 0x3f8], 8
cmovae rdx, qword [rbp + 0x3e0]
mov r9d, dword [rbp + 0x68]
mov r8, qword [rbp + 0x3f0]
lea rcx, [rbp - 8]
call fcn.140020bf0
nop
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x1400324ec
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400324e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329dd
call fcn.14000410c
movzx edx, byte [rbp + 0x31a]
lea rcx, [rbp - 0x10]
call fcn.140012680
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp - 8]
call fcn.140019820
nop
mov qword [rsp + 0x40], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x1400329e3
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 8
jb 0x14003255b
mov rdx, qword [rbp + 0x4a0]
test rdx, rdx
jne 0x14003255b
lea rcx, [rsp + 0x48]
call fcn.1400028b4
jmp 0x140032578
mov rax, rdi
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x140032560
mov r8d, eax
lea rcx, [rsp + 0x48]
call fcn.140002aa8
nop
mov edx, 0x116c2
lea rcx, [rbp + 0x660]
call fcn.1400214e0
nop
xor r9d, r9d
lea r8, [rsp + 0x40]
mov rdx, rax
call fcn.14004fb30
nop
mov qword [rbp + 0x660], r15
mov rdx, qword [rbp + 0x680]
cmp rdx, 8
jb 0x1400325e8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x668]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400325e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329ee
call fcn.14000410c
movdqa xmm0, xmmword [0x1402cd3d0]
movdqu xmmword [rbp + 0x678], xmm0
mov word [rbp + 0x668], si
mov qword [rsp + 0x40], r12
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140032622
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rsp + 0x40], r14
mov rdx, qword [rbp + 0x4b8]
cmp rdx, 8
jb 0x14003266d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140032668
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329f4
call fcn.14000410c
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov ebx, eax
lea rcx, [rbp + 0x100]
call fcn.140018c50
nop
mov rcx, qword [rbp + 0x110]
movsxd rdx, dword [rcx + 4]
mov ecx, dword [rbp + rdx + 0x128]
and ecx, 0xfffff9ff
bts ecx, 0xb
mov dword [rbp + rdx + 0x128], ecx
mov edx, 4
lea rcx, [rbp + 0xe8]
call fcn.140218760
mov rcx, qword [rbp + 0x110]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x110]
add rcx, rdx
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
mov eax, 0x30
mov word [rbp + rcx + 0x168], ax
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0x128], 4
mov edx, ebx
lea rcx, [rbp + 0x110]
call fcn.140018e50
lea rdx, [rbp + 0x520]
lea rcx, [rbp + 0x118]
call fcn.140019820
nop
lea rdx, [rbp + 0x520]
lea rcx, [rbp - 0x40]
call fcn.14004ab90
mov rbx, rax
mov edx, 0x116dc
lea rcx, [rbp + 0x710]
call fcn.1400214e0
nop
xor r9d, r9d
mov r8, rbx
mov rdx, rax
call fcn.14004fb30
nop
lea rcx, [rbp + 0x710]
call fcn.140021670
nop
mov qword [rbp - 0x40], r12
mov rdx, qword [rbp - 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140032780
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbp - 0x40], r14
mov rdx, qword [rbp + 0x538]
cmp rdx, 8
jb 0x1400327cb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x520]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400327c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400329fa
call fcn.14000410c
nop
lea rcx, [rbp + 0x100]
call fcn.140018b40
nop
lea rcx, [rbp - 0x20]
call fcn.140018b40
mov rax, qword [0x140322c18]
test rax, rax
jne 0x140032817
mov ecx, 0xc8
call fcn.140078dac
mov qword [rbp + 0xe0], rax
test rax, rax
je 0x14003280d
mov rcx, rax
call fcn.140010c40
jmp 0x140032810
mov rax, rsi
mov qword [0x140322c18], rax
mov rdx, qword [rax + 0x10]
lea rcx, [rbp + 0x690]
call fcn.140009744
nop
lea rdx, [rbp + 0x690]
lea rcx, [rbp - 0x30]
call fcn.14004ab90
mov rbx, rax
mov edx, 0x11627
lea rcx, [rbp + 0x740]
call fcn.1400214e0
nop
xor r9d, r9d
mov r8, rbx
mov rdx, rax
call fcn.14004fb30
nop
lea rcx, [rbp + 0x740]
call fcn.140021670
nop
mov qword [rbp - 0x30], r12
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140032889
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x6a8]
cmp rdx, 8
jb 0x1400328cb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x690]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400328c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400328fb
call fcn.14000410c
mov rcx, qword [rbp + 0x770]
xor rcx, rsp
call fcn.140215e10
lea r11, [rsp + 0x880]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
int3
call fcn.14021f028
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021f028
nop
call fcn.14021f028
nop
call fcn.14021f028
int3