Function at 0x14021c944
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 0x14021c97e
mov eax, 0xc004d202
jmp 0x140221170
mov edx, dword [rcx + 8]
lea r8, [rbp + 0x8a]
mov rcx, qword [rcx]
call fcn.14018f20c
mov cl, byte [rbp + 0x8a]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fb150
lea r8, [rbp + 0xf8]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x38]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fbbe8
lea r8, [rsp + 0x39]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x3a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fc850
lea r8, [rsp + 0x3b]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x3c]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, r15d
xor cl, byte [rax]
call fcn.1401fca48
lea r8, [rsp + 0x3d]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x3e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fce08
lea r8, [rsp + 0x3f]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x40]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fd000
lea r8, [rsp + 0x41]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x42]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401fdc60
lea r8, [rsp + 0x43]
mov rcx, rsi
lea edx, [rbx + 6]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rsp + 0x44]
call fcn.1401fe8bc
lea r8, [rsp + 0x45]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rsp + 0x46]
call fcn.1401feab4
lea r8, [rsp + 0x47]
mov rcx, rsi
lea edx, [rbx + 8]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rsp + 0x48]
call fcn.1401ff710
lea r8, [rsp + 0x49]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x4a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1401ff908
lea r8, [rsp + 0x4b]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rsp + 0x4c]
call fcn.1401ffb00
lea r8, [rsp + 0x4d]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rsp + 0x4e]
call fcn.140200594
lea r8, [rsp + 0x4f]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x50]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402011f0
mov dil, al
lea r8, [rsp + 0x51]
lea edx, [rbx + 0xd]
mov rcx, rsi
call fcn.14018f20c
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.14018f20c
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 + 0x4052a0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rsp + 0x54]
call fcn.1402013e8
lea r8, [rsp + 0x55]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018f20c
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.14018f20c
lea r14d, [r13 - 4]
mov rcx, rbx
lea r8, [rsp + 0x57]
mov edx, r14d
mov sil, byte [rax]
xor sil, byte [rsp + 0x56]
call fcn.14018f20c
lea r8, [rsp + 0x58]
mov edx, r13d
mov rcx, rbx
mov dil, byte [rax]
xor dil, byte [rsp + 0x57]
call fcn.14018f20c
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.14018f20c
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.14018f20c
mov cl, r13b
lea r8, [rsp + 0x5b]
xor cl, byte [rsp + 0x5a]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021cdfd
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.14018f20c
mov bl, byte [rsp + 0x5e]
lea edx, [r15 + 1]
lea r8, [rsp + 0x5f]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rsp + 0x60]
lea r8, [rsp + 0x61]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rsp + 0x62]
lea r8, [rsp + 0x63]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rsp + 0x63]
xor cl, byte [rax]
xor cl, bl
je 0x14021d035
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021d03c
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x64]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x65]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021d0b1
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021d0b4
mov r12b, dil
lea r8, [rsp + 0x66]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x67]
lea r8, [rsp + 0x68]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018f20c
mov bl, byte [rsp + 0x68]
lea r8, [rsp + 0x69]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rsp + 0x69]
xor cl, bl
xor cl, byte [rax]
je 0x14021d15a
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021d161
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x6a]
mov edx, r15d
mov rcx, r14
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x6b]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021d1d6
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021d1dd
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x6c]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rsp + 0x6d]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021cf5a
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.14018f20c
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 + 0x3f5b80]
call fcn.14018f20c
mov cl, byte [rsp + 0x6f]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021d24c
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.14018f20c
lea r14d, [r13 - 4]
mov rcx, rbx
lea r8, [rsp + 0x71]
mov edx, r14d
mov sil, byte [rax]
xor sil, byte [rsp + 0x70]
call fcn.14018f20c
lea r8, [rsp + 0x72]
mov edx, r13d
mov rcx, rbx
mov dil, byte [rax]
xor dil, byte [rsp + 0x71]
call fcn.14018f20c
mov rcx, qword [rsp + 0x20]
lea r12d, [r13 + 4]
lea r8, [rsp + 0x73]
mov edx, r12d
mov bl, byte [rax]
xor bl, byte [rsp + 0x72]
call fcn.14018f20c
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.14018f20c
mov cl, r13b
lea r8, [rsp + 0x75]
xor cl, byte [rsp + 0x74]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021d2c4
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.14018f20c
mov bl, byte [rsp + 0x78]
lea edx, [r15 + 1]
lea r8, [rsp + 0x79]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
lea r8, [rsp + 0x7b]
mov edx, r15d
mov rcx, rsi
mov bl, byte [rax]
xor bl, byte [rsp + 0x7a]
call fcn.14018f20c
lea r8, [rsp + 0x7c]
mov rcx, rsi
lea edx, [r15 - 2]
mov r12b, byte [rax]
xor r12b, byte [rsp + 0x7b]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018f20c
mov bl, byte [rsp + 0x7c]
lea r8, [rsp + 0x7d]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rsp + 0x7d]
xor cl, bl
je 0x14021d4fe
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021d505
mov byte [rbp + 0x160], dil
lea r8, [rsp + 0x7e]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018f20c
lea r8, [rsp + 0x7f]
mov rcx, rsi
lea edx, [r15 - 2]
mov bl, byte [rax]
xor bl, byte [rsp + 0x7e]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018f20c
mov cl, byte [rsp + 0x7f]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021d57a
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021d57d
mov r12b, dil
lea r8, [rbp - 0x80]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x7f]
lea r8, [rbp - 0x7e]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018f20c
lea r8, [rbp - 0x7d]
mov rcx, rsi
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp - 0x7e]
call fcn.14018f20c
mov cl, byte [rbp - 0x7d]
xor cl, bl
xor cl, byte [rax]
je 0x14021d61b
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021d622
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x7c]
mov edx, r15d
mov rcx, rsi
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x7b]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021d693
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021d69a
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x7a]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018f20c
lea r8, [rbp - 0x79]
mov rcx, rsi
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp - 0x7a]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp - 0x79]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021d423
mov r14, qword [rbp + 0x158]
lea r8, [rbp - 0x78]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018f20c
mov cl, byte [rbp - 0x78]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140201418
lea r8, [rbp - 0x77]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018f20c
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.14018f20c
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 + 0x3ffe70]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp - 0x74]
call fcn.140202074
lea r8, [rbp - 0x73]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x401d10]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x70]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020226c
lea r8, [rbp - 0x6f]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp - 0x6e]
call fcn.140202ecc
lea r8, [rbp - 0x6d]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x6c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402030c0
lea r8, [rbp - 0x6b]
mov rcx, rsi
lea edx, [rbx + 6]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x6a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402032b8
lea r8, [rbp - 0x69]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x403720]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x402ae0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x64]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402042a8
lea r8, [rbp - 0x63]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x62]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140204d3c
lea r8, [rbp - 0x61]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x400200]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x5e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020599c
lea r8, [rbp - 0x5d]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp - 0x5c]
call fcn.1402059cc
lea r8, [rbp - 0x5b]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x4015f0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
lea r14d, [r13 - 4]
mov rcx, rbx
lea r8, [rbp - 0x57]
mov edx, r14d
mov sil, byte [rax]
xor sil, byte [rbp - 0x58]
call fcn.14018f20c
mov dil, byte [rbp - 0x57]
lea r8, [rbp - 0x56]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018f20c
mov rcx, qword [rsp + 0x20]
lea r12d, [r13 + 4]
lea r8, [rbp - 0x55]
mov edx, r12d
mov bl, byte [rax]
xor bl, byte [rbp - 0x56]
call fcn.14018f20c
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.14018f20c
mov cl, r13b
lea r8, [rbp - 0x53]
xor cl, byte [rbp - 0x54]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021dafe
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.14018f20c
lea edx, [r15 + 1]
mov rcx, r14
lea r8, [rbp - 0x4f]
mov bl, byte [rax]
xor bl, byte [rbp - 0x50]
call fcn.14018f20c
lea edx, [r15 - 1]
mov rcx, r14
lea r8, [rbp - 0x4e]
mov r13b, byte [rax]
xor r13b, byte [rbp - 0x4f]
xor r13b, bl
call fcn.14018f20c
mov bl, byte [rbp - 0x4e]
lea r8, [rbp - 0x4d]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
lea r8, [rbp - 0x4c]
mov rcx, r14
lea edx, [r15 - 2]
mov r12b, byte [rax]
xor r12b, byte [rbp - 0x4d]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018f20c
lea r8, [rbp - 0x4b]
mov rcx, r14
lea edx, [r15 - 1]
mov bl, byte [rax]
xor bl, byte [rbp - 0x4c]
call fcn.14018f20c
mov cl, byte [rbp - 0x4b]
xor cl, bl
xor cl, byte [rax]
je 0x14021dd1a
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021dd21
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x4a]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x49]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021dd92
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021dd95
mov r12b, dil
lea r8, [rbp - 0x48]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018f20c
lea r8, [rbp - 0x47]
mov rcx, r14
lea edx, [r15 - 1]
mov bl, byte [rax]
xor bl, byte [rbp - 0x48]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp - 0x47]
lea r8, [rbp - 0x46]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018f20c
mov bl, byte [rbp - 0x46]
lea r8, [rbp - 0x45]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp - 0x45]
xor cl, bl
je 0x14021de33
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021de3a
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x44]
mov edx, r15d
mov rcx, r14
call fcn.14018f20c
lea r8, [rbp - 0x43]
mov edx, r15d
mov rcx, r14
mov bl, byte [rax]
xor bl, byte [rbp - 0x44]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp - 0x43]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021deab
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021deb2
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x42]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x41]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021dc4b
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.14018f20c
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 + 0x3f5b80]
call fcn.14018f20c
mov cl, byte [rbp - 0x3f]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021df1d
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.14018f20c
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.14018f20c
mov dil, byte [rbp - 0x3d]
lea r8, [rbp - 0x3c]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018f20c
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.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x3a]
lea r8, [rbp - 0x39]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021df91
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.14018f20c
mov r12b, byte [rbp - 0x36]
lea edx, [r13 + 1]
lea r8, [rbp - 0x35]
mov rcx, rsi
xor r12b, byte [rax]
call fcn.14018f20c
lea edx, [r13 - 1]
mov rcx, rsi
lea r8, [rbp - 0x34]
xor r12b, byte [rax]
xor r12b, byte [rbp - 0x35]
call fcn.14018f20c
lea r8, [rbp - 0x33]
mov edx, r13d
mov rcx, rsi
mov bl, byte [rax]
xor bl, byte [rbp - 0x34]
call fcn.14018f20c
lea r8, [rbp - 0x32]
mov rcx, rsi
lea edx, [r13 - 2]
mov al, byte [rax]
xor al, byte [rbp - 0x33]
xor al, bl
mov r15b, al
mov byte [rbp + 0x168], al
xor r15b, r12b
call fcn.14018f20c
lea r8, [rbp - 0x31]
mov rcx, rsi
lea edx, [r13 - 1]
mov bl, byte [rax]
xor bl, byte [rbp - 0x32]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp - 0x31]
xor cl, bl
je 0x14021e1ab
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021e1b2
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x30]
mov rcx, rsi
lea edx, [r13 - 2]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x2f]
xor cl, bl
mov byte [rax], cl
movzx eax, byte [rbp + 0x168]
test al, al
je 0x14021e227
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021e22e
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x2e]
mov rcx, rsi
lea edx, [r13 - 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x2d]
lea r8, [rbp - 0x2c]
xor cl, bl
mov edx, r13d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018f20c
lea r8, [rbp - 0x2b]
mov rcx, rsi
lea edx, [r13 + 1]
mov bl, byte [rax]
xor bl, byte [rbp - 0x2c]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp - 0x2b]
xor cl, bl
je 0x14021e2c8
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021e2cf
mov byte [rbp + 0x160], dil
lea r8, [rbp - 0x2a]
mov edx, r13d
mov rcx, rsi
call fcn.14018f20c
lea r8, [rbp - 0x29]
mov edx, r13d
mov rcx, rsi
mov bl, byte [rax]
xor bl, r15b
xor bl, byte [rbp - 0x2a]
xor bl, byte [rbp + 0x160]
call fcn.14018f20c
mov cl, byte [rbp - 0x29]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021e33b
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021e33e
mov r12b, dil
lea r8, [rbp - 0x28]
mov rcx, rsi
lea edx, [r13 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x27]
add r13d, 4
xor cl, r15b
mov byte [rax], cl
sub r14, 1
jne 0x14021e0e0
mov r14, qword [rbp + 0x158]
lea r8, [rbp - 0x26]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018f20c
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 + 0x403820]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x404b80]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x22]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402067f4
lea r8, [rbp - 0x21]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x20]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, r15d
xor cl, byte [rax]
call fcn.14020728c
lea r8, [rbp - 0x1f]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp - 0x1e]
call fcn.140207eec
lea r8, [rbp - 0x1d]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x1c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402082ac
lea r8, [rbp - 0x1b]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x403920]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp - 0x18]
call fcn.1402084a4
lea r8, [rbp - 0x17]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x404f10]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x14]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402092cc
lea r8, [rbp - 0x13]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0x12]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140209f28
lea r8, [rbp - 0x11]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp - 0x10]
call fcn.14020a120
lea r8, [rbp - 0xf]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0xe]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020a150
lea r8, [rbp - 0xd]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0xc]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020af74
lea r8, [rbp - 0xb]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 0xa]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020b334
lea r8, [rbp - 9]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp - 8]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020b52c
lea r8, [rbp - 7]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018f20c
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.14018f20c
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.14018f20c
mov dil, byte [rbp - 5]
lea r8, [rbp - 4]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018f20c
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.14018f20c
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.14018f20c
mov cl, byte [rbp - 2]
lea r8, [rbp - 1]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021e79b
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.14018f20c
lea edx, [r15 + 1]
mov rcx, r14
lea r8, [rbp + 3]
mov bl, byte [rax]
xor bl, byte [rbp + 2]
call fcn.14018f20c
lea edx, [r15 - 1]
mov rcx, r14
lea r8, [rbp + 4]
mov r13b, byte [rax]
xor r13b, byte [rbp + 3]
xor r13b, bl
call fcn.14018f20c
lea r8, [rbp + 5]
mov edx, r15d
mov rcx, r14
mov bl, byte [rax]
xor bl, byte [rbp + 4]
call fcn.14018f20c
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.14018f20c
lea r8, [rbp + 7]
mov rcx, r14
lea edx, [r15 - 1]
mov bl, byte [rax]
xor bl, byte [rbp + 6]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 7]
xor cl, bl
je 0x14021e9b7
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021e9be
mov byte [rbp + 0x160], dil
lea r8, [rbp + 8]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018f20c
lea r8, [rbp + 9]
mov rcx, r14
lea edx, [r15 - 2]
mov bl, byte [rax]
xor bl, byte [rbp + 8]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018f20c
mov cl, byte [rbp + 9]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021ea2f
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021ea32
mov r12b, dil
lea r8, [rbp + 0xa]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018f20c
lea r8, [rbp + 0xb]
mov rcx, r14
lea edx, [r15 - 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0xa]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp + 0xb]
lea r8, [rbp + 0xc]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018f20c
lea r8, [rbp + 0xd]
mov rcx, r14
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0xc]
call fcn.14018f20c
mov cl, byte [rbp + 0xd]
xor cl, bl
xor cl, byte [rax]
je 0x14021ead0
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021ead7
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xe]
mov edx, r15d
mov rcx, r14
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xf]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021eb48
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021eb4f
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x10]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018f20c
lea r8, [rbp + 0x11]
mov rcx, r14
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0x10]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp + 0x11]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021e8e8
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.14018f20c
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 + 0x3f5b80]
call fcn.14018f20c
mov cl, byte [rbp + 0x13]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021ebba
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.14018f20c
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.14018f20c
mov dil, byte [rbp + 0x15]
lea r8, [rbp + 0x16]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018f20c
mov rcx, qword [rsp + 0x20]
lea r12d, [r13 + 4]
lea r8, [rbp + 0x17]
mov edx, r12d
mov bl, byte [rax]
xor bl, byte [rbp + 0x16]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x18]
lea r8, [rbp + 0x19]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021ec2e
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.14018f20c
lea edx, [r15 + 1]
mov rcx, rsi
lea r8, [rbp + 0x1d]
mov bl, byte [rax]
xor bl, byte [rbp + 0x1c]
call fcn.14018f20c
lea edx, [r15 - 1]
mov rcx, rsi
lea r8, [rbp + 0x1e]
mov r13b, byte [rax]
xor r13b, byte [rbp + 0x1d]
xor r13b, bl
call fcn.14018f20c
mov bl, byte [rbp + 0x1e]
lea r8, [rbp + 0x1f]
mov edx, r15d
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rbp + 0x20]
lea r8, [rbp + 0x21]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rbp + 0x21]
xor cl, bl
xor cl, byte [rax]
je 0x14021ee4c
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021ee53
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x22]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x23]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021eec4
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021eec7
mov r12b, dil
lea r8, [rbp + 0x24]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018f20c
lea r8, [rbp + 0x25]
mov rcx, rsi
lea edx, [r15 - 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0x24]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp + 0x25]
lea r8, [rbp + 0x26]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018f20c
mov bl, byte [rbp + 0x26]
lea r8, [rbp + 0x27]
lea edx, [r15 + 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rbp + 0x27]
xor cl, bl
xor cl, byte [rax]
je 0x14021ef65
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021ef6c
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x28]
mov edx, r15d
mov rcx, rsi
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x29]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021efdd
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021efe4
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x2a]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x2b]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021ed7d
mov r14, qword [rbp + 0x158]
lea r8, [rbp + 0x2c]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018f20c
mov cl, byte [rbp + 0x2c]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020b724
lea r8, [rbp + 0x2d]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x2e]
call fcn.14020c544
lea r8, [rbp + 0x2f]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x40aba0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x404560]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x40a060]
mov rcx, qword [r14]
lea r8, [rbp + 0x35]
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x36]
call fcn.14020cc94
lea r8, [rbp + 0x37]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x400300]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x3a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020d8f0
lea r8, [rbp + 0x3b]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x3c]
call fcn.14020dae8
lea r8, [rbp + 0x3d]
mov rcx, rsi
lea edx, [rbx + 8]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 0x3e]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
call fcn.14020e748
lea r8, [rbp + 0x3f]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x40]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14020f3a8
lea r8, [rbp + 0x41]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x42]
call fcn.14020f3d8
lea r8, [rbp + 0x43]
mov rcx, rsi
lea edx, [rbx + 0xb]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x44]
call fcn.14020fe74
lea r8, [rbp + 0x45]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x46]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140210ad0
lea r8, [rbp + 0x47]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x48]
call fcn.140210b00
lea r8, [rbp + 0x49]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x4a]
call fcn.14021192c
lea r8, [rbp + 0x4b]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018f20c
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.14018f20c
lea r14d, [r13 - 4]
mov rcx, rbx
lea r8, [rbp + 0x4d]
mov edx, r14d
mov sil, byte [rax]
xor sil, byte [rbp + 0x4c]
call fcn.14018f20c
mov dil, byte [rbp + 0x4d]
lea r8, [rbp + 0x4e]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018f20c
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.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x50]
lea r8, [rbp + 0x51]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021f446
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.14018f20c
mov bl, byte [rbp + 0x54]
lea edx, [r15 + 1]
lea r8, [rbp + 0x55]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rbp + 0x56]
lea r8, [rbp + 0x57]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rbp + 0x58]
lea r8, [rbp + 0x59]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rbp + 0x59]
xor cl, bl
xor cl, byte [rax]
je 0x14021f662
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021f669
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x5a]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x5b]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021f6da
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021f6dd
mov r12b, dil
lea r8, [rbp + 0x5c]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x5d]
lea r8, [rbp + 0x5e]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018f20c
mov bl, byte [rbp + 0x5e]
lea r8, [rbp + 0x5f]
lea edx, [r15 + 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rbp + 0x5f]
xor cl, bl
xor cl, byte [rax]
je 0x14021f775
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov bl, byte [rax + rdx + 0x3feea0]
jmp 0x14021f778
mov bl, dil
lea r8, [rbp + 0x60]
mov edx, r15d
mov rcx, r14
call fcn.14018f20c
xor bl, r12b
lea r8, [rbp + 0x61]
mov edx, r15d
mov rcx, r14
xor bl, byte [rax]
xor bl, byte [rbp + 0x60]
call fcn.14018f20c
xor bl, byte [rbp + 0x61]
mov byte [rax], bl
test r13b, r13b
je 0x14021f7db
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov bl, byte [rax + rdx + 0x3feea0]
jmp 0x14021f7de
mov bl, dil
lea r8, [rbp + 0x62]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x63]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x14021f593
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.14018f20c
lea r8, [rbp + 0x65]
mov edx, edi
mov cl, byte [rax]
xor cl, byte [rbp + 0x64]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f5b80]
call fcn.14018f20c
mov cl, byte [rbp + 0x65]
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021f843
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.14018f20c
lea r14d, [r13 - 4]
mov rcx, rbx
lea r8, [rbp + 0x67]
mov edx, r14d
mov sil, byte [rax]
xor sil, byte [rbp + 0x66]
call fcn.14018f20c
lea r8, [rbp + 0x68]
mov edx, r13d
mov rcx, rbx
mov dil, byte [rax]
xor dil, byte [rbp + 0x67]
call fcn.14018f20c
mov rcx, qword [rsp + 0x20]
lea r12d, [r13 + 4]
lea r8, [rbp + 0x69]
mov edx, r12d
mov bl, byte [rax]
xor bl, byte [rbp + 0x68]
call fcn.14018f20c
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.14018f20c
mov cl, r13b
lea r8, [rbp + 0x6b]
xor cl, byte [rbp + 0x6a]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x14021f8b7
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.14018f20c
mov bl, byte [rbp + 0x6e]
lea edx, [r15 + 1]
lea r8, [rbp + 0x6f]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
lea r8, [rbp + 0x71]
mov edx, r15d
mov rcx, rsi
mov bl, byte [rax]
xor bl, byte [rbp + 0x70]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rbp + 0x72]
lea r8, [rbp + 0x73]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 0x73]
xor cl, bl
je 0x14021fad5
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021fadc
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x74]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018f20c
lea r8, [rbp + 0x75]
mov rcx, rsi
lea edx, [r15 - 2]
mov bl, byte [rax]
xor bl, byte [rbp + 0x74]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018f20c
mov cl, byte [rbp + 0x75]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x14021fb4d
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14021fb50
mov r12b, dil
lea r8, [rbp + 0x76]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x77]
lea r8, [rbp + 0x78]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018f20c
lea r8, [rbp + 0x79]
mov rcx, rsi
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0x78]
call fcn.14018f20c
mov cl, byte [rbp + 0x79]
xor cl, bl
xor cl, byte [rax]
je 0x14021fbee
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021fbf5
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x7a]
mov edx, r15d
mov rcx, rsi
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x7b]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x14021fc66
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x14021fc6d
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0x7c]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018f20c
lea r8, [rbp + 0x7d]
mov rcx, rsi
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0x7c]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp + 0x7d]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x14021fa06
mov r14, qword [rbp + 0x158]
lea r8, [rbp + 0x7e]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018f20c
mov cl, byte [rbp + 0x7e]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140211b24
lea r8, [rbp + 0x7f]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x80]
call fcn.140211ee4
lea r8, [rbp + 0x81]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x82]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402120dc
lea r8, [rbp + 0x83]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x84]
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, r15d
xor cl, byte [rax]
call fcn.14021210c
lea r8, [rbp + 0x85]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x86]
call fcn.140212d6c
lea r8, [rbp + 0x87]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x408ae0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x403620]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x8c]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402139d0
lea r8, [rbp + 0x8d]
mov rcx, rsi
lea edx, [rbx + 7]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x405c50]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 0x90]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
call fcn.140213a00
lea r8, [rbp + 0x91]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x92]
call fcn.140214498
lea r8, [rbp + 0x93]
mov rcx, rsi
lea edx, [rbx + 0xa]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x3ff850]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x96]
call fcn.1402152c0
lea r8, [rbp + 0x97]
mov rcx, rsi
lea edx, [rbx + 0xc]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x4077f0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0x9a]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402154b4
lea r8, [rbp + 0x9b]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0x9c]
call fcn.1402156ac
lea r8, [rbp + 0x9d]
mov rcx, rsi
lea edx, [rbx + 0xf]
mov dil, al
call fcn.14018f20c
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.14018f20c
lea r14d, [r13 - 4]
mov rcx, rbx
lea r8, [rbp + 0x9f]
mov edx, r14d
mov sil, byte [rax]
xor sil, byte [rbp + 0x9e]
call fcn.14018f20c
lea r8, [rbp + 0xa0]
mov edx, r13d
mov rcx, rbx
mov dil, byte [rax]
xor dil, byte [rbp + 0x9f]
call fcn.14018f20c
mov rcx, qword [rsp + 0x20]
lea r12d, [r13 + 4]
lea r8, [rbp + 0xa1]
mov edx, r12d
mov bl, byte [rax]
xor bl, byte [rbp + 0xa0]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xa2]
lea r8, [rbp + 0xa3]
xor cl, r13b
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x140220183
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.14018f20c
mov bl, byte [rbp + 0xa6]
lea edx, [r15 + 1]
lea r8, [rbp + 0xa7]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
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.14018f20c
lea r8, [rbp + 0xa9]
mov edx, r15d
mov rcx, r14
mov bl, byte [rax]
xor bl, byte [rbp + 0xa8]
call fcn.14018f20c
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.14018f20c
mov bl, byte [rbp + 0xaa]
lea r8, [rbp + 0xab]
lea edx, [r15 - 1]
mov rcx, r14
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 0xab]
xor cl, bl
je 0x1402203f3
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x1402203fa
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xac]
mov rcx, r14
lea edx, [r15 - 2]
call fcn.14018f20c
lea r8, [rbp + 0xad]
mov rcx, r14
lea edx, [r15 - 2]
mov bl, byte [rax]
xor bl, byte [rbp + 0xac]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018f20c
mov cl, byte [rbp + 0xad]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x140220477
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x14022047a
mov r12b, dil
lea r8, [rbp + 0xae]
mov rcx, r14
lea edx, [r15 - 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xaf]
lea r8, [rbp + 0xb0]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, r14
call fcn.14018f20c
lea r8, [rbp + 0xb1]
mov rcx, r14
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0xb0]
call fcn.14018f20c
mov cl, byte [rbp + 0xb1]
xor cl, bl
xor cl, byte [rax]
je 0x140220530
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x140220537
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xb2]
mov edx, r15d
mov rcx, r14
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xb3]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x1402205b4
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x1402205bb
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xb4]
mov rcx, r14
lea edx, [r15 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xb5]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x140220300
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.14018f20c
lea r8, [rbp + 0xb7]
mov edx, edi
mov cl, byte [rax]
xor cl, byte [rbp + 0xb6]
movzx eax, cl
mov rcx, qword [rsp + 0x20]
mov bl, byte [rax + r15 + 0x3f5b80]
call fcn.14018f20c
mov cl, byte [rbp + 0xb7]
xor cl, bl
mov byte [rax], cl
sub rsi, 1
jne 0x140220631
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.14018f20c
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.14018f20c
mov dil, byte [rbp + 0xb9]
lea r8, [rbp + 0xba]
mov edx, r13d
mov rcx, rbx
xor dil, byte [rax]
call fcn.14018f20c
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.14018f20c
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.14018f20c
mov cl, r13b
lea r8, [rbp + 0xbd]
xor cl, byte [rbp + 0xbc]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x1402206b8
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.14018f20c
lea edx, [r15 + 1]
mov rcx, rsi
lea r8, [rbp + 0xc1]
mov bl, byte [rax]
xor bl, byte [rbp + 0xc0]
call fcn.14018f20c
lea edx, [r15 - 1]
mov rcx, rsi
lea r8, [rbp + 0xf9]
mov r13b, byte [rax]
xor r13b, byte [rbp + 0xc1]
xor r13b, bl
call fcn.14018f20c
lea r8, [rbp + 0xc3]
mov edx, r15d
mov rcx, rsi
mov bl, byte [rax]
xor bl, byte [rbp + 0xf9]
call fcn.14018f20c
lea r8, [rbp + 0xc4]
mov rcx, rsi
lea edx, [r15 - 2]
mov r12b, byte [rax]
xor r12b, byte [rbp + 0xc3]
xor r12b, bl
mov al, r12b
xor al, r13b
mov byte [rbp + 0x168], al
call fcn.14018f20c
mov bl, byte [rbp + 0xc4]
lea r8, [rbp + 0xc5]
lea edx, [r15 - 1]
mov rcx, rsi
xor bl, byte [rax]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 0xc5]
xor cl, bl
je 0x14022092a
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x140220931
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xc6]
mov rcx, rsi
lea edx, [r15 - 2]
call fcn.14018f20c
lea r8, [rbp + 0xc7]
mov rcx, rsi
lea edx, [r15 - 2]
mov bl, byte [rax]
xor bl, byte [rbp + 0xc6]
xor bl, byte [rbp + 0x160]
xor bl, byte [rbp + 0x168]
call fcn.14018f20c
mov cl, byte [rbp + 0xc7]
xor cl, bl
mov byte [rax], cl
test r12b, r12b
je 0x1402209ae
movzx eax, r12b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov r12b, byte [rax + rdx + 0x3feea0]
jmp 0x1402209b1
mov r12b, dil
lea r8, [rbp + 0xc8]
mov rcx, rsi
lea edx, [r15 - 1]
call fcn.14018f20c
lea r8, [rbp + 0xc9]
mov rcx, rsi
lea edx, [r15 - 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0xc8]
xor bl, r12b
mov r12b, byte [rbp + 0x168]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp + 0xc9]
lea r8, [rbp + 0xca]
xor cl, bl
mov edx, r15d
mov byte [rax], cl
mov rcx, rsi
call fcn.14018f20c
lea r8, [rbp + 0xcb]
mov rcx, rsi
lea edx, [r15 + 1]
mov bl, byte [rax]
xor bl, byte [rbp + 0xca]
call fcn.14018f20c
mov cl, byte [rax]
xor cl, byte [rbp + 0xcb]
xor cl, bl
je 0x140220a67
movzx eax, cl
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x140220a6e
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xcc]
mov edx, r15d
mov rcx, rsi
call fcn.14018f20c
lea r8, [rbp + 0xcd]
mov edx, r15d
mov rcx, rsi
mov bl, byte [rax]
xor bl, byte [rbp + 0xcc]
xor bl, byte [rbp + 0x160]
xor bl, r12b
call fcn.14018f20c
mov cl, byte [rbp + 0xcd]
xor cl, bl
mov byte [rax], cl
test r13b, r13b
je 0x140220aeb
movzx eax, r13b
lea rdx, [0x140000000]
mov r8d, 0xff
mov ecx, dword [rdx + rax*4 + 0x3feaa0]
lea eax, [rcx + 0x19]
cmp eax, r8d
sbb eax, eax
and eax, r8d
add eax, 0xffffff1a
add eax, ecx
mov al, byte [rax + rdx + 0x3feea0]
mov byte [rbp + 0x160], al
jmp 0x140220af2
mov byte [rbp + 0x160], dil
lea r8, [rbp + 0xce]
mov rcx, rsi
lea edx, [r15 + 1]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xcf]
add r15d, 4
xor cl, bl
mov byte [rax], cl
sub r14, 1
jne 0x140220837
mov r14, qword [rbp + 0x158]
lea r8, [rbp + 0xd0]
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.14018f20c
mov cl, byte [rbp + 0xd0]
mov rdi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.1402156dc
lea r8, [rbp + 0xd1]
mov edx, ebx
mov rcx, rdi
mov sil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xd2]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140216500
lea r8, [rbp + 0xd3]
mov rcx, rsi
lea edx, [rbx + 1]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0xd4]
call fcn.140216530
lea r8, [rbp + 0xd5]
mov rcx, rsi
lea edx, [rbx + 2]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov ebx, dword [r14 + 8]
mov rsi, qword [r14]
add ebx, edi
mov cl, byte [rax]
xor cl, byte [rbp + 0xd6]
call fcn.140217354
lea r8, [rbp + 0xd7]
mov edx, ebx
mov rcx, rsi
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xd8]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140217714
lea r8, [rbp + 0xd9]
mov rcx, rsi
lea edx, [rbx + 4]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0xda]
call fcn.140217ad4
lea r8, [rbp + 0xdb]
mov rcx, rsi
lea edx, [rbx + 5]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xdc]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140217ccc
lea r8, [rbp + 0xdd]
mov rcx, rsi
lea edx, [rbx + 6]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x405b50]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
mov cl, byte [rax]
xor cl, byte [rbp + 0xe0]
call fcn.14021892c
lea r8, [rbp + 0xe1]
mov rcx, rsi
lea edx, [rbx + 8]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xe2]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140218cec
lea r8, [rbp + 0xe3]
mov rcx, rsi
lea edx, [rbx + 9]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x4016f0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x4076f0]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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 + 0x403a20]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xea]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.140218d1c
lea r8, [rbp + 0xeb]
mov rcx, rsi
lea edx, [rbx + 0xd]
mov dil, al
call fcn.14018f20c
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.14018f20c
mov cl, byte [rbp + 0xec]
mov rsi, qword [r14]
mov ebx, dword [r14 + 8]
xor cl, byte [rax]
call fcn.14021997c
lea r8, [rbp + 0xed]
mov rcx, rsi
lea edx, [rbx + 0xe]
mov dil, al
call fcn.14018f20c
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.14018f20c
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 + 0x3ff750]
mov rcx, qword [r14]
call fcn.14018f20c
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.14018f20c
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.14018f20c
lea r8, [rbp + 0xf2]
mov edx, r13d
mov rcx, rbx
mov dil, byte [rax]
xor dil, byte [rbp + 0xf1]
call fcn.14018f20c
mov rcx, qword [rsp + 0x20]
lea r12d, [r13 + 4]
lea r8, [rbp + 0xf3]
mov edx, r12d
mov bl, byte [rax]
xor bl, byte [rbp + 0xf2]
call fcn.14018f20c
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.14018f20c
mov cl, r13b
lea r8, [rbp + 0xf5]
xor cl, byte [rbp + 0xf4]
mov edx, r14d
mov byte [rax], cl
mov rcx, rbx
call fcn.14018f20c
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.14018f20c
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.14018f20c
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 0x140221018
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