Function at 0x1400294e0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xa8
mov rdi, qword [0x14007d2a0]
xor r15d, r15d
test rdi, rdi
jne 0x140029691
mov rax, qword gs:[0x60]
mov r10d, r15d
mov r9d, 0x1b9272ac
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r12, qword [rax]
mov rsi, r12
nop dword [rax]
movups xmm0, xmmword [rsi + 0x58]
movd eax, xmm0
sub ax, 8
test r10d, r10d
je 0x14002957d
psrldq xmm0, 8
mov edx, 0x98242054
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea rdi, [rcx + rax*2]
cmp rcx, rdi
je 0x140029574
nop
movsx eax, byte [rcx]
add rcx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, rdi
jne 0x140029560
cmp edx, r10d
jne 0x14002966e
mov r8, qword [rsi + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov rcx, qword [rax + r8 + 0x88]
mov r15, rcx
mov ebx, ecx
shr r15, 0x20
add rbx, r8
cmp rbx, r8
je 0x14002966e
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x14002966e
mov r14d, dword [rbx + 0x20]
dec edi
mov edx, 0x98242054
lea rax, [r14 + rdi*4]
mov ecx, dword [rax + r8]
add rcx, r8
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400295e7
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x1400295d0
cmp edx, r9d
je 0x1400295f2
test edi, edi
jne 0x1400295b1
jmp 0x14002966e
mov eax, dword [rbx + 0x24]
mov ecx, dword [rbx + 0x1c]
add rax, r8
add rcx, r8
movzx eax, word [rax + rdi*2]
mov edi, dword [rcx + rax*4]
add rdi, r8
cmp rdi, rbx
jbe 0x140029812
lea rax, [rbx + r15]
cmp rdi, rax
jae 0x140029812
movzx eax, byte [rdi]
mov r10d, 0x98242054
mov r9d, r10d
cmp al, 0x2e
je 0x140029647
nop
movsx eax, al
inc rdi
xor eax, r10d
imul r10d, eax, 0x1000193
movzx eax, byte [rdi]
cmp al, 0x2e
jne 0x140029630
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14002966a
movsx eax, al
lea rdi, [rdi + 1]
xor eax, r9d
imul r9d, eax, 0x1000193
movzx eax, byte [rdi]
test al, al
jne 0x140029652
mov rsi, qword [r12]
mov rax, qword [rsi]
mov rsi, rax
cmp rax, r12
je 0x140029684
cmp qword [rax + 0x30], 0
jne 0x140029530
xor r15d, r15d
mov edi, r15d
mov qword [0x14007d2a0], rdi
mov edx, 8
xor ecx, ecx
mov r8d, 0x1000
lea r9d, [rdx - 4]
call rdi
mov r8, rax
mov qword [rbp + 0x7f], rax
mov rdi, rax
mov ecx, 0x4d0
xor eax, eax
rep stosb byte [rdi], al
mov dword [r8 + 0x30], 0x100010
call fcn.140003760
movsx r13d, al
call fcn.140003750
movsx ecx, al
imul r13d, ecx
mov dword [rbp + 0x67], r13d
call fcn.140003790
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
mov esi, 7
mov dword [rbp + 0x6f], ecx
lea ecx, [rcx + r13*8]
add ecx, r13d
add eax, ecx
mov dword [rbp + 0x77], ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140029d46
mov r8, qword [0x14007d0f8]
test r8, r8
jne 0x1400298b1
mov rax, qword gs:[0x60]
mov r11d, r15d
mov r10d, 0x2fe183be
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r12, qword [rax]
mov rsi, r12
nop word [rax + rax]
movups xmm0, xmmword [rsi + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x14002979d
psrldq xmm0, 8
mov edx, 0x819efd4b
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea rdi, [rcx + rax*2]
cmp rcx, rdi
je 0x140029794
nop
movsx eax, byte [rcx]
add rcx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, rdi
jne 0x140029780
cmp edx, r11d
jne 0x140029891
mov r9, qword [rsi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rcx, qword [rax + r9 + 0x88]
mov r15, rcx
mov ebx, ecx
shr r15, 0x20
add rbx, r9
cmp rbx, r9
je 0x140029891
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x140029891
mov r14d, dword [rbx + 0x20]
dec edi
mov edx, 0x819efd4b
lea rax, [r9 + rdi*4]
mov ecx, dword [rax + r14]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140029807
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x1400297f0
cmp edx, r10d
je 0x14002981a
test edi, edi
jne 0x1400297d1
jmp 0x140029891
xor r15d, r15d
jmp 0x14002968a
mov eax, dword [rbx + 0x24]
mov ecx, dword [rbx + 0x1c]
add rax, r9
add rcx, r9
movzx eax, word [rax + rdi*2]
mov r8d, dword [rcx + rax*4]
add r8, r9
cmp r8, rbx
jbe 0x1400298aa
lea rax, [rbx + r15]
cmp r8, rax
jae 0x1400298aa
movzx eax, byte [r8]
mov r11d, 0x819efd4b
mov r10d, r11d
cmp al, 0x2e
je 0x140029868
movsx eax, al
inc r8
xor eax, r11d
imul r11d, eax, 0x1000193
movzx eax, byte [r8]
cmp al, 0x2e
jne 0x140029850
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x14002988d
movsx eax, al
lea r8, [r8 + 1]
xor eax, r10d
imul r10d, eax, 0x1000193
movzx eax, byte [r8]
test al, al
jne 0x140029874
mov rsi, qword [r12]
mov rax, qword [rsi]
mov rsi, rax
cmp rax, r12
je 0x1400298a7
cmp qword [rax + 0x30], 0
jne 0x140029750
xor r8d, r8d
mov qword [0x14007d0f8], r8
mov rbx, qword [0x14007d178]
test rbx, rbx
jne 0x140029a51
mov rax, qword gs:[0x60]
xor r11d, r11d
mov r10d, 0xcb85f115
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov r14, r13
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [r14 + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x14002993d
psrldq xmm0, 8
mov edx, 0x7e9ef892
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea rdi, [rcx + rax*2]
cmp rcx, rdi
je 0x140029934
movsx eax, byte [rcx]
add rcx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, rdi
jne 0x140029920
cmp edx, r11d
jne 0x140029a2e
mov r9, qword [r14 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rcx, qword [rax + r9 + 0x88]
mov r12, rcx
mov esi, ecx
shr r12, 0x20
add rsi, r9
cmp rsi, r9
je 0x140029a2e
mov edi, dword [rsi + 0x18]
test edi, edi
je 0x140029a2e
mov r15d, dword [rsi + 0x20]
dec edi
mov edx, 0x7e9ef892
lea rax, [r9 + rdi*4]
mov ecx, dword [rax + r15]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400299a7
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x140029990
cmp edx, r10d
je 0x1400299b2
test edi, edi
jne 0x140029971
jmp 0x140029a2e
mov eax, dword [rsi + 0x24]
mov ecx, dword [rsi + 0x1c]
add rax, r9
add rcx, r9
movzx eax, word [rax + rdi*2]
mov ebx, dword [rcx + rax*4]
add rbx, r9
cmp rbx, rsi
jbe 0x140029a46
lea rax, [rsi + r12]
cmp rbx, rax
jae 0x140029a46
movzx eax, byte [rbx]
mov r11d, 0x7e9ef892
mov r10d, r11d
cmp al, 0x2e
je 0x140029a07
nop word [rax + rax]
movsx eax, al
inc rbx
xor eax, r11d
imul r11d, eax, 0x1000193
movzx eax, byte [rbx]
cmp al, 0x2e
jne 0x1400299f0
movzx eax, byte [rbx + 1]
inc rbx
test al, al
je 0x140029a2a
movsx eax, al
lea rbx, [rbx + 1]
xor eax, r10d
imul r10d, eax, 0x1000193
movzx eax, byte [rbx]
test al, al
jne 0x140029a12
mov r14, qword [r13]
mov rax, qword [r14]
mov r14, rax
cmp rax, r13
je 0x140029a44
cmp qword [rax + 0x30], 0
jne 0x1400298f0
xor ebx, ebx
mov r13d, dword [rbp + 0x67]
mov qword [0x14007d178], rbx
xor eax, eax
mov dword [rbp - 0x29], 0x2b2a2d2c
mov qword [rbp - 0x25], rax
xor r15d, r15d
mov dword [rbp - 0x1d], eax
movabs r9, 0xed9ebfa3908b04da
mov byte [rbp - 0x19], al
mov qword [rbp + 0x67], r15
mov rax, qword [rbp + 0x67]
nop dword [rax]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
add rcx, r9
movzx edx, byte [rbp + rax - 0x29]
mov rax, rcx
and rax, rdx
imul rdi, rax, 0xfffffffffffffffe
mov rax, qword [rbp + 0x67]
add rdi, rcx
add rdi, rdx
add dil, 0xa
mov byte [rbp + rax - 0x29], dil
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x11
jb 0x140029a80
call r8
mov rdx, qword [rbp + 0x7f]
mov rcx, rax
call rbx
cmp eax, dword [rbp - 0x29]
mov rcx, r15
movsx eax, byte [0x14007c0da]
xorps xmm2, xmm2
mov r10d, dword [rbp + 0x6f]
sete cl
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
lea r9d, [r10 + r13*2]
cvtsi2sd xmm2, rcx
add r9d, r13d
movd xmm0, eax
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r9d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140029b82
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x140029b82
mov esi, 7
lea edi, [r13*4]
mov r8d, esi
add edi, r13d
jmp 0x140029bea
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
lea edi, [r13*4]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r10d
add edi, r13d
xor edx, edx
add eax, edi
mov esi, 7
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140029be6
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
add eax, dword [rbp + 0x77]
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si r8d, xmm0
jmp 0x140029bea
mov r8d, dword [rbp + 0x67]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r10d
lea eax, [rax + r13*4]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
imul eax, r8d
test eax, eax
je 0x140029d42
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add edi, r10d
add eax, edi
xorps xmm2, xmm2
div ecx
movsx ecx, byte [0x14007c0db]
xor edx, edx
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r9d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140029cc7
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x14002a274
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, edi
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140029d36
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*8]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
xorps xmm0, xmm0
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si eax, xmm0
jmp 0x140029d39
mov eax, dword [rbp + 0x67]
cmp r15d, eax
jl 0x14002a274
mov r8, qword [rbp + 0x7f]
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
call fcn.140003790
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, ecx
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
je 0x14002a964
xor eax, eax
mov dword [rbp - 0x49], 0x23202126
mov dword [rbp - 0x35], eax
xorps xmm0, xmm0
mov word [rbp - 0x31], ax
mov byte [rbp - 0x2f], al
movups xmmword [rbp - 0x45], xmm0
mov qword [rbp + 0x67], r15
mov rax, qword [rbp + 0x67]
cmp rax, 0x1b
jae 0x140029e02
movabs r9, 0x340ca01ce712c1db
nop dword [rax]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
add rcx, r9
movzx edx, byte [rbp + rax - 0x49]
mov rax, rcx
and rax, rdx
imul rdi, rax, 0xfffffffffffffffe
mov rax, qword [rbp + 0x67]
add rdi, rcx
add rdi, rdx
add dil, 3
mov byte [rbp + rax - 0x49], dil
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x1b
jb 0x140029dc0
movsxd rax, dword [rbp - 0x49]
cmp qword [r8 + 0x48], rax
jne 0x140029f8f
xor eax, eax
mov dword [rbp - 0x69], 0xc3c2c1c0
mov qword [rbp - 0x65], rax
mov dword [rbp - 0x5d], eax
mov qword [rbp + 0x67], r15
mov rax, qword [rbp + 0x67]
cmp rax, 0x10
jae 0x140029e82
movabs r9, 0x1a37d4d4d56c21e0
nop dword [rax + rax]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
add rcx, r9
movzx edx, byte [rbp + rax - 0x69]
mov rax, rcx
and rax, rdx
imul rdi, rax, 0xfffffffffffffffe
mov rax, qword [rbp + 0x67]
add rdi, rcx
add rdi, rdx
sub dil, 0x20
mov byte [rbp + rax - 0x69], dil
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x10
jb 0x140029e40
movsxd rax, dword [rbp - 0x69]
cmp qword [r8 + 0x50], rax
jne 0x140029f8f
xor eax, eax
mov dword [rbp - 9], 0x5b5a5958
mov dword [rbp + 0xb], eax
xorps xmm0, xmm0
mov byte [rbp + 0xf], al
movups xmmword [rbp - 5], xmm0
mov qword [rbp + 0x67], r15
mov rax, qword [rbp + 0x67]
cmp rax, 0x19
jae 0x140029f02
movabs r9, 0x5130ee63b8e5b574
nop
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
add rcx, r9
movzx edx, byte [rbp + rax - 9]
mov rax, rcx
and rax, rdx
imul rdi, rax, 0xfffffffffffffffe
mov rax, qword [rbp + 0x67]
add rdi, rcx
add rdi, rdx
sub dil, 0x2c
mov byte [rbp + rax - 9], dil
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x19
jb 0x140029ec0
movsxd rax, dword [rbp - 9]
cmp qword [r8 + 0x58], rax
jne 0x140029f8f
xor eax, eax
mov dword [rbp - 0x59], 0xf3f28d8c
mov qword [rbp - 0x55], rax
mov dword [rbp - 0x4d], eax
mov qword [rbp + 0x67], r15
mov rax, qword [rbp + 0x67]
cmp rax, 0x10
jae 0x140029f82
movabs r9, 0x1fd1bc6976bb783e
nop dword [rax + rax]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
add rcx, r9
movzx edx, byte [rbp + rax - 0x59]
mov rax, rcx
and rax, rdx
imul rdi, rax, 0xfffffffffffffffe
mov rax, qword [rbp + 0x67]
add rdi, rcx
add rdi, rdx
add dil, 0x4e
mov byte [rbp + rax - 0x59], dil
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x10
jb 0x140029f40
movsxd rax, dword [rbp - 0x59]
mov rdx, r15
cmp qword [r8 + 0x60], rax
je 0x140029f94
mov edx, 1
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rdx
mulsd xmm1, xmm0
movsd qword [rbp + 0x67], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r11d, [rdx + rdx*2]
call fcn.140003790
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add r11d, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r11d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a049
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14002a049
mov r8d, esi
jmp 0x14002a0dd
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*4]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a0d9
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*8]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
xorps xmm0, xmm0
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si r8d, xmm0
jmp 0x14002a0dd
mov r8d, dword [rbp + 0x67]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r11d
div ecx
mov edi, eax
call fcn.140003760
movsx r9d, al
call fcn.140003750
movsx r10d, al
call fcn.140003790
movsx ecx, byte [0x14007c0db]
mov edx, r9d
sub edi, ecx
imul edx, r10d
imul edi, r8d
movsx ebx, al
test edi, edi
je 0x14002a27b
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xorps xmm2, xmm2
lea eax, [rcx + rdx*4]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, ebx
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
xor edx, edx
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r11d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a1d9
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x14002a274
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*4]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a268
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*8]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
xorps xmm0, xmm0
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si eax, xmm0
jmp 0x14002a26b
mov eax, dword [rbp + 0x67]
cmp r15d, eax
jge 0x14002a964
mov al, 1
jmp 0x14002a964
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
lea eax, [rax + rdx*2]
xor edx, edx
add eax, ebx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
je 0x14002a964
call fcn.140003770
movsx r8d, al
call fcn.1400037a0
movsx r9d, al
call fcn.140003780
movsx edx, byte [0x14007d2e0]
xorps xmm2, xmm2
movsx r10d, al
movsx eax, byte [0x14007c0dc]
imul edx, r8d
sub edx, r9d
add edx, r10d
add eax, edx
xor edx, edx
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r11d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a354
movsx edx, byte [0x14007d2e0]
movsx ecx, byte [0x14007c0dc]
imul edx, r8d
shl edx, 3
sub edx, r9d
add edx, r10d
add ecx, edx
je 0x14002a354
mov r11d, esi
jmp 0x14002a3e8
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*4]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a3e4
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*8]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
xorps xmm0, xmm0
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si r11d, xmm0
jmp 0x14002a3e8
mov r11d, dword [rbp + 0x67]
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
imul edi, edx, 7
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
mov edi, eax
call fcn.140003760
movsx ebx, al
call fcn.140003750
movsx esi, al
call fcn.140003790
movsx ecx, byte [0x14007c0db]
sub edi, ecx
movsx r14d, al
imul edi, r11d
test edi, edi
je 0x14002a80c
movsx ecx, byte [0x14007c0da]
xor edx, edx
movd xmm1, ecx
movsx ecx, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, ecx
mov ecx, esi
imul ecx, ebx
cvtdq2pd xmm0, xmm0
lea eax, [rcx + rcx*2]
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x140073f90]
movsd qword [rbp + 0x67], xmm1
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r14d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a4c8
movsx edx, byte [0x14007d2e0]
movsx ecx, byte [0x14007c0dc]
imul edx, r8d
shl edx, 3
sub edx, r9d
add edx, r10d
add ecx, edx
jne 0x14002a521
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*4]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a521
movzx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movzx eax, byte [reloc.OLEAUT32.dll_VariantClear]
movzx eax, byte [0x14007c0db]
movsd xmm0, qword [rbp + 0x67]
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, ecx
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
je 0x14002a964
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*4]
call fcn.140003790
movsx r8d, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add r8d, r9d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r8d
div ecx
movsx ecx, byte [0x14007c0db]
xorps xmm2, xmm2
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*2]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a658
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14002a658
mov r8d, 7
jmp 0x14002a6cd
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
add eax, r8d
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a6c9
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*8]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
xorps xmm0, xmm0
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si r8d, xmm0
jmp 0x14002a6cd
mov r8d, dword [rbp + 0x67]
call fcn.140003760
movsx edi, al
call fcn.140003750
movsx ecx, al
imul edi, ecx
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
imul eax, r8d
test eax, eax
je 0x14002a964
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x140073f98]
movsd qword [rbp + 0x67], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*2]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a7bf
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
movsx eax, byte [0x14007c0dc]
add edx, ecx
mov ecx, eax
add ecx, edx
jne 0x14002a964
call fcn.140003790
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, r9d
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
je 0x14002a964
movzx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
movzx eax, byte [reloc.OLEAUT32.dll_VariantClear]
movzx eax, byte [0x14007c0db]
movsd xmm0, qword [rbp + 0x67]
jmp 0x14002a964
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
mov edx, esi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xorps xmm2, xmm2
imul edx, ebx
lea eax, [rax + rdx*8]
xor edx, edx
add eax, r14d
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
movsx eax, byte [0x14007c0dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*2]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a8cb
movsx edx, byte [0x14007d2e0]
movsx ecx, byte [0x14007c0dc]
imul edx, r8d
shl edx, 3
sub edx, r9d
add edx, r10d
add ecx, edx
jne 0x14002a962
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*4]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14002a95a
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edi, [rdx + rdx*8]
call fcn.140003790
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
xor edx, edx
movsx eax, al
xorps xmm0, xmm0
add eax, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si eax, xmm0
jmp 0x14002a95d
mov eax, dword [rbp + 0x67]
cmp r15d, eax
jge 0x14002a964
xor al, al
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret