Function at 0x14001f050
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x710]
sub rsp, 0x810
movaps xmmword [rsp + 0x800], xmm6
mov rax, qword [0x14031b940]
xor rax, rsp
mov qword [rbp + 0x6f0], rax
mov rbx, rdx
mov qword [rsp + 0x68], rcx
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x5e8], xmm0
movdqa xmm1, xmmword [0x1402d4850]
movdqu xmmword [rbp + 0x5f8], xmm1
mov word [rbp + 0x5e8], r12w
mov byte [rbp + 0x5e0], r12b
lea rdx, str.srl::SystemValues::AddValues
lea rcx, [rbp + 0x5e8]
call fcn.1400182b0
nop
call fcn.140020e90
cmp dword [rax + 8], 4
jl 0x14001f0e7
lea rcx, [rbp + 0x5e0]
call fcn.140016100
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x14001f147
call fcn.140020e90
mov rcx, rax
mov edx, 3
call fcn.1400211b0
mov rdi, rax
call fcn.140020e90
mov rdx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x14001f119
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.values_
mov rcx, rax
call fcn.140016880
mov rcx, rax
mov rdx, rbx
call fcn.140016880
mov rcx, rax
call fcn.140017a70
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140020386
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
mov r13, 0xffffffffffffffff
test rbx, rbx
je 0x14001f19d
cmp rbx, 0x10000
jae 0x14001f18b
movzx edx, bx
lea rcx, [rsp + 0x30]
call fcn.1400108d0
jmp 0x14001f1ae
mov r8, r13
nop
inc r8
cmp word [rbx + r8*2], 0
jne 0x14001f190
jmp 0x14001f1a0
mov r8d, r12d
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140002b6c
nop
mov rdi, qword [rsp + 0x30]
lea rsi, [rdi - 0x10]
mov qword [rsp + 0x38], rsi
cmp dword [rsi], 0
jge 0x14001f1c6
mov r15d, r13d
jmp 0x14001f1e8
lea rdx, str._groups_
mov rcx, rdi
call fcn.1402250e8
mov r15, rax
test rax, rax
jne 0x14001f1e2
mov r15d, r13d
jmp 0x14001f1e8
sub r15, rdi
sar r15, 1
movsd xmm6, qword [0x1402d4800]
test r15d, r15d
js 0x140020323
movsxd rbx, r15d
mov qword [rsp + 0x48], rbx
cmp r15d, dword [rsi]
jg 0x14001f226
lea rcx, [rdi + rbx*2]
lea rdx, str._group
call fcn.1402250e8
mov r14, rax
test rax, rax
je 0x14001f22b
sub r14, rdi
sar r14, 1
jmp 0x14001f22e
mov qword [rsp + 0x48], rbx
mov r14d, r13d
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x14001f8b1
call fcn.140020e90
mov rsi, rax
lea rcx, [rbp + 0x30]
call fcn.140019350
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x4d0], xmm0
mov qword [rbp + 0x4e0], r12
mov qword [rbp + 0x4e8], 7
mov word [rbp + 0x4d0], r12w
lea rdx, str.TRACE
lea rcx, [rbp + 0x4d0]
call fcn.1400182b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x430], xmm0
mov rdx, r12
mov qword [rbp + 0x440], rdx
mov r8d, 7
mov qword [rbp + 0x448], r8
mov word [rbp + 0x430], r12w
mov ebx, r12d
cmp dword [rsi + 0x10], 0
jle 0x14001f329
cmp ebx, 0xa
jge 0x14001f329
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x430]
cmp rax, 2
jb 0x14001f2f8
lea rax, [rdx + 2]
mov qword [rbp + 0x440], rax
cmp r8, 7
cmova rcx, qword [rbp + 0x430]
mov eax, dword [0x1402cda80]
mov dword [rcx + rdx*2], eax
mov word [rcx + rdx*2 + 4], r12w
jmp 0x14001f312
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rsi + 0x10]
jge 0x14001f329
mov r8, qword [rbp + 0x448]
mov rdx, qword [rbp + 0x440]
jmp 0x14001f2b8
xorps xmm0, xmm0
movups xmmword [rbp + 0x4b0], xmm0
mov qword [rbp + 0x4c0], r12
mov qword [rbp + 0x4c8], 7
mov word [rbp + 0x4b0], r12w
movups xmmword [rbp + 0x470], xmm0
mov qword [rbp + 0x480], r12
mov qword [rbp + 0x488], 7
mov word [rbp + 0x470], r12w
call fcn.1402320cc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0x6c0]
call fcn.14023221c
lea rdx, [rbp + 0x6c0]
lea rcx, [rbp + 0x4b0]
call fcn.1400182b0
lea rcx, [rbp + 0x330]
call fcn.140019350
nop
cmp dword [rsi + 0x14], 0
jne 0x14001f3c3
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x340]
call fcn.140012dc0
jmp 0x14001f3e4
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rsi + 0x14]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, xmm6
lea rcx, [rbp + 0x340]
call fcn.140021890
lea rdx, [rbp + 0x5c0]
lea rcx, [rbp + 0x348]
call fcn.140019f80
nop
mov rdx, qword [rbp + 0x488]
cmp rdx, 7
jbe 0x14001f43e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x470]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f439
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020445
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x5c0]
movups xmmword [rbp + 0x470], xmm0
movups xmm1, xmmword [rbp + 0x5d0]
movups xmmword [rbp + 0x480], xmm1
mov qword [rbp + 0x5d0], r12
mov qword [rbp + 0x5d8], 7
mov word [rbp + 0x5c0], r12w
lea rcx, [rbp + 0x330]
call fcn.140019240
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rsp + 0x70]
call fcn.1402237f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rbp - 0x80]
call fcn.1402237f8
mov rcx, qword [rbp + 0x40]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x40]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x4b0]
cmp qword [rbp + 0x4c8], 7
cmova rdx, qword [rbp + 0x4b0]
mov r8, qword [rbp + 0x4c0]
lea rcx, [rbp + 0x40]
call fcn.140016b40
lea rdx, [0x1402cd5bc]
mov rcx, rax
call fcn.140016880
mov rsi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov edx, dword [rbx + 8]
call qword [rbx]
mov edx, 6
lea rcx, [rbp - 0x70]
call fcn.140223820
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
mov word [rcx + rsi + 0x58], 0x30
mov edx, 3
lea rcx, [rbp - 0x60]
call fcn.14022380c
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x470]
cmp qword [rbp + 0x488], 7
cmova rdx, qword [rbp + 0x470]
mov r8, qword [rbp + 0x480]
mov rcx, rsi
call fcn.140016b40
mov rbx, rax
mov edx, 5
lea rcx, [rbp - 0x50]
call fcn.140223820
mov rsi, rax
lea rdx, [0x1402cd5bc]
mov rcx, rbx
call fcn.140016880
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rsi + 8]
call qword [rsi]
mov rcx, qword [rbx]
movsxd rdx, dword [rcx + 4]
mov word [rdx + rbx + 0x58], 0x20
mov edx, 0x40
lea rcx, [rbp - 0x40]
call fcn.1402237f8
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x4d0]
cmp qword [rbp + 0x4e8], 7
cmova rdx, qword [rbp + 0x4d0]
mov r8, qword [rbp + 0x4e0]
mov rcx, rbx
call fcn.140016b40
lea rbx, [rbp + 0x430]
cmp qword [rbp + 0x448], 7
cmova rbx, qword [rbp + 0x430]
lea rdx, [0x1402cdad0]
mov rcx, rax
call fcn.140016880
mov rcx, rax
mov rdx, rbx
call fcn.140016880
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14032b0dc], eax
jg 0x140020391
lea rdx, [rbp + 0x5a0]
lea rcx, [rbp + 0x48]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x14001f69b
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f696
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002044b
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x5a0]
movups xmmword [0x14031c620], xmm0
movups xmm1, xmmword [rbp + 0x5b0]
movups xmmword [0x14031c630], xmm1
mov qword [rbp + 0x5b0], r12
mov qword [rbp + 0x5b8], 7
mov word [rbp + 0x5a0], r12w
mov rdx, qword [rbp + 0x488]
cmp rdx, 7
jbe 0x14001f717
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x470]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f712
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020451
call fcn.140003e94
mov qword [rbp + 0x480], r12
mov qword [rbp + 0x488], 7
mov word [rbp + 0x470], r12w
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 7
jbe 0x14001f777
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f772
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020457
call fcn.140003e94
mov qword [rbp + 0x4c0], r12
mov qword [rbp + 0x4c8], 7
mov word [rbp + 0x4b0], r12w
mov rdx, qword [rbp + 0x448]
cmp rdx, 7
jbe 0x14001f7d7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f7d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002045d
call fcn.140003e94
mov qword [rbp + 0x440], r12
mov qword [rbp + 0x448], 7
mov word [rbp + 0x430], r12w
mov rdx, qword [rbp + 0x4e8]
cmp rdx, 7
jbe 0x14001f837
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f832
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020463
call fcn.140003e94
mov qword [rbp + 0x4e0], r12
mov qword [rbp + 0x4e8], 7
mov word [rbp + 0x4d0], r12w
lea rcx, [rbp + 0x30]
call fcn.140019240
call fcn.140020e90
lea rdx, [0x14031c620]
cmp qword [reloc.OLEAUT32.dll_VariantInit], 7
cmova rdx, qword [0x14031c620]
mov r8, qword [0x14031c630]
mov rcx, rax
call fcn.140016b40
lea rdx, str.pos_
mov rcx, rax
call fcn.140016880
mov rcx, rax
mov edx, r14d
call fcn.140012dc0
mov rcx, rax
call fcn.140017a70
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x38]
test r14d, r14d
js 0x140020323
cmp r15d, dword [rsi]
jg 0x14001f8df
lea rcx, [rdi + rbx*2]
lea rdx, [0x1402c9854]
call fcn.1402250e8
mov r12, rax
test rax, rax
je 0x14001f8df
sub r12, rdi
sar r12, 1
jmp 0x14001f8e2
mov r12d, r13d
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x14001ff73
call fcn.140020e90
mov rsi, rax
lea rcx, [rbp + 0x130]
call fcn.140019350
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x510], xmm0
xor r14d, r14d
mov qword [rbp + 0x520], r14
mov qword [rbp + 0x528], 7
mov word [rbp + 0x510], r14w
lea rdx, str.TRACE
lea rcx, [rbp + 0x510]
call fcn.1400182b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
mov edx, r14d
mov qword [rbp + 0x460], rdx
mov r8d, 7
mov qword [rbp + 0x468], r8
mov word [rbp + 0x450], r14w
mov ebx, r14d
cmp dword [rsi + 0x10], ebx
jle 0x14001f9e2
cmp ebx, 0xa
jge 0x14001f9e2
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x450]
cmp rax, 2
jb 0x14001f9b1
lea rax, [rdx + 2]
mov qword [rbp + 0x460], rax
cmp r8, 7
cmova rcx, qword [rbp + 0x450]
mov eax, dword [0x1402cda80]
mov dword [rcx + rdx*2], eax
mov word [rcx + rdx*2 + 4], r14w
jmp 0x14001f9cb
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rsi + 0x10]
jge 0x14001f9e2
mov r8, qword [rbp + 0x468]
mov rdx, qword [rbp + 0x460]
jmp 0x14001f971
xorps xmm0, xmm0
movups xmmword [rbp + 0x4f0], xmm0
mov qword [rbp + 0x500], r14
mov qword [rbp + 0x508], 7
mov word [rbp + 0x4f0], r14w
movups xmmword [rbp + 0x490], xmm0
mov qword [rbp + 0x4a0], r14
mov qword [rbp + 0x4a8], 7
mov word [rbp + 0x490], r14w
call fcn.1402320cc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0x6d8]
call fcn.14023221c
lea rdx, [rbp + 0x6d8]
lea rcx, [rbp + 0x4f0]
call fcn.1400182b0
lea rcx, [rbp + 0x230]
call fcn.140019350
nop
cmp dword [rsi + 0x14], 0
jne 0x14001fa7c
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x240]
call fcn.140012dc0
jmp 0x14001fa9d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rsi + 0x14]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, xmm6
lea rcx, [rbp + 0x240]
call fcn.140021890
lea rdx, [rbp + 0x530]
lea rcx, [rbp + 0x248]
call fcn.140019f80
nop
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 7
jbe 0x14001faf7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001faf2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020469
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x530]
movups xmmword [rbp + 0x490], xmm0
movups xmm1, xmmword [rbp + 0x540]
movups xmmword [rbp + 0x4a0], xmm1
mov qword [rbp + 0x540], r14
mov qword [rbp + 0x548], 7
mov word [rbp + 0x530], r14w
lea rcx, [rbp + 0x230]
call fcn.140019240
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp - 0x30]
call fcn.1402237f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rbp - 0x20]
call fcn.1402237f8
mov rcx, qword [rbp + 0x140]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x140]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x4f0]
cmp qword [rbp + 0x508], 7
cmova rdx, qword [rbp + 0x4f0]
mov r8, qword [rbp + 0x500]
lea rcx, [rbp + 0x140]
call fcn.140016b40
lea rdx, [0x1402cd5bc]
mov rcx, rax
call fcn.140016880
mov rsi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov edx, dword [rbx + 8]
call qword [rbx]
mov edx, 6
lea rcx, [rbp - 0x10]
call fcn.140223820
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
mov word [rcx + rsi + 0x58], 0x30
mov edx, 3
lea rcx, [rbp]
call fcn.14022380c
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x490]
cmp qword [rbp + 0x4a8], 7
cmova rdx, qword [rbp + 0x490]
mov r8, qword [rbp + 0x4a0]
mov rcx, rsi
call fcn.140016b40
mov rbx, rax
mov edx, 5
lea rcx, [rbp + 0x10]
call fcn.140223820
mov rsi, rax
lea rdx, [0x1402cd5bc]
mov rcx, rbx
call fcn.140016880
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rsi + 8]
call qword [rsi]
mov rcx, qword [rbx]
movsxd rdx, dword [rcx + 4]
mov word [rdx + rbx + 0x58], 0x20
mov edx, 0x40
lea rcx, [rbp + 0x20]
call fcn.1402237f8
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x510]
cmp qword [rbp + 0x528], 7
cmova rdx, qword [rbp + 0x510]
mov r8, qword [rbp + 0x520]
mov rcx, rbx
call fcn.140016b40
lea rbx, [rbp + 0x450]
cmp qword [rbp + 0x468], 7
cmova rbx, qword [rbp + 0x450]
lea rdx, [0x1402cdad0]
mov rcx, rax
call fcn.140016880
mov rcx, rax
mov rdx, rbx
call fcn.140016880
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14032b0dc], eax
jg 0x1400203eb
lea rdx, [rbp + 0x550]
lea rcx, [rbp + 0x148]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x14001fd5f
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fd5a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002046f
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x550]
movups xmmword [0x14031c620], xmm0
movups xmm1, xmmword [rbp + 0x560]
movups xmmword [0x14031c630], xmm1
mov qword [rbp + 0x560], r14
mov qword [rbp + 0x568], 7
mov word [rbp + 0x550], r14w
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 7
jbe 0x14001fddb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fdd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020475
call fcn.140003e94
mov qword [rbp + 0x4a0], r14
mov qword [rbp + 0x4a8], 7
mov word [rbp + 0x490], r14w
mov rdx, qword [rbp + 0x508]
cmp rdx, 7
jbe 0x14001fe3b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fe36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002047b
call fcn.140003e94
mov qword [rbp + 0x500], r14
mov qword [rbp + 0x508], 7
mov word [rbp + 0x4f0], r14w
mov rdx, qword [rbp + 0x468]
cmp rdx, 7
jbe 0x14001fe9b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fe96
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020481
call fcn.140003e94
mov qword [rbp + 0x460], r14
mov qword [rbp + 0x468], 7
mov word [rbp + 0x450], r14w
mov rdx, qword [rbp + 0x528]
cmp rdx, 7
jbe 0x14001fefb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x510]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fef6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140020487
call fcn.140003e94
mov qword [rbp + 0x520], r14
mov qword [rbp + 0x528], 7
mov word [rbp + 0x510], r14w
lea rcx, [rbp + 0x130]
call fcn.140019240
call fcn.140020e90
lea rdx, [0x14031c620]
cmp qword [reloc.OLEAUT32.dll_VariantInit], 7
cmova rdx, qword [0x14031c620]
mov r8, qword [0x14031c630]
mov rcx, rax
call fcn.140016b40
lea rdx, str.id_pos
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
mov edx, r12d
call fcn.140012dc0
mov rcx, rax
call fcn.140017a70
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x48]
cmp r15d, dword [rsi]
jg 0x14001ff9d
lea rcx, [rdi + rbx*2]
lea rdx, str.index
call fcn.1402250e8
mov rsi, rax
test rax, rax
je 0x14001ff9d
sub rsi, rdi
sar rsi, 1
jmp 0x14001ffa0
mov esi, r13d
mov r14, qword [rsp + 0x38]
cmp r15d, dword [r14]
jg 0x14001ffca
lea rcx, [rdi + rbx*2]
lea rdx, str._value_
call fcn.1402250e8
mov r14, rax
test rax, rax
je 0x14001ffca
sub r14, rdi
sar r14, 1
jmp 0x14001ffcd
mov r14d, r13d
mov rax, qword [rsp + 0x38]
cmp r15d, dword [rax]
jg 0x140020323
lea rcx, [rdi + rbx*2]
lea rdx, str.__group_
call fcn.1402250e8
mov r15, rax
test rax, rax
je 0x140020323
sub r15, rdi
sar r15, 1
test r15d, r15d
jle 0x140020323
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x14002037b
mov rax, qword [rax]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x40], rbx
test r12d, r12d
jle 0x14002004c
lea r8d, [r12 + 2]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, r15d
lea rcx, [rsp + 0x30]
call fcn.14001eda0
mov rbx, qword [rsp + 0x40]
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140020498
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
test esi, esi
jle 0x14002008b
lea r8d, [rsi + 5]
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, r15d
lea rcx, [rsp + 0x30]
call fcn.14001eda0
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x14002048d
mov rax, qword [rax]
call qword [rax + 0x18]
lea rsi, [rax + 0x18]
mov qword [rsp + 0x50], rsi
test r14d, r14d
jle 0x14002012e
mov rax, qword [rsp + 0x38]
cmp r14d, dword [rax]
jg 0x14002012e
movsxd rax, r14d
lea rcx, [rdi + rax*2]
lea rdx, str.__value_
call fcn.1402250e8
test rax, rax
je 0x14002012e
sub rax, rdi
sar rax, 1
test eax, eax
jle 0x14002012e
sub eax, r14d
lea r9d, [rax - 7]
lea r8d, [r14 + 7]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x30]
call fcn.140012fc0
nop
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140002c9c
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020124
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x1400201ae
call fcn.140020e90
mov rcx, rax
mov edx, 3
call fcn.1400211b0
mov rdi, rax
call fcn.140020e90
mov rdx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x140020160
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, [0x1402cda00]
mov rcx, rax
call fcn.140016880
mov rdi, rax
mov rdx, rbx
mov rcx, rax
call fcn.140016880
lea rdx, [0x1402cd9fc]
mov rcx, rdi
call fcn.140014ab0
mov rdi, rax
mov rdx, rsi
mov rcx, rax
call fcn.140016880
mov rcx, rdi
call fcn.140017a70
xor r12d, r12d
cmp dword [rbx - 0x10], r12d
jle 0x1400202a7
lea rax, vtable.srl::GroupID.0
mov qword [rbp + 0x570], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x578], xmm0
mov qword [rbp + 0x588], r12
mov qword [rbp + 0x590], 7
mov word [rbp + 0x578], r12w
mov rdx, rbx
lea rcx, [rbp + 0x578]
call fcn.1400182b0
xor edx, edx
lea r8d, [r12 + 0xa]
mov rcx, rbx
call fcn.140232984
mov qword [rbp + 0x598], rax
mov rcx, qword [rsp + 0x58]
call fcn.1402313e8
mov r8d, eax
lea rdx, [rbp + 0x570]
lea rcx, [rbp + 0x680]
call fcn.140022240
nop
lea rcx, vtable.srl::SystemValue.0
mov qword [rbp + 0x610], rcx
mov rdx, rax
lea rcx, [rbp + 0x618]
call fcn.1400222d0
nop
mov rdx, rsi
lea rcx, [rbp + 0x658]
call fcn.1400092fc
nop
lea rdx, [rbp + 0x610]
mov rcx, qword [rsp + 0x68]
call fcn.14001da40
nop
lea rcx, [rbp + 0x610]
call fcn.1400220e0
nop
lea rax, vtable.srl::SystemValueID.0
mov qword [rbp + 0x680], rax
lea rcx, [rbp + 0x688]
call fcn.1400226c0
nop
lea rcx, [rbp + 0x570]
call fcn.1400226c0
add r15d, 8
lea rdx, [rsi - 0x18]
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400202c6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400202e6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jle 0x14002030b
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
jmp 0x14001f1f0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
jmp 0x14001f1f0
lea rdx, [rdi - 0x18]
lock xadd dword [rdx + 0x10], r13d
sub r13d, 1
jg 0x14002033d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rbp + 0x5e0]
call fcn.140017b00
mov rcx, qword [rbp + 0x6f0]
xor rcx, rsp
call fcn.140220eb0
mov rbx, qword [rsp + 0x860]
movaps xmm6, xmmword [rsp + 0x800]
add rsp, 0x810
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140002e3c
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
lea rcx, [0x14032b0dc]
call fcn.1402211e4
cmp dword [0x14032b0dc], 0xffffffff
jne 0x14001f644
xorps xmm0, xmm0
movups xmmword [0x14031c620], xmm0
mov qword [0x14031c630], r12
mov qword [reloc.OLEAUT32.dll_VariantInit], 7
mov word [0x14031c620], r12w
lea rcx, [0x14026f950]
call fcn.1402210f8
lea rcx, [0x14032b0dc]
call fcn.140221178
jmp 0x14001f644
lea rcx, [0x14032b0dc]
call fcn.1402211e4
cmp dword [0x14032b0dc], 0xffffffff
jne 0x14001fd05
xorps xmm0, xmm0
movups xmmword [0x14031c620], xmm0
mov qword [0x14031c630], r14
mov qword [reloc.OLEAUT32.dll_VariantInit], 7
mov word [0x14031c620], r14w
lea rcx, [0x14026f950]
call fcn.1402210f8
lea rcx, [0x14032b0dc]
call fcn.140221178
jmp 0x14001fd05
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
mov ecx, 0x80004005
call fcn.140002e3c
int3