Function at 0x14021bf2c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov r14, rdx
mov r12, rcx
cmp r8d, 0x10
je 0x14021bf66
mov eax, 0xc004d202
jmp 0x140220758
mov edx, dword [rcx + 8]
lea r8, [rbp + 0x8a]
mov rcx, qword [rcx]
call fcn.14018da04
mov cl, byte [rbp + 0x8a]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fa650
lea r8, [rbp + 0xf8]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018da04
mov cl, byte [rbp + 0xf8]
lea r8, [rsp + 0x38]
xor cl, sil
mov byte [rax], cl
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
inc edx
call fcn.14018da04
mov cl, byte [rsp + 0x38]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fb0e8
lea r8, [rsp + 0x39]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018da04
mov cl, byte [rsp + 0x39]
lea r8, [rsp + 0x3a]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 2
call fcn.14018da04
mov cl, byte [rsp + 0x3a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fbd50
lea r8, [rsp + 0x3b]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x3b]
lea r8, [rsp + 0x3c]
mov r15d, 3
mov qword [rbp + 0x100], r15
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, r15d
call fcn.14018da04
mov cl, byte [rsp + 0x3c]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, r15d
xor cl, byte [rax]
call fcn.1401fbf4c
lea r8, [rsp + 0x3d]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x3d]
lea r8, [rsp + 0x3e]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 4
call fcn.14018da04
mov cl, byte [rsp + 0x3e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fc310
lea r8, [rsp + 0x3f]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x3f]
lea r8, [rsp + 0x40]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 5
call fcn.14018da04
mov cl, byte [rsp + 0x40]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fc50c
lea r8, [rsp + 0x41]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018da04
mov cl, byte [rsp + 0x41]
lea r8, [rsp + 0x42]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 6
call fcn.14018da04
mov cl, byte [rsp + 0x42]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fd16c
lea r8, [rsp + 0x43]
mov rcx, rsi
lea edx, [rbx + 6]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x43]
lea r8, [rsp + 0x44]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 7
call fcn.14018da04
mov cl, byte [rsp + 0x44]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fddc8
lea r8, [rsp + 0x45]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x45]
lea r8, [rsp + 0x46]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 8
call fcn.14018da04
mov cl, byte [rsp + 0x46]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fdfc4
lea r8, [rsp + 0x47]
mov rcx, rsi
lea edx, [rbx + 8]
mov dil, al
call fcn.14018da04
mov cl, byte [rsp + 0x47]
lea r8, [rsp + 0x48]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r12 + 8]
add edx, 9
mov rcx, qword [r12]
call fcn.14018da04
mov cl, byte [rsp + 0x48]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fec20
lea r8, [rsp + 0x49]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x49]
lea r8, [rsp + 0x4a]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 0xa
call fcn.14018da04
mov cl, byte [rsp + 0x4a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fee1c
lea r8, [rsp + 0x4b]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x4b]
lea r8, [rsp + 0x4c]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 0xb
call fcn.14018da04
mov cl, byte [rsp + 0x4c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401ff018
lea r8, [rsp + 0x4d]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018da04
mov cl, byte [rsp + 0x4d]
lea r8, [rsp + 0x4e]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 0xc
call fcn.14018da04
mov cl, byte [rsp + 0x4e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401ffaac
lea r8, [rsp + 0x4f]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018da04
mov cl, byte [rsp + 0x4f]
lea r8, [rsp + 0x50]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 0xd
call fcn.14018da04
mov cl, byte [rsp + 0x50]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140200708
mov dil, al
lea r8, [rsp + 0x51]
lea edx, [rbx + 0xd]
mov rcx, rsi
call fcn.14018da04
xor dil, byte [rsp + 0x51]
lea r8, [rsp + 0x52]
mov byte [rax], dil
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 0xe
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r8, [rsp + 0x53]
add edx, 0xe
movzx ecx, byte [rax]
movzx eax, byte [rsp + 0x52]
xor rcx, rax
lea rax, [0x140000000]
mov bl, byte [rcx + rax + 0x4081f0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rsp + 0x53]
lea r8, [rsp + 0x54]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r12 + 8]
mov rcx, qword [r12]
add edx, 0xf
call fcn.14018da04
mov cl, byte [rsp + 0x54]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140200904
lea r8, [rsp + 0x55]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018da04
xor dil, byte [rsp + 0x55]
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], r15
mov byte [rax], dil
movaps xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rsp + 0x56]
call fcn.14018da04
mov sil, byte [rsp + 0x56]
lea r14d, [r13 - 4]
lea r8, [rsp + 0x57]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rsp + 0x57]
lea r8, [rsp + 0x58]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rsp + 0x58]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rsp + 0x59]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rsp + 0x59]
lea r8, [rsp + 0x5a]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, r13b
lea r8, [rsp + 0x5b]
xor cl, byte [rsp + 0x5a]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rsp + 0x5c]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rsp + 0x5b]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rsp + 0x5d]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rsp + 0x5c]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rsp + 0x5d]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021c3e5
mov rsi, qword [rbp + 0x158]
movaps xmm0, xmmword [rsi]
mov esi, 4
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, r14
lea r8, [rsp + 0x5e]
call fcn.14018da04
mov bl, byte [rsp + 0x5e]
lea edx, [r15 + 1]
lea r8, [rsp + 0x5f]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rsp + 0x5f]
lea edx, [r15 - 1]
xor r13b, bl
lea r8, [rsp + 0x60]
mov rcx, r14
xor r13b, byte [rax]
call fcn.14018da04
mov bl, byte [rsp + 0x60]
lea r8, [rsp + 0x61]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rsp + 0x61]
lea r8, [rsp + 0x62]
xor r12b, bl
lea edx, [r15 - 2]
mov rcx, r14
xor r12b, byte [rax]
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rsp + 0x62]
lea r8, [rsp + 0x63]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rsp + 0x63]
xor cl, byte [rax]
xor cl, bl
je 0x14021c61d
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021c624
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x64]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rsp + 0x64]
lea r8, [rsp + 0x65]
xor bl, byte [rbp + 0x160]
lea edx, [r15 - 2]
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rsp + 0x65]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021c699
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021c69c
mov r12b, dil
lea r8, [rsp + 0x66]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rsp + 0x66]
lea r8, [rsp + 0x67]
xor bl, r12b
lea edx, [r15 - 1]
mov r12b, byte [rbp + 0x168]
mov rcx, r14
xor bl, r12b
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rsp + 0x67]
lea r8, [rsp + 0x68]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018da04
mov bl, byte [rsp + 0x68]
lea r8, [rsp + 0x69]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rsp + 0x69]
xor cl, bl
xor cl, byte [rax]
je 0x14021c742
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021c749
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x6a]
mov edx, r15d
mov rcx, r14
call fcn.14018da04
mov bl, byte [rsp + 0x6a]
lea r8, [rsp + 0x6b]
xor bl, byte [rbp + 0x160]
mov edx, r15d
xor bl, r12b
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rsp + 0x6b]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021c7be
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021c7c5
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x6c]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rsp + 0x6c]
lea r8, [rsp + 0x6d]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rsp + 0x6d]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021c542
mov rsi, qword [rbp + 0x158]
lea r15, [0x140000000]
mov r14d, reloc.OLEAUT32.dll_SafeArrayGetDim
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movd edi, xmm0
add edi, 0x10
mov rcx, qword [rsp + 0x20]
lea r8, [rsp + 0x6e]
dec edi
mov edx, edi
call fcn.14018da04
mov cl, byte [rsp + 0x6e]
lea r8, [rsp + 0x6f]
mov edx, edi
xor cl, byte [rax]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f8ad0]
call fcn.14018da04
mov cl, byte [rsp + 0x6f]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021c834
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], 3
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rsp + 0x70]
call fcn.14018da04
mov sil, byte [rsp + 0x70]
lea r14d, [r13 - 4]
lea r8, [rsp + 0x71]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rsp + 0x71]
lea r8, [rsp + 0x72]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rsp + 0x72]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rsp + 0x73]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rsp + 0x73]
lea r8, [rsp + 0x74]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, r13b
lea r8, [rsp + 0x75]
xor cl, byte [rsp + 0x74]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rsp + 0x76]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rsp + 0x75]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rsp + 0x77]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rsp + 0x76]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rsp + 0x77]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021c8ac
mov r14, qword [rbp + 0x158]
movaps xmm0, xmmword [r14]
mov r14d, 4
movaps xmmword [rsp + 0x20], xmm0
mov rsi, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, rsi
lea r8, [rsp + 0x78]
call fcn.14018da04
mov bl, byte [rsp + 0x78]
lea edx, [r15 + 1]
lea r8, [rsp + 0x79]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rsp + 0x79]
lea edx, [r15 - 1]
xor r13b, bl
lea r8, [rsp + 0x7a]
mov rcx, rsi
xor r13b, byte [rax]
call fcn.14018da04
mov bl, byte [rsp + 0x7a]
lea r8, [rsp + 0x7b]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rsp + 0x7b]
lea r8, [rsp + 0x7c]
lea edx, [r15 - 2]
mov rcx, rsi
xor r12b, byte [rax]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rsp + 0x7c]
lea r8, [rsp + 0x7d]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rsp + 0x7d]
xor cl, byte [rax]
xor cl, bl
je 0x14021cae6
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021caed
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x7e]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rsp + 0x7e]
lea r8, [rsp + 0x7f]
lea edx, [r15 - 2]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rsp + 0x7f]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021cb62
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021cb65
mov r12b, dil
lea r8, [rbp - 0x80]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp - 0x80]
lea r8, [rbp - 0x7f]
xor bl, r12b
lea edx, [r15 - 1]
mov r12b, byte [rbp + 0x168]
mov rcx, rsi
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x7f]
lea r8, [rbp - 0x7e]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp - 0x7e]
lea r8, [rbp - 0x7d]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x7d]
xor cl, bl
xor cl, byte [rax]
je 0x14021cc03
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021cc0a
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x7c]
mov edx, r15d
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp - 0x7c]
lea r8, [rbp - 0x7b]
xor bl, byte [rbp + 0x160]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x7b]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021cc7b
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021cc82
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x7a]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp - 0x7a]
lea r8, [rbp - 0x79]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x79]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021ca0b
mov r14, qword [rbp + 0x158]
lea r8, [rbp - 0x78]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x78]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140200938
lea r8, [rbp - 0x77]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018da04
mov cl, byte [rbp - 0x77]
lea r8, [rbp - 0x76]
xor cl, sil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
inc edx
call fcn.14018da04
movzx ecx, byte [rbp - 0x76]
lea r12, [0x140000000]
mov edx, dword [r14 + 8]
lea r8, [rbp - 0x75]
inc edx
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x403050]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x75]
lea r8, [rbp - 0x74]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 2
call fcn.14018da04
mov cl, byte [rbp - 0x74]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140201594
lea r8, [rbp - 0x73]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x73]
lea r8, [rbp - 0x72]
mov r15d, 3
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, r15d
call fcn.14018da04
movzx ecx, byte [rbp - 0x72]
lea r8, [rbp - 0x71]
mov edx, dword [r14 + 8]
add edx, r15d
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x404c60]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x71]
lea r8, [rbp - 0x70]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 4
call fcn.14018da04
mov cl, byte [rbp - 0x70]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140201790
lea r8, [rbp - 0x6f]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x6f]
lea r8, [rbp - 0x6e]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 5
call fcn.14018da04
mov cl, byte [rbp - 0x6e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402023f0
lea r8, [rbp - 0x6d]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x6d]
lea r8, [rbp - 0x6c]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 6
call fcn.14018da04
mov cl, byte [rbp - 0x6c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402025e8
lea r8, [rbp - 0x6b]
mov rcx, rsi
lea edx, [rbx + 6]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x6b]
lea r8, [rbp - 0x6a]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 7
call fcn.14018da04
mov cl, byte [rbp - 0x6a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402027e4
lea r8, [rbp - 0x69]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x69]
lea r8, [rbp - 0x68]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 8
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r8, [rbp - 0x67]
add edx, 8
movzx ecx, byte [rax]
movzx eax, byte [rbp - 0x68]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x406670]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x67]
lea r8, [rbp - 0x66]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 9
call fcn.14018da04
movzx ecx, byte [rbp - 0x66]
lea r8, [rbp - 0x65]
mov edx, dword [r14 + 8]
add edx, 9
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x405cc0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x65]
lea r8, [rbp - 0x64]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xa
call fcn.14018da04
mov cl, byte [rbp - 0x64]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402037d4
lea r8, [rbp - 0x63]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x63]
lea r8, [rbp - 0x62]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xb
call fcn.14018da04
mov cl, byte [rbp - 0x62]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140204268
lea r8, [rbp - 0x61]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x61]
lea r8, [rbp - 0x60]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xc
call fcn.14018da04
movzx ecx, byte [rbp - 0x60]
lea r8, [rbp - 0x5f]
mov edx, dword [r14 + 8]
add edx, 0xc
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x403150]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x5f]
lea r8, [rbp - 0x5e]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xd
call fcn.14018da04
mov cl, byte [rbp - 0x5e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140204ec8
lea r8, [rbp - 0x5d]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x5d]
lea r8, [rbp - 0x5c]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xe
call fcn.14018da04
mov cl, byte [rbp - 0x5c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140204efc
lea r8, [rbp - 0x5b]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x5b]
lea r8, [rbp - 0x5a]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xf
call fcn.14018da04
movzx ecx, byte [rbp - 0x5a]
lea r8, [rbp - 0x59]
mov edx, dword [r14 + 8]
add edx, 0xf
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x4042b0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x59]
xor cl, bl
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], r15
mov byte [rax], cl
movaps xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp - 0x58]
call fcn.14018da04
mov sil, byte [rbp - 0x58]
lea r14d, [r13 - 4]
lea r8, [rbp - 0x57]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp - 0x57]
lea r8, [rbp - 0x56]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp - 0x56]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp - 0x55]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
lea r8, [rbp - 0x54]
mov edx, r15d
movzx r13d, byte [rax]
movzx eax, byte [rbp - 0x55]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, r13b
lea r8, [rbp - 0x53]
xor cl, byte [rbp - 0x54]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp - 0x52]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp - 0x53]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp - 0x51]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp - 0x52]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp - 0x51]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021d0e6
mov rsi, qword [rbp + 0x158]
movaps xmm0, xmmword [rsi]
mov esi, 4
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, r14
lea r8, [rbp - 0x50]
call fcn.14018da04
mov bl, byte [rbp - 0x50]
lea edx, [r15 + 1]
lea r8, [rbp - 0x4f]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp - 0x4f]
lea edx, [r15 - 1]
lea r8, [rbp - 0x4e]
mov rcx, r14
xor r13b, byte [rax]
xor r13b, bl
call fcn.14018da04
mov bl, byte [rbp - 0x4e]
lea r8, [rbp - 0x4d]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp - 0x4d]
lea r8, [rbp - 0x4c]
lea edx, [r15 - 2]
mov rcx, r14
xor r12b, byte [rax]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp - 0x4c]
lea r8, [rbp - 0x4b]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x4b]
xor cl, bl
xor cl, byte [rax]
je 0x14021d302
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021d309
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x4a]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp - 0x4a]
lea r8, [rbp - 0x49]
xor bl, byte [rbp + 0x160]
lea edx, [r15 - 2]
xor bl, byte [rbp + 0x168]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x49]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021d37a
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021d37d
mov r12b, dil
lea r8, [rbp - 0x48]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp - 0x48]
lea r8, [rbp - 0x47]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x47]
lea r8, [rbp - 0x46]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp - 0x46]
lea r8, [rbp - 0x45]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x45]
xor cl, byte [rax]
xor cl, bl
je 0x14021d41b
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021d422
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x44]
mov edx, r15d
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp - 0x44]
lea r8, [rbp - 0x43]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x43]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021d493
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021d49a
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x42]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp - 0x42]
lea r8, [rbp - 0x41]
xor bl, byte [rbp + 0x160]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x41]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021d233
mov rsi, qword [rbp + 0x158]
lea r15, [0x140000000]
mov r14d, reloc.OLEAUT32.dll_SafeArrayGetDim
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movd edi, xmm0
add edi, 0x10
mov rcx, qword [rsp + 0x20]
lea r8, [rbp - 0x40]
dec edi
mov edx, edi
call fcn.14018da04
mov cl, byte [rbp - 0x40]
lea r8, [rbp - 0x3f]
mov edx, edi
xor cl, byte [rax]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f8ad0]
call fcn.14018da04
mov cl, byte [rbp - 0x3f]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021d505
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], 3
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp - 0x3e]
call fcn.14018da04
mov sil, byte [rbp - 0x3e]
lea r14d, [r13 - 4]
lea r8, [rbp - 0x3d]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp - 0x3d]
lea r8, [rbp - 0x3c]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp - 0x3c]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp - 0x3b]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rbp - 0x3b]
lea r8, [rbp - 0x3a]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp - 0x3a]
lea r8, [rbp - 0x39]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp - 0x38]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp - 0x39]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp - 0x37]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp - 0x38]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp - 0x37]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021d579
mov r14, qword [rbp + 0x158]
movaps xmm0, xmmword [r14]
mov r14d, 4
movaps xmmword [rsp + 0x20], xmm0
mov rsi, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 2
xor edi, edi
lea edx, [r13 - 2]
mov rcx, rsi
lea r8, [rbp - 0x36]
call fcn.14018da04
mov r12b, byte [rbp - 0x36]
lea edx, [r13 + 1]
lea r8, [rbp - 0x35]
mov rcx, rsi
xor r12b, byte [rax]
call fcn.14018da04
lea edx, [r13 - 1]
mov rcx, rsi
lea r8, [rbp - 0x34]
xor r12b, byte [rax]
xor r12b, byte [rbp - 0x35]
call fcn.14018da04
mov bl, byte [rbp - 0x34]
lea r8, [rbp - 0x33]
mov edx, r13d
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x33]
lea r8, [rbp - 0x32]
lea edx, [r13 - 2]
xor cl, byte [rax]
xor cl, bl
mov r15b, cl
mov byte [rbp + 0x168], cl
mov rcx, rsi
xor r15b, r12b
call fcn.14018da04
mov bl, byte [rbp - 0x32]
lea r8, [rbp - 0x31]
lea edx, [r13 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x31]
xor cl, byte [rax]
xor cl, bl
je 0x14021d793
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021d79a
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x30]
mov rcx, rsi
lea edx, [r13 - 2]
call fcn.14018da04
mov bl, r15b
lea r8, [rbp - 0x2f]
lea edx, [r13 - 2]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp - 0x30]
xor bl, byte [rbp + 0x160]
call fcn.14018da04
mov cl, byte [rbp - 0x2f]
xor cl, bl
mov byte [rax], cl
movzx eax, byte [rbp + 0x168]
test al, al
je 0x14021d80f
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021d816
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x2e]
mov rcx, rsi
lea edx, [r13 - 1]
call fcn.14018da04
mov bl, r15b
lea r8, [rbp - 0x2d]
lea edx, [r13 - 1]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp - 0x2e]
xor bl, byte [rbp + 0x160]
call fcn.14018da04
mov cl, byte [rbp - 0x2d]
lea r8, [rbp - 0x2c]
xor cl, bl
mov edx, r13d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp - 0x2c]
lea r8, [rbp - 0x2b]
lea edx, [r13 + 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp - 0x2b]
xor cl, byte [rax]
xor cl, bl
je 0x14021d8b0
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021d8b7
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x2a]
mov edx, r13d
mov rcx, rsi
call fcn.14018da04
mov bl, r15b
lea r8, [rbp - 0x29]
mov edx, r13d
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp - 0x2a]
xor bl, byte [rbp + 0x160]
call fcn.14018da04
mov cl, byte [rbp - 0x29]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021d923
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021d926
mov r12b, dil
lea r8, [rbp - 0x28]
mov rcx, rsi
lea edx, [r13 + 1]
call fcn.14018da04
lea r8, [rbp - 0x27]
mov rcx, rsi
lea edx, [r13 + 1]
xor r15b, byte [rax]
xor r15b, byte [rbp - 0x28]
xor r15b, r12b
call fcn.14018da04
mov cl, byte [rbp - 0x27]
add r13d, 4
xor cl, r15b
mov byte [rax], cl
sub r14, 1
jne 0x14021d6c8
mov r14, qword [rbp + 0x158]
lea r8, [rbp - 0x26]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r12, [0x140000000]
lea r8, [rbp - 0x25]
movzx ecx, byte [rax]
movzx eax, byte [rbp - 0x26]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x406770]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x25]
lea r8, [rbp - 0x24]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
inc edx
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r8, [rbp - 0x23]
inc edx
movzx ecx, byte [rax]
movzx eax, byte [rbp - 0x24]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x407d60]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x23]
lea r8, [rbp - 0x22]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 2
call fcn.14018da04
mov cl, byte [rbp - 0x22]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140205d24
lea r8, [rbp - 0x21]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x21]
lea r8, [rbp - 0x20]
xor cl, dil
mov r15d, 3
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, r15d
call fcn.14018da04
mov cl, byte [rbp - 0x20]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, r15d
xor cl, byte [rax]
call fcn.1402067bc
lea r8, [rbp - 0x1f]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x1f]
lea r8, [rbp - 0x1e]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 4
call fcn.14018da04
mov cl, byte [rbp - 0x1e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020741c
lea r8, [rbp - 0x1d]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x1d]
lea r8, [rbp - 0x1c]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 5
call fcn.14018da04
mov cl, byte [rbp - 0x1c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402077e0
lea r8, [rbp - 0x1b]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x1b]
lea r8, [rbp - 0x1a]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 6
call fcn.14018da04
movzx ecx, byte [rbp - 0x1a]
lea r8, [rbp - 0x19]
mov edx, dword [r14 + 8]
add edx, 6
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x406870]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x19]
lea r8, [rbp - 0x18]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 7
call fcn.14018da04
mov cl, byte [rbp - 0x18]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402079dc
lea r8, [rbp - 0x17]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x17]
lea r8, [rbp - 0x16]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 8
call fcn.14018da04
movzx ecx, byte [rbp - 0x16]
lea r8, [rbp - 0x15]
mov edx, dword [r14 + 8]
add edx, 8
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x407e60]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp - 0x15]
lea r8, [rbp - 0x14]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 9
call fcn.14018da04
mov cl, byte [rbp - 0x14]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140208804
lea r8, [rbp - 0x13]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0x13]
lea r8, [rbp - 0x12]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xa
call fcn.14018da04
mov cl, byte [rbp - 0x12]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140209460
lea r8, [rbp - 0x11]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0x11]
lea r8, [rbp - 0x10]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xb
call fcn.14018da04
mov cl, byte [rbp - 0x10]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020965c
lea r8, [rbp - 0xf]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0xf]
lea r8, [rbp - 0xe]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xc
call fcn.14018da04
mov cl, byte [rbp - 0xe]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140209690
lea r8, [rbp - 0xd]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp - 0xd]
lea r8, [rbp - 0xc]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xd
call fcn.14018da04
mov cl, byte [rbp - 0xc]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020a4b4
lea r8, [rbp - 0xb]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 0xb]
lea r8, [rbp - 0xa]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xe
call fcn.14018da04
mov cl, byte [rbp - 0xa]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020a878
lea r8, [rbp - 9]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 9]
lea r8, [rbp - 8]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xf
call fcn.14018da04
mov cl, byte [rbp - 8]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020aa74
lea r8, [rbp - 7]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp - 7]
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], r15
mov byte [rax], dil
movaps xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp - 6]
call fcn.14018da04
mov sil, byte [rbp - 6]
lea r14d, [r13 - 4]
lea r8, [rbp - 5]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp - 5]
lea r8, [rbp - 4]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp - 4]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp - 3]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rbp - 3]
lea r8, [rbp - 2]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp - 2]
lea r8, [rbp - 1]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp - 1]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 1]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 1]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021dd83
mov rsi, qword [rbp + 0x158]
movaps xmm0, xmmword [rsi]
mov esi, 4
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, r14
lea r8, [rbp + 2]
call fcn.14018da04
mov bl, byte [rbp + 2]
lea edx, [r15 + 1]
lea r8, [rbp + 3]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp + 3]
lea edx, [r15 - 1]
lea r8, [rbp + 4]
mov rcx, r14
xor r13b, byte [rax]
xor r13b, bl
call fcn.14018da04
mov bl, byte [rbp + 4]
lea r8, [rbp + 5]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp + 5]
lea r8, [rbp + 6]
xor r12b, bl
lea edx, [r15 - 2]
mov rcx, r14
xor r12b, byte [rax]
mov al, r13b
xor al, r12b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp + 6]
lea r8, [rbp + 7]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 7]
xor cl, byte [rax]
xor cl, bl
je 0x14021df9f
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021dfa6
mov byte [rbp + 0x160], dil
lea r8, [rbp + 8]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp + 8]
lea r8, [rbp + 9]
lea edx, [r15 - 2]
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rbp + 9]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021e017
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021e01a
mov r12b, dil
lea r8, [rbp + 0xa]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp + 0xa]
lea r8, [rbp + 0xb]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0xb]
lea r8, [rbp + 0xc]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp + 0xc]
lea r8, [rbp + 0xd]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xd]
xor cl, bl
xor cl, byte [rax]
je 0x14021e0b8
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021e0bf
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xe]
mov edx, r15d
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp + 0xe]
lea r8, [rbp + 0xf]
xor bl, byte [rbp + 0x160]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0xf]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021e130
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021e137
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x10]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp + 0x10]
lea r8, [rbp + 0x11]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0x11]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021ded0
mov rsi, qword [rbp + 0x158]
lea r15, [0x140000000]
mov r14d, reloc.OLEAUT32.dll_SafeArrayGetDim
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movd edi, xmm0
add edi, 0x10
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0x12]
dec edi
mov edx, edi
call fcn.14018da04
mov cl, byte [rbp + 0x12]
lea r8, [rbp + 0x13]
mov edx, edi
xor cl, byte [rax]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f8ad0]
call fcn.14018da04
mov cl, byte [rbp + 0x13]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021e1a2
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], 3
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp + 0x14]
call fcn.14018da04
mov sil, byte [rbp + 0x14]
lea r14d, [r13 - 4]
lea r8, [rbp + 0x15]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp + 0x15]
lea r8, [rbp + 0x16]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0x16]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0x17]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
lea r8, [rbp + 0x18]
mov edx, r15d
movzx r13d, byte [rax]
movzx eax, byte [rbp + 0x17]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp + 0x18]
lea r8, [rbp + 0x19]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp + 0x1a]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp + 0x19]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 0x1b]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp + 0x1a]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 0x1b]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021e216
mov r14, qword [rbp + 0x158]
movaps xmm0, xmmword [r14]
mov r14d, 4
movaps xmmword [rsp + 0x20], xmm0
mov rsi, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, rsi
lea r8, [rbp + 0x1c]
call fcn.14018da04
mov bl, byte [rbp + 0x1c]
lea edx, [r15 + 1]
lea r8, [rbp + 0x1d]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp + 0x1d]
lea edx, [r15 - 1]
lea r8, [rbp + 0x1e]
mov rcx, rsi
xor r13b, byte [rax]
xor r13b, bl
call fcn.14018da04
mov bl, byte [rbp + 0x1e]
lea r8, [rbp + 0x1f]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp + 0x1f]
lea r8, [rbp + 0x20]
xor r12b, bl
lea edx, [r15 - 2]
mov rcx, rsi
xor r12b, byte [rax]
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp + 0x20]
lea r8, [rbp + 0x21]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x21]
xor cl, bl
xor cl, byte [rax]
je 0x14021e434
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021e43b
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x22]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp + 0x22]
lea r8, [rbp + 0x23]
xor bl, byte [rbp + 0x160]
lea edx, [r15 - 2]
xor bl, byte [rbp + 0x168]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x23]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021e4ac
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021e4af
mov r12b, dil
lea r8, [rbp + 0x24]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp + 0x24]
lea r8, [rbp + 0x25]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0x25]
lea r8, [rbp + 0x26]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp + 0x26]
lea r8, [rbp + 0x27]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x27]
xor cl, bl
xor cl, byte [rax]
je 0x14021e54d
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021e554
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x28]
mov edx, r15d
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp + 0x28]
lea r8, [rbp + 0x29]
xor bl, byte [rbp + 0x160]
mov edx, r15d
xor bl, r12b
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x29]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021e5c5
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021e5cc
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x2a]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp + 0x2a]
lea r8, [rbp + 0x2b]
xor bl, byte [rbp + 0x160]
lea edx, [r15 + 1]
xor bl, r12b
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x2b]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021e365
mov r14, qword [rbp + 0x158]
lea r8, [rbp + 0x2c]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x2c]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020ac70
lea r8, [rbp + 0x2d]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018da04
xor sil, byte [rbp + 0x2d]
lea r8, [rbp + 0x2e]
mov byte [rax], sil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
inc edx
call fcn.14018da04
mov cl, byte [rbp + 0x2e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020ba90
lea r8, [rbp + 0x2f]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x2f]
lea r8, [rbp + 0x30]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 2
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r12, [0x140000000]
add edx, 2
lea r8, [rbp + 0x31]
movzx ecx, byte [rax]
movzx eax, byte [rbp + 0x30]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x40daf0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x31]
lea r8, [rbp + 0x32]
xor cl, bl
mov r15d, 3
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, r15d
call fcn.14018da04
movzx ecx, byte [rbp + 0x32]
lea r8, [rbp + 0x33]
mov edx, dword [r14 + 8]
add edx, r15d
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x4074b0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x33]
lea r8, [rbp + 0x34]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 4
call fcn.14018da04
mov edx, dword [r14 + 8]
movzx ecx, byte [rax]
movzx eax, byte [rbp + 0x34]
xor rcx, rax
add edx, 4
mov bl, byte [rcx + r12 + 0x40cfb0]
mov rcx, qword [r14]
lea r8, [rbp + 0x35]
call fcn.14018da04
mov cl, byte [rbp + 0x35]
lea r8, [rbp + 0x36]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 5
call fcn.14018da04
mov cl, byte [rbp + 0x36]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020c1e4
lea r8, [rbp + 0x37]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x37]
lea r8, [rbp + 0x38]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 6
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r8, [rbp + 0x39]
add edx, 6
movzx ecx, byte [rax]
movzx eax, byte [rbp + 0x38]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x403250]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x39]
lea r8, [rbp + 0x3a]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 7
call fcn.14018da04
mov cl, byte [rbp + 0x3a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020ce40
lea r8, [rbp + 0x3b]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x3b]
lea r8, [rbp + 0x3c]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 8
call fcn.14018da04
mov cl, byte [rbp + 0x3c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020d03c
lea r8, [rbp + 0x3d]
mov rcx, rsi
lea edx, [rbx + 8]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x3d]
lea r8, [rbp + 0x3e]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 9
call fcn.14018da04
mov cl, byte [rbp + 0x3e]
xor cl, byte [rax]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
call fcn.14020dc9c
lea r8, [rbp + 0x3f]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x3f]
lea r8, [rbp + 0x40]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xa
call fcn.14018da04
mov cl, byte [rbp + 0x40]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020e8fc
lea r8, [rbp + 0x41]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x41]
lea r8, [rbp + 0x42]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xb
call fcn.14018da04
mov cl, byte [rbp + 0x42]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020e930
lea r8, [rbp + 0x43]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x43]
lea r8, [rbp + 0x44]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xc
call fcn.14018da04
mov cl, byte [rbp + 0x44]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020f3cc
lea r8, [rbp + 0x45]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x45]
lea r8, [rbp + 0x46]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xd
call fcn.14018da04
mov cl, byte [rbp + 0x46]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140210028
lea r8, [rbp + 0x47]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x47]
lea r8, [rbp + 0x48]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xe
call fcn.14018da04
mov cl, byte [rbp + 0x48]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14021005c
lea r8, [rbp + 0x49]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x49]
lea r8, [rbp + 0x4a]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xf
call fcn.14018da04
mov cl, byte [rbp + 0x4a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140210e88
lea r8, [rbp + 0x4b]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x4b]
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], r15
mov byte [rax], dil
movaps xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp + 0x4c]
call fcn.14018da04
mov sil, byte [rbp + 0x4c]
lea r14d, [r13 - 4]
lea r8, [rbp + 0x4d]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp + 0x4d]
lea r8, [rbp + 0x4e]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0x4e]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0x4f]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rbp + 0x4f]
lea r8, [rbp + 0x50]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp + 0x50]
lea r8, [rbp + 0x51]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp + 0x52]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp + 0x51]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 0x53]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp + 0x52]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 0x53]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021ea2e
mov rsi, qword [rbp + 0x158]
movaps xmm0, xmmword [rsi]
mov esi, 4
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, r14
lea r8, [rbp + 0x54]
call fcn.14018da04
mov bl, byte [rbp + 0x54]
lea edx, [r15 + 1]
lea r8, [rbp + 0x55]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp + 0x55]
lea edx, [r15 - 1]
xor r13b, bl
lea r8, [rbp + 0x56]
mov rcx, r14
xor r13b, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0x56]
lea r8, [rbp + 0x57]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp + 0x57]
lea r8, [rbp + 0x58]
xor r12b, bl
lea edx, [r15 - 2]
mov rcx, r14
xor r12b, byte [rax]
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp + 0x58]
lea r8, [rbp + 0x59]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x59]
xor cl, bl
xor cl, byte [rax]
je 0x14021ec4a
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021ec51
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x5a]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp + 0x5a]
lea r8, [rbp + 0x5b]
xor bl, byte [rbp + 0x160]
lea edx, [r15 - 2]
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rbp + 0x5b]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021ecc2
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021ecc5
mov r12b, dil
lea r8, [rbp + 0x5c]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp + 0x5c]
lea r8, [rbp + 0x5d]
xor bl, r12b
lea edx, [r15 - 1]
mov r12b, byte [rbp + 0x168]
mov rcx, r14
xor bl, r12b
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x5d]
lea r8, [rbp + 0x5e]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp + 0x5e]
lea r8, [rbp + 0x5f]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x5f]
xor cl, bl
xor cl, byte [rax]
je 0x14021ed5d
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov bl, byte [rax + rdx + 0x401df0]
jmp 0x14021ed60
mov bl, dil
lea r8, [rbp + 0x60]
mov edx, r15d
mov rcx, r14
call fcn.14018da04
xor bl, r12b
lea r8, [rbp + 0x61]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x60]
call fcn.14018da04
xor bl, byte [rbp + 0x61]
mov byte [rax], bl
test r13b, r13b
je 0x14021edc3
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov bl, byte [rax + rdx + 0x401df0]
jmp 0x14021edc6
mov bl, dil
lea r8, [rbp + 0x62]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018da04
lea r8, [rbp + 0x63]
mov rcx, r14
lea edx, [r15 + 1]
xor bl, byte [rax]
xor bl, r12b
xor bl, byte [rbp + 0x62]
call fcn.14018da04
mov cl, byte [rbp + 0x63]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021eb7b
mov rsi, qword [rbp + 0x158]
lea r15, [0x140000000]
mov r14d, reloc.OLEAUT32.dll_SafeArrayGetDim
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movd edi, xmm0
add edi, 0x10
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0x64]
dec edi
mov edx, edi
call fcn.14018da04
mov cl, byte [rbp + 0x64]
lea r8, [rbp + 0x65]
mov edx, edi
xor cl, byte [rax]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f8ad0]
call fcn.14018da04
mov cl, byte [rbp + 0x65]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021ee2b
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], 3
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp + 0x66]
call fcn.14018da04
mov sil, byte [rbp + 0x66]
lea r14d, [r13 - 4]
lea r8, [rbp + 0x67]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp + 0x67]
lea r8, [rbp + 0x68]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0x68]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0x69]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rbp + 0x69]
lea r8, [rbp + 0x6a]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp + 0x6a]
lea r8, [rbp + 0x6b]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp + 0x6c]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp + 0x6b]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 0x6d]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp + 0x6c]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 0x6d]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021ee9f
mov r14, qword [rbp + 0x158]
movaps xmm0, xmmword [r14]
mov r14d, 4
movaps xmmword [rsp + 0x20], xmm0
mov rsi, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, rsi
lea r8, [rbp + 0x6e]
call fcn.14018da04
mov bl, byte [rbp + 0x6e]
lea edx, [r15 + 1]
lea r8, [rbp + 0x6f]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp + 0x6f]
lea edx, [r15 - 1]
xor r13b, bl
lea r8, [rbp + 0x70]
mov rcx, rsi
xor r13b, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0x70]
lea r8, [rbp + 0x71]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp + 0x71]
lea r8, [rbp + 0x72]
lea edx, [r15 - 2]
mov rcx, rsi
xor r12b, byte [rax]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp + 0x72]
lea r8, [rbp + 0x73]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x73]
xor cl, byte [rax]
xor cl, bl
je 0x14021f0bd
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021f0c4
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x74]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp + 0x74]
lea r8, [rbp + 0x75]
lea edx, [r15 - 2]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rbp + 0x75]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021f135
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021f138
mov r12b, dil
lea r8, [rbp + 0x76]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp + 0x76]
lea r8, [rbp + 0x77]
xor bl, r12b
lea edx, [r15 - 1]
mov r12b, byte [rbp + 0x168]
mov rcx, rsi
xor bl, r12b
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x77]
lea r8, [rbp + 0x78]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp + 0x78]
lea r8, [rbp + 0x79]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0x79]
xor cl, bl
xor cl, byte [rax]
je 0x14021f1d6
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021f1dd
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x7a]
mov edx, r15d
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp + 0x7a]
lea r8, [rbp + 0x7b]
xor bl, byte [rbp + 0x160]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0x7b]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021f24e
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021f255
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x7c]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp + 0x7c]
lea r8, [rbp + 0x7d]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0x7d]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021efee
mov r14, qword [rbp + 0x158]
lea r8, [rbp + 0x7e]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x7e]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140211084
lea r8, [rbp + 0x7f]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018da04
xor sil, byte [rbp + 0x7f]
lea r8, [rbp + 0x80]
mov byte [rax], sil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
inc edx
call fcn.14018da04
mov cl, byte [rbp + 0x80]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140211448
lea r8, [rbp + 0x81]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x81]
lea r8, [rbp + 0x82]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 2
call fcn.14018da04
mov cl, byte [rbp + 0x82]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140211644
lea r8, [rbp + 0x83]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x83]
lea r8, [rbp + 0x84]
mov r15d, 3
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, r15d
call fcn.14018da04
mov cl, byte [rbp + 0x84]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, r15d
xor cl, byte [rax]
call fcn.140211678
lea r8, [rbp + 0x85]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x85]
lea r8, [rbp + 0x86]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 4
call fcn.14018da04
mov cl, byte [rbp + 0x86]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402122d8
lea r8, [rbp + 0x87]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x87]
lea r8, [rbp + 0x88]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 5
call fcn.14018da04
movzx ecx, byte [rbp + 0x88]
lea r12, [0x140000000]
mov edx, dword [r14 + 8]
lea r8, [rbp + 0x89]
add edx, 5
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x40ba30]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x89]
lea r8, [rbp + 0xc2]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 6
call fcn.14018da04
movzx ecx, byte [rbp + 0xc2]
lea r8, [rbp + 0x8b]
mov edx, dword [r14 + 8]
add edx, 6
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x406570]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x8b]
lea r8, [rbp + 0x8c]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 7
call fcn.14018da04
mov cl, byte [rbp + 0x8c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140212f3c
lea r8, [rbp + 0x8d]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x8d]
lea r8, [rbp + 0x8e]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 8
call fcn.14018da04
movzx ecx, byte [rbp + 0x8e]
lea r8, [rbp + 0x8f]
mov edx, dword [r14 + 8]
add edx, 8
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x408e30]
mov rcx, qword [r14]
call fcn.14018da04
xor bl, byte [rbp + 0x8f]
lea r8, [rbp + 0x90]
mov byte [rax], bl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 9
call fcn.14018da04
mov cl, byte [rbp + 0x90]
xor cl, byte [rax]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
call fcn.140212f70
lea r8, [rbp + 0x91]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x91]
lea r8, [rbp + 0x92]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xa
call fcn.14018da04
mov cl, byte [rbp + 0x92]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140213a08
lea r8, [rbp + 0x93]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0x93]
lea r8, [rbp + 0x94]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xb
call fcn.14018da04
movzx ecx, byte [rbp + 0x94]
lea r8, [rbp + 0x95]
mov edx, dword [r14 + 8]
add edx, 0xb
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x4027a0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x95]
lea r8, [rbp + 0x96]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xc
call fcn.14018da04
mov cl, byte [rbp + 0x96]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140214830
lea r8, [rbp + 0x97]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x97]
lea r8, [rbp + 0x98]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xd
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r8, [rbp + 0x99]
add edx, 0xd
movzx ecx, byte [rax]
movzx eax, byte [rbp + 0x98]
xor rcx, rax
mov bl, byte [rcx + r12 + 0x40a740]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0x99]
xor cl, bl
mov byte [rax], cl
lea r8, [rbp + 0x9a]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xe
call fcn.14018da04
mov cl, byte [rbp + 0x9a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140214a28
lea r8, [rbp + 0x9b]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x9b]
lea r8, [rbp + 0x9c]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xf
call fcn.14018da04
mov cl, byte [rbp + 0x9c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140214c24
lea r8, [rbp + 0x9d]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0x9d]
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], r15
mov byte [rax], dil
movaps xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp + 0x9e]
call fcn.14018da04
mov sil, byte [rbp + 0x9e]
lea r14d, [r13 - 4]
lea r8, [rbp + 0x9f]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp + 0x9f]
lea r8, [rbp + 0xa0]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0xa0]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0xa1]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
movzx r13d, byte [rbp + 0xa1]
lea r8, [rbp + 0xa2]
mov edx, r15d
movzx eax, byte [rax]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp + 0xa2]
lea r8, [rbp + 0xa3]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp + 0xa4]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp + 0xa3]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 0xa5]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp + 0xa4]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 0xa5]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021f76b
mov rsi, qword [rbp + 0x158]
movaps xmm0, xmmword [rsi]
mov esi, 4
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, r14
lea r8, [rbp + 0xa6]
call fcn.14018da04
mov bl, byte [rbp + 0xa6]
lea edx, [r15 + 1]
lea r8, [rbp + 0xa7]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp + 0xa7]
lea edx, [r15 - 1]
xor r13b, bl
lea r8, [rbp + 0xa8]
mov rcx, r14
xor r13b, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0xa8]
lea r8, [rbp + 0xa9]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp + 0xa9]
lea r8, [rbp + 0xaa]
lea edx, [r15 - 2]
mov rcx, r14
xor r12b, byte [rax]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp + 0xaa]
lea r8, [rbp + 0xab]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xab]
xor cl, byte [rax]
xor cl, bl
je 0x14021f9db
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021f9e2
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xac]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp + 0xac]
lea r8, [rbp + 0xad]
lea edx, [r15 - 2]
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rbp + 0xad]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021fa5f
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021fa62
mov r12b, dil
lea r8, [rbp + 0xae]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp + 0xae]
lea r8, [rbp + 0xaf]
xor bl, r12b
lea edx, [r15 - 1]
mov r12b, byte [rbp + 0x168]
mov rcx, r14
xor bl, r12b
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xaf]
lea r8, [rbp + 0xb0]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp + 0xb0]
lea r8, [rbp + 0xb1]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xb1]
xor cl, bl
xor cl, byte [rax]
je 0x14021fb18
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021fb1f
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xb2]
mov edx, r15d
mov rcx, r14
call fcn.14018da04
mov bl, byte [rbp + 0xb2]
lea r8, [rbp + 0xb3]
xor bl, byte [rbp + 0x160]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0xb3]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021fb9c
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021fba3
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xb4]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp + 0xb4]
lea r8, [rbp + 0xb5]
xor bl, byte [rbp + 0x160]
lea edx, [r15 + 1]
xor bl, r12b
mov rcx, r14
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xb5]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021f8e8
mov rsi, qword [rbp + 0x158]
lea r15, [0x140000000]
movaps xmm0, xmmword [rsi]
mov esi, reloc.OLEAUT32.dll_SafeArrayGetDim
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movd edi, xmm0
add edi, 0x10
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0xb6]
dec edi
mov edx, edi
call fcn.14018da04
mov cl, byte [rbp + 0xb6]
lea r8, [rbp + 0xb7]
mov edx, edi
xor cl, byte [rax]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f8ad0]
call fcn.14018da04
mov cl, byte [rbp + 0xb7]
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021fc19
mov rsi, qword [rbp + 0x158]
mov dword [rbp + 0x168], 8
mov qword [rsp + 0x30], 3
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp + 0xb8]
call fcn.14018da04
mov sil, byte [rbp + 0xb8]
lea r14d, [r13 - 4]
lea r8, [rbp + 0xb9]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp + 0xb9]
lea r8, [rbp + 0xba]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0xba]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0xbb]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
lea r8, [rbp + 0xbc]
mov edx, r15d
movzx r13d, byte [rax]
movzx eax, byte [rbp + 0xbb]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, r13b
lea r8, [rbp + 0xbd]
xor cl, byte [rbp + 0xbc]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp + 0xbe]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp + 0xbd]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 0xbf]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp + 0xbe]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 0xbf]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rsp + 0x30], 1
mov dword [rbp + 0x160], r13d
jne 0x14021fca0
mov r14, qword [rbp + 0x158]
movaps xmm0, xmmword [r14]
mov r14d, 4
movaps xmmword [rsp + 0x20], xmm0
mov rsi, qword [rsp + 0x20]
psrldq xmm0, 8
movd r15d, xmm0
add r15d, 2
xor edi, edi
lea edx, [r15 - 2]
mov rcx, rsi
lea r8, [rbp + 0xc0]
call fcn.14018da04
mov bl, byte [rbp + 0xc0]
lea edx, [r15 + 1]
lea r8, [rbp + 0xc1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r13b, byte [rbp + 0xc1]
lea edx, [r15 - 1]
lea r8, [rbp + 0xf9]
mov rcx, rsi
xor r13b, byte [rax]
xor r13b, bl
call fcn.14018da04
mov bl, byte [rbp + 0xf9]
lea r8, [rbp + 0xc3]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov r12b, byte [rbp + 0xc3]
lea r8, [rbp + 0xc4]
lea edx, [r15 - 2]
mov rcx, rsi
xor r12b, byte [rax]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018da04
mov bl, byte [rbp + 0xc4]
lea r8, [rbp + 0xc5]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xc5]
xor cl, byte [rax]
xor cl, bl
je 0x14021ff12
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x14021ff19
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xc6]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018da04
mov bl, byte [rbp + 0xc6]
lea r8, [rbp + 0xc7]
lea edx, [r15 - 2]
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018da04
mov cl, byte [rbp + 0xc7]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021ff96
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x401df0]
jmp 0x14021ff99
mov r12b, dil
lea r8, [rbp + 0xc8]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018da04
mov bl, byte [rbp + 0xc8]
lea r8, [rbp + 0xc9]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0xc9]
lea r8, [rbp + 0xca]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp + 0xca]
lea r8, [rbp + 0xcb]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018da04
mov cl, byte [rbp + 0xcb]
xor cl, byte [rax]
xor cl, bl
je 0x14022004f
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x140220056
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xcc]
mov edx, r15d
mov rcx, rsi
call fcn.14018da04
mov bl, byte [rbp + 0xcc]
lea r8, [rbp + 0xcd]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0xcd]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x1402200d3
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x4018f0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x401df0]
mov byte [rbp + 0x160], al
jmp 0x1402200da
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xce]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018da04
mov bl, byte [rbp + 0xce]
lea r8, [rbp + 0xcf]
xor bl, byte [rbp + 0x160]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
xor bl, r12b
call fcn.14018da04
mov cl, byte [rbp + 0xcf]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021fe1f
mov r14, qword [rbp + 0x158]
lea r8, [rbp + 0xd0]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0xd0]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140214c58
lea r8, [rbp + 0xd1]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018da04
mov cl, byte [rbp + 0xd1]
lea r8, [rbp + 0xd2]
xor cl, sil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
inc edx
call fcn.14018da04
mov cl, byte [rbp + 0xd2]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140215a7c
lea r8, [rbp + 0xd3]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xd3]
lea r8, [rbp + 0xd4]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 2
call fcn.14018da04
mov cl, byte [rbp + 0xd4]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140215ab0
lea r8, [rbp + 0xd5]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0xd5]
lea r8, [rbp + 0xd6]
xor cl, dil
mov edi, 3
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, edi
call fcn.14018da04
mov cl, byte [rbp + 0xd6]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, edi
xor cl, byte [rax]
call fcn.1402168d4
lea r8, [rbp + 0xd7]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xd7]
lea r8, [rbp + 0xd8]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 4
call fcn.14018da04
mov cl, byte [rbp + 0xd8]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140216c98
lea r8, [rbp + 0xd9]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xd9]
lea r8, [rbp + 0xda]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 5
call fcn.14018da04
mov cl, byte [rbp + 0xda]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14021705c
lea r8, [rbp + 0xdb]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xdb]
lea r8, [rbp + 0xdc]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 6
call fcn.14018da04
mov cl, byte [rbp + 0xdc]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140217258
lea r8, [rbp + 0xdd]
mov rcx, rsi
lea edx, [rbx + 6]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0xdd]
lea r8, [rbp + 0xde]
xor cl, dil
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 7
call fcn.14018da04
movzx ecx, byte [rbp + 0xde]
lea r15, [0x140000000]
mov edx, dword [r14 + 8]
lea r8, [rbp + 0xdf]
add edx, 7
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r15 + 0x408d30]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0xdf]
lea r8, [rbp + 0xe0]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 8
call fcn.14018da04
mov cl, byte [rbp + 0xe0]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140217eb8
lea r8, [rbp + 0xe1]
mov rcx, rsi
lea edx, [rbx + 8]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xe1]
lea r8, [rbp + 0xe2]
mov byte [rax], dil
mov edx, dword [r14 + 8]
add edx, 9
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0xe2]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14021827c
lea r8, [rbp + 0xe3]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xe3]
lea r8, [rbp + 0xe4]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xa
call fcn.14018da04
movzx ecx, byte [rbp + 0xe4]
lea r8, [rbp + 0xe5]
mov edx, dword [r14 + 8]
add edx, 0xa
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r15 + 0x4048d0]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0xe5]
lea r8, [rbp + 0xe6]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xb
call fcn.14018da04
mov edx, dword [r14 + 8]
lea r8, [rbp + 0xe7]
add edx, 0xb
movzx ecx, byte [rax]
movzx eax, byte [rbp + 0xe6]
xor rcx, rax
mov bl, byte [rcx + r15 + 0x40a640]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0xe7]
lea r8, [rbp + 0xe8]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xc
call fcn.14018da04
movzx ecx, byte [rbp + 0xe8]
lea r8, [rbp + 0xe9]
mov edx, dword [r14 + 8]
add edx, 0xc
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r15 + 0x406970]
mov rcx, qword [r14]
call fcn.14018da04
mov cl, byte [rbp + 0xe9]
lea r8, [rbp + 0xea]
xor cl, bl
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xd
call fcn.14018da04
mov cl, byte [rbp + 0xea]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402182b0
lea r8, [rbp + 0xeb]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018da04
mov cl, byte [rbp + 0xeb]
xor cl, dil
lea r8, [rbp + 0xec]
mov byte [rax], cl
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xe
call fcn.14018da04
mov cl, byte [rbp + 0xec]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140218f10
lea r8, [rbp + 0xed]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018da04
xor dil, byte [rbp + 0xed]
lea r8, [rbp + 0xee]
mov byte [rax], dil
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
add edx, 0xf
call fcn.14018da04
movzx ecx, byte [rbp + 0xee]
lea r8, [rbp + 0xef]
mov edx, dword [r14 + 8]
add edx, 0xf
movzx eax, byte [rax]
xor rcx, rax
mov bl, byte [rcx + r15 + 0x4026a0]
mov rcx, qword [r14]
call fcn.14018da04
xor bl, byte [rbp + 0xef]
mov dword [rbp + 0x168], 8
mov byte [rax], bl
movaps xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x20]
psrldq xmm0, 8
movd r13d, xmm0
add r13d, 9
mov dword [rbp + 0x160], r13d
lea r15d, [r13 - 8]
mov rcx, rbx
mov edx, r15d
lea r8, [rbp + 0xf0]
call fcn.14018da04
mov sil, byte [rbp + 0xf0]
lea r14d, [r13 - 4]
lea r8, [rbp + 0xf1]
mov edx, r14d
mov rcx, rbx
xor sil, byte [rax]
call fcn.14018da04
mov dil, byte [rbp + 0xf1]
lea r8, [rbp + 0xf2]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018da04
mov bl, byte [rbp + 0xf2]
lea r12d, [r13 + 4]
mov rcx, qword [rsp + 0x20]
lea r8, [rbp + 0xf3]
mov edx, r12d
xor bl, byte [rax]
call fcn.14018da04
lea r8, [rbp + 0xf4]
mov edx, r15d
movzx r13d, byte [rax]
movzx eax, byte [rbp + 0xf3]
xor r13d, eax
movzx eax, bl
mov rbx, qword [rsp + 0x20]
shl eax, 0x10
shl r13d, 0x18
add r13d, eax
movzx eax, dil
mov edi, dword [rbp + 0x168]
mov ecx, edi
shl eax, 8
add r13d, eax
movzx eax, sil
add r13d, eax
ror r13d, cl
mov rcx, rbx
call fcn.14018da04
mov cl, byte [rbp + 0xf4]
lea r8, [rbp + 0xf5]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov edx, dword [rbp + 0x160]
lea r8, [rbp + 0xf6]
mov ecx, r13d
shr ecx, 8
xor cl, byte [rbp + 0xf5]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
mov ecx, r13d
lea r8, [rbp + 0xf7]
shr ecx, 0x10
mov edx, r12d
xor cl, byte [rbp + 0xf6]
mov byte [rax], cl
mov rcx, rbx
call fcn.14018da04
shr r13d, 0x18
add edi, 8
xor r13b, byte [rbp + 0xf7]
mov dword [rbp + 0x168], edi
mov byte [rax], r13b
mov r13d, dword [rbp + 0x160]
inc r13d
sub qword [rbp + 0x100], 1
mov dword [rbp + 0x160], r13d
jne 0x140220600
xor eax, eax
mov rbx, qword [rsp + 0x250]
add rsp, 0x210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret