Function at 0x14002df10
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 [0x14030a918]
xor rax, rsp
mov qword [rbp + 0x770], rax
xor esi, esi
xor edx, edx
mov r8d, 0x118
lea rcx, [rbp + 0x204]
call fcn.140216650
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 0x14002f2a1
cmp dword [rbp + 0x204], 6
jb 0x14002dfd4
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x24]
lea rcx, [rsp + 0x28]
call fcn.14002c710
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x28]
cmp dword [rbp + 0x204], ecx
jne 0x14002dfbe
cmp dword [rbp + 0x208], eax
je 0x14002dfd4
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.140018c90
nop
movzx ebx, word [rbp + 0x20c]
mov edx, dword [rbp + 0x204]
lea rcx, [rbp - 0x10]
call fcn.140018e90
mov rcx, rax
mov dl, 0x2e
call fcn.140028c90
mov rcx, rax
mov edx, dword [rbp + 0x208]
call fcn.140018e90
mov rcx, rax
mov dl, 0x2e
call fcn.140028c90
mov rcx, rax
mov edx, ebx
call fcn.140018e90
lea rdx, [rbp + 0x4c0]
lea rcx, [rbp - 8]
call fcn.140019860
nop
lea rbx, vtable.srl::Version.0
mov qword [rsp + 0x50], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f3c1
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 0x14002e07e
mov rdx, qword [rbp + 0x4c0]
test rdx, rdx
jne 0x14002e07e
mov eax, esi
jmp 0x14002e08b
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002e081
mov r8d, eax
lea rcx, [rsp + 0x58]
call fcn.140002aa8
nop
mov edx, 0x1168d
lea rcx, [rbp + 0x6b0]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rsp + 0x50]
mov rdx, rax
call fcn.14004dd30
nop
lea r15, vtable.srl::GroupID.0
mov qword [rbp + 0x6b0], r15
mov rdx, qword [rbp + 0x6d0]
cmp rdx, 8
jb 0x14002e110
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e10b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f3cc
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002e14a
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 0x14002e19c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e197
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f3d2
call fcn.14000410c
lea rdx, [rbp + 0x4e0]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rsp + 0x60], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f3d8
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 0x14002e1f3
mov rdx, qword [rbp + 0x4e0]
test rdx, rdx
jne 0x14002e1f3
mov eax, esi
jmp 0x14002e200
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002e1f6
mov r8d, eax
lea rcx, [rsp + 0x68]
call fcn.140002aa8
nop
mov edx, 0x115a0
lea rcx, [rbp + 0x630]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x630], r15
mov rdx, qword [rbp + 0x650]
cmp rdx, 8
jb 0x14002e27e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x638]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e279
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f3e3
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002e2b8
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 0x14002e303
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e2fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f3e9
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x320]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x338]
cmp rdx, 8
jb 0x14002e392
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x320]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e38d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f3ef
call fcn.14000410c
mov edx, dword [rbp + 0x204]
lea rcx, [rbp - 0x10]
call fcn.140018e90
lea rdx, [rbp + 0x500]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rsp + 0x70], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f3f5
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 0x14002e3f8
mov rdx, qword [rbp + 0x500]
test rdx, rdx
jne 0x14002e3f8
mov eax, esi
jmp 0x14002e40a
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002e400
mov r8d, eax
lea rcx, [rsp + 0x78]
call fcn.140002aa8
nop
mov edx, 0x116c7
lea rcx, [rbp + 0x540]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rsp + 0x70]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x540], r15
mov rdx, qword [rbp + 0x560]
cmp rdx, 8
jb 0x14002e488
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x548]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e483
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f400
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002e4c2
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 0x14002e50d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x500]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e508
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f406
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x340]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 8
jb 0x14002e59c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e597
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f40c
call fcn.14000410c
mov edx, dword [rbp + 0x208]
lea rcx, [rbp - 0x10]
call fcn.140018e90
lea rdx, [rbp + 0x400]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rbp - 0x80], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f412
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 0x14002e600
mov rdx, qword [rbp + 0x400]
test rdx, rdx
jne 0x14002e600
mov eax, esi
jmp 0x14002e60d
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002e603
mov r8d, eax
lea rcx, [rbp - 0x78]
call fcn.140002aa8
nop
mov edx, 0x116c8
lea rcx, [rbp + 0x570]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rbp - 0x80]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x570], r15
mov rdx, qword [rbp + 0x590]
cmp rdx, 8
jb 0x14002e689
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x578]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e684
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f41d
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002e6c1
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 0x14002e70b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x400]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e706
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f423
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x360]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x378]
cmp rdx, 8
jb 0x14002e79a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x360]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e795
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f429
call fcn.14000410c
movzx edx, word [rbp + 0x20c]
lea rcx, [rbp - 0x10]
call fcn.140018e90
lea rdx, [rbp + 0x420]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rbp - 0x70], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f42f
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 0x14002e7ff
mov rdx, qword [rbp + 0x420]
test rdx, rdx
jne 0x14002e7ff
mov eax, esi
jmp 0x14002e80c
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002e802
mov r8d, eax
lea rcx, [rbp - 0x68]
call fcn.140002aa8
nop
mov edx, 0x116c6
lea rcx, [rbp + 0x5a0]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rbp - 0x70]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x5a0], r15
mov rdx, qword [rbp + 0x5c0]
cmp rdx, 8
jb 0x14002e888
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x5a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e883
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f43a
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002e8c0
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 0x14002e90a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x420]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e905
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f440
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x380]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x398]
cmp rdx, 8
jb 0x14002e999
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x380]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e994
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f446
call fcn.14000410c
movzx edx, word [rbp + 0x314]
lea rcx, [rbp - 0x10]
call fcn.1400324a0
lea rdx, [rbp + 0x440]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rbp - 0x60], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f44c
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 0x14002e9fe
mov rdx, qword [rbp + 0x440]
test rdx, rdx
jne 0x14002e9fe
mov eax, esi
jmp 0x14002ea0b
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002ea01
mov r8d, eax
lea rcx, [rbp - 0x58]
call fcn.140002aa8
nop
mov edx, 0x116c4
lea rcx, [rbp + 0x5d0]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rbp - 0x60]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x5d0], r15
mov rdx, qword [rbp + 0x5f0]
cmp rdx, 8
jb 0x14002ea87
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x5d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ea82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f457
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002eabf
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 0x14002eb09
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002eb04
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f45d
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x3a0]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x3b8]
cmp rdx, 8
jb 0x14002eb98
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002eb93
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f463
call fcn.14000410c
movzx edx, word [rbp + 0x316]
lea rcx, [rbp - 0x10]
call fcn.1400324a0
lea rdx, [rbp + 0x460]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rbp - 0x50], rbx
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f469
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 0x14002ebfd
mov rdx, qword [rbp + 0x460]
test rdx, rdx
jne 0x14002ebfd
mov eax, esi
jmp 0x14002ec0a
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002ec00
mov r8d, eax
lea rcx, [rbp - 0x48]
call fcn.140002aa8
nop
mov edx, 0x116c5
lea rcx, [rbp + 0x600]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rbp - 0x50]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x600], r15
mov rdx, qword [rbp + 0x620]
cmp rdx, 8
jb 0x14002ec86
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x608]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ec81
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f474
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002ecbe
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 0x14002ed08
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ed03
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f47a
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x3c0]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x3d8]
cmp rdx, 8
jb 0x14002ed97
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ed92
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f480
call fcn.14000410c
movzx edx, word [rbp + 0x318]
lea rcx, [rbp - 0x10]
call fcn.1400324a0
lea rdx, [rbp + 0x480]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rsp + 0x30], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f486
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 0x14002ee06
mov rdx, qword [rbp + 0x480]
test rdx, rdx
jne 0x14002ee06
lea rcx, [rsp + 0x38]
call fcn.1400028b4
jmp 0x14002ee28
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002ee10
mov r8d, eax
lea rcx, [rsp + 0x38]
call fcn.140002aa8
nop
mov edx, 0x116c3
lea rcx, [rbp + 0x6e0]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rsp + 0x30]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x6e0], r15
mov rdx, qword [rbp + 0x700]
cmp rdx, 8
jb 0x14002ee98
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ee93
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f491
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002eed2
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 0x14002ef1d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x480]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ef18
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f497
call fcn.14000410c
lea rdx, [0x1402b9b30]
lea rcx, [rbp + 0x3e0]
call fcn.140009744
nop
lea rcx, [rbp - 8]
call fcn.14001a6b0
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.140020e90
nop
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x14002efac
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002efa7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f49d
call fcn.14000410c
movzx edx, byte [rbp + 0x31a]
lea rcx, [rbp - 0x10]
call fcn.1400126c0
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp - 8]
call fcn.140019860
nop
mov qword [rsp + 0x40], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14002f4a3
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 0x14002f01b
mov rdx, qword [rbp + 0x4a0]
test rdx, rdx
jne 0x14002f01b
lea rcx, [rsp + 0x48]
call fcn.1400028b4
jmp 0x14002f038
mov rax, rdi
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002f020
mov r8d, eax
lea rcx, [rsp + 0x48]
call fcn.140002aa8
nop
mov edx, 0x116c2
lea rcx, [rbp + 0x660]
call fcn.140021780
nop
xor r9d, r9d
lea r8, [rsp + 0x40]
mov rdx, rax
call fcn.14004dd30
nop
mov qword [rbp + 0x660], r15
mov rdx, qword [rbp + 0x680]
cmp rdx, 8
jb 0x14002f0a8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x668]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f0a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f4ae
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c55e0]
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 0x14002f0e2
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 0x14002f12d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f128
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f4b4
call fcn.14000410c
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov ebx, eax
lea rcx, [rbp + 0x100]
call fcn.140018c90
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.140214170
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.140018e90
lea rdx, [rbp + 0x520]
lea rcx, [rbp + 0x118]
call fcn.140019860
nop
lea rdx, [rbp + 0x520]
lea rcx, [rbp - 0x40]
call fcn.140048d90
mov rbx, rax
mov edx, 0x116dc
lea rcx, [rbp + 0x710]
call fcn.140021780
nop
xor r9d, r9d
mov r8, rbx
mov rdx, rax
call fcn.14004dd30
nop
lea rcx, [rbp + 0x710]
call fcn.140021910
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 0x14002f240
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 0x14002f28b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x520]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f285
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f4ba
call fcn.14000410c
nop
lea rcx, [rbp + 0x100]
call fcn.140018b80
nop
lea rcx, [rbp - 0x20]
call fcn.140018b80
mov rax, qword [0x140319c88]
test rax, rax
jne 0x14002f2d7
mov ecx, 0xd8
call fcn.1400747bc
mov qword [rbp + 0xe0], rax
test rax, rax
je 0x14002f2cd
mov rcx, rax
call fcn.140010c40
jmp 0x14002f2d0
mov rax, rsi
mov qword [0x140319c88], rax
mov rdx, qword [rax + 0x10]
lea rcx, [rbp + 0x690]
call fcn.140009744
nop
lea rdx, [rbp + 0x690]
lea rcx, [rbp - 0x30]
call fcn.140048d90
mov rbx, rax
mov edx, 0x11627
lea rcx, [rbp + 0x740]
call fcn.140021780
nop
xor r9d, r9d
mov r8, rbx
mov rdx, rax
call fcn.14004dd30
nop
lea rcx, [rbp + 0x740]
call fcn.140021910
nop
mov qword [rbp - 0x30], r12
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x14002f349
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 0x14002f38b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x690]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f386
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f3bb
call fcn.14000410c
mov rcx, qword [rbp + 0x770]
xor rcx, rsp
call fcn.140211820
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.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3
call fcn.14021a85c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
nop
call fcn.14021a85c
int3