Function at 0x140066720
Capabilities:
Encrypt data using aes
Reference aes constants
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
vmovdqa xmmword [rsp + 0xb0], xmm8
vmovdqa xmmword [rsp + 0xa0], xmm7
vmovdqa xmmword [rsp + 0x90], xmm6
mov eax, 0xffffff53
test rcx, rcx
je 0x1400667d5
mov rdi, rdx
test rdx, rdx
je 0x1400667d5
mov rbx, r8
test r8, r8
je 0x1400667d5
mov esi, r9d
test r9d, r9d
je 0x1400667d3
test sil, 0xf
jne 0x1400667d5
mov r12, rcx
lea r14, [rcx + 0x110]
cmp dword [0x143e27960], 0
je 0x1400667ce
mov eax, esi
vmovups xmm0, xmmword [rbx + rax - 0x10]
vmovups xmmword [r14], xmm0
mov eax, dword [r12 + 0xf0]
lea r8, [r12 + 0x100]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r12
mov rcx, rbx
mov rdx, rdi
mov r9d, esi
call fcn.1400f2529
vmovaps xmm0, xmmword [r14]
vmovaps xmmword [r12 + 0x100], xmm0
jmp 0x1400667d3
cmp esi, 0x10
jae 0x140066804
xor eax, eax
vmovaps xmm6, xmmword [rsp + 0x90]
vmovaps xmm7, xmmword [rsp + 0xa0]
vmovaps xmm8, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
shr esi, 4
lea r15, [r12 + 0x100]
vmovdqa xmm6, xmmword [0x140176200]
vmovdqa xmm7, xmmword [0x140176210]
vmovdqa xmm8, xmmword [0x1401761b0]
mov r13, rdi
mov rbp, rdi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x58], r15
jmp 0x140066930
movzx eax, byte [r12 + 0x100]
xor byte [rbp], al
movzx eax, byte [r12 + 0x101]
xor byte [rbp + 1], al
movzx eax, byte [r12 + 0x102]
xor byte [rbp + 2], al
movzx eax, byte [r12 + 0x103]
xor byte [rbp + 3], al
movzx eax, byte [r12 + 0x104]
xor byte [rbp + 4], al
movzx eax, byte [r12 + 0x105]
xor byte [rbp + 5], al
movzx eax, byte [r12 + 0x106]
xor byte [rbp + 6], al
movzx eax, byte [r12 + 0x107]
xor byte [rbp + 7], al
movzx eax, byte [r12 + 0x108]
xor byte [rbp + 8], al
movzx eax, byte [r12 + 0x109]
xor byte [rbp + 9], al
movzx eax, byte [r12 + 0x10a]
xor byte [rbp + 0xa], al
movzx eax, byte [r12 + 0x10b]
xor byte [rbp + 0xb], al
movzx eax, byte [r12 + 0x10c]
xor byte [rbp + 0xc], al
movzx eax, byte [r12 + 0x10d]
xor byte [rbp + 0xd], al
movzx eax, byte [r12 + 0x10e]
xor byte [rbp + 0xe], al
movzx eax, byte [r12 + 0x10f]
xor byte [rbp + 0xf], al
dec esi
vmovaps xmm0, xmmword [r14]
vmovaps xmmword [r15], xmm0
add rbp, 0x10
add rbx, 0x10
add r13, 0x10
test esi, esi
je 0x1400667d3
vmovdqu xmm0, xmmword [rbx]
vmovdqu xmmword [r14], xmm0
mov r8d, dword [r12 + 0xf0]
lea eax, [r8 - 0x10]
cmp eax, 0xfffffff2
jb 0x140067823
cmp dword [0x143e27960], 0
je 0x140066980
cmp byte [r12 + 0x154], 0
je 0x140066980
mov dword [rsp + 0x20], r8d
mov rcx, r14
mov rdx, rbp
mov r8d, reloc.WS2_32.dll_recv
mov r9, r12
call fcn.1400f2e48
jmp 0x1400677ee
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x88], rbx
mov dword [rsp + 0x54], esi
mov edx, dword [r12 + 0x110]
mov ecx, dword [r12 + 0x114]
mov eax, dword [r12 + 0x118]
bswap edx
xor edx, dword [r12]
mov qword [rsp + 0x48], r8
mov r8d, edx
movzx esi, dh
mov qword [rsp + 0x30], rsi
movzx r9d, dl
mov r10d, edx
mov edx, dword [r12 + 0x11c]
bswap ecx
bswap eax
bswap edx
xor ecx, dword [r12 + 4]
xor eax, dword [r12 + 8]
xor edx, dword [r12 + 0xc]
shr r10d, 0x18
mov r11d, edx
shr r11d, 0x10
movzx r11d, r11b
movzx r15d, cl
mov r14d, ecx
movzx edi, ch
mov r13d, ecx
mov rsi, r12
lea r12, [0x14017f6b0]
mov ebx, dword [r12 + r11*4 + 0x400]
xor ebx, dword [r12 + r10*4]
movzx ecx, ah
xor ebx, dword [r12 + rcx*4 + 0x800]
xor ebx, dword [r12 + r15*4 + 0xc00]
xor ebx, dword [rsi + 0x10]
shr r13d, 0x18
shr r8d, 0x10
movzx ecx, r8b
movzx ebp, dh
movzx r8d, al
mov r10d, eax
movzx r11d, dl
shr edx, 0x18
shr eax, 0x10
movzx eax, al
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rdx*4]
mov ecx, dword [r12 + rcx*4 + 0x400]
xor ecx, dword [r12 + r13*4]
xor ecx, dword [r12 + rbp*4 + 0x800]
xor ecx, dword [r12 + r8*4 + 0xc00]
xor ecx, dword [rsi + 0x14]
shr r10d, 0x18
shr r14d, 0x10
movzx edx, r14b
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + r10*4]
mov r8, qword [rsp + 0x30]
xor edx, dword [r12 + r8*4 + 0x800]
xor edx, dword [r12 + r11*4 + 0xc00]
xor edx, dword [rsi + 0x18]
xor eax, dword [r12 + rdi*4 + 0x800]
xor eax, dword [r12 + r9*4 + 0xc00]
xor eax, dword [rsi + 0x1c]
mov r8d, ebx
movzx edi, bh
mov qword [rsp + 0x30], rdi
mov r9d, ebx
shr r9d, 0x18
mov r10d, eax
shr r10d, 0x10
movzx r10d, r10b
mov r11d, dword [r12 + r10*4 + 0x400]
xor r11d, dword [r12 + r9*4]
movzx r9d, bl
mov qword [rsp + 0x38], r9
movzx r10d, cl
mov edi, ecx
movzx ebx, ch
mov r9, rbx
movzx ebp, dh
mov ebx, r11d
xor ebx, dword [r12 + rbp*4 + 0x800]
xor ebx, dword [r12 + r10*4 + 0xc00]
xor ebx, dword [rsi + 0x20]
shr ecx, 0x18
shr r8d, 0x10
movzx ebp, ah
movzx r14d, dl
mov r11d, edx
movzx r10d, al
shr eax, 0x18
shr edx, 0x10
movzx edx, dl
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + rax*4]
movzx eax, r8b
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rcx*4]
xor eax, dword [r12 + rbp*4 + 0x800]
xor eax, dword [r12 + r14*4 + 0xc00]
xor eax, dword [rsi + 0x24]
shr r11d, 0x18
shr edi, 0x10
movzx r15d, dil
mov r8d, ebx
movzx ecx, bh
mov qword [rsp + 0x40], rcx
movzx r14d, bl
mov r13d, ebx
mov ecx, dword [r12 + r15*4 + 0x400]
xor ecx, dword [r12 + r11*4]
mov r11, qword [rsp + 0x30]
xor ecx, dword [r12 + r11*4 + 0x800]
xor ecx, dword [r12 + r10*4 + 0xc00]
xor ecx, dword [rsi + 0x28]
xor edx, dword [r12 + r9*4 + 0x800]
mov r9, qword [rsp + 0x38]
xor edx, dword [r12 + r9*4 + 0xc00]
xor edx, dword [rsi + 0x2c]
shr r13d, 0x18
mov r9d, edx
shr r9d, 0x10
movzx r9d, r9b
movzx r10d, al
mov r11d, eax
movzx edi, ah
mov r15d, eax
mov ebx, dword [r12 + r9*4 + 0x400]
xor ebx, dword [r12 + r13*4]
movzx eax, ch
xor ebx, dword [r12 + rax*4 + 0x800]
xor ebx, dword [r12 + r10*4 + 0xc00]
xor ebx, dword [rsi + 0x30]
shr r15d, 0x18
shr r8d, 0x10
movzx r8d, r8b
movzx ebp, dh
movzx r9d, cl
mov r10d, ecx
movzx r13d, dl
shr edx, 0x18
shr ecx, 0x10
movzx eax, cl
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rdx*4]
mov ecx, dword [r12 + r8*4 + 0x400]
xor ecx, dword [r12 + r15*4]
xor ecx, dword [r12 + rbp*4 + 0x800]
xor ecx, dword [r12 + r9*4 + 0xc00]
xor ecx, dword [rsi + 0x34]
shr r10d, 0x18
shr r11d, 0x10
movzx edx, r11b
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + r10*4]
mov r8, qword [rsp + 0x40]
xor edx, dword [r12 + r8*4 + 0x800]
xor edx, dword [r12 + r13*4 + 0xc00]
xor edx, dword [rsi + 0x38]
xor eax, dword [r12 + rdi*4 + 0x800]
xor eax, dword [r12 + r14*4 + 0xc00]
xor eax, dword [rsi + 0x3c]
mov r8d, ebx
movzx edi, bh
mov qword [rsp + 0x30], rdi
mov r9d, ebx
shr r9d, 0x18
mov r10d, eax
shr r10d, 0x10
movzx r10d, r10b
mov r11d, dword [r12 + r10*4 + 0x400]
xor r11d, dword [r12 + r9*4]
movzx r9d, bl
mov qword [rsp + 0x38], r9
movzx r10d, cl
mov edi, ecx
movzx ebx, ch
mov r9, rbx
movzx ebp, dh
mov ebx, r11d
xor ebx, dword [r12 + rbp*4 + 0x800]
xor ebx, dword [r12 + r10*4 + 0xc00]
xor ebx, dword [rsi + 0x40]
shr ecx, 0x18
shr r8d, 0x10
movzx ebp, ah
movzx r14d, dl
mov r11d, edx
movzx r10d, al
shr eax, 0x18
shr edx, 0x10
movzx edx, dl
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + rax*4]
movzx eax, r8b
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rcx*4]
xor eax, dword [r12 + rbp*4 + 0x800]
xor eax, dword [r12 + r14*4 + 0xc00]
xor eax, dword [rsi + 0x44]
shr r11d, 0x18
shr edi, 0x10
movzx r15d, dil
mov r8d, ebx
movzx ecx, bh
mov qword [rsp + 0x40], rcx
movzx r14d, bl
mov r13d, ebx
mov ecx, dword [r12 + r15*4 + 0x400]
xor ecx, dword [r12 + r11*4]
mov r11, qword [rsp + 0x30]
xor ecx, dword [r12 + r11*4 + 0x800]
xor ecx, dword [r12 + r10*4 + 0xc00]
xor ecx, dword [rsi + 0x48]
xor edx, dword [r12 + r9*4 + 0x800]
mov r9, qword [rsp + 0x38]
xor edx, dword [r12 + r9*4 + 0xc00]
xor edx, dword [rsi + 0x4c]
shr r13d, 0x18
mov r9d, edx
shr r9d, 0x10
movzx r9d, r9b
movzx r10d, al
mov r11d, eax
movzx edi, ah
mov r15d, eax
mov ebx, dword [r12 + r9*4 + 0x400]
xor ebx, dword [r12 + r13*4]
movzx eax, ch
xor ebx, dword [r12 + rax*4 + 0x800]
xor ebx, dword [r12 + r10*4 + 0xc00]
xor ebx, dword [rsi + 0x50]
shr r15d, 0x18
shr r8d, 0x10
movzx r8d, r8b
movzx ebp, dh
movzx r9d, cl
mov r10d, ecx
movzx r13d, dl
shr edx, 0x18
shr ecx, 0x10
movzx eax, cl
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rdx*4]
mov ecx, dword [r12 + r8*4 + 0x400]
xor ecx, dword [r12 + r15*4]
xor ecx, dword [r12 + rbp*4 + 0x800]
xor ecx, dword [r12 + r9*4 + 0xc00]
xor ecx, dword [rsi + 0x54]
shr r10d, 0x18
shr r11d, 0x10
movzx edx, r11b
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + r10*4]
mov r8, qword [rsp + 0x40]
xor edx, dword [r12 + r8*4 + 0x800]
xor edx, dword [r12 + r13*4 + 0xc00]
xor edx, dword [rsi + 0x58]
xor eax, dword [r12 + rdi*4 + 0x800]
xor eax, dword [r12 + r14*4 + 0xc00]
xor eax, dword [rsi + 0x5c]
mov r8d, ebx
movzx edi, bh
mov qword [rsp + 0x30], rdi
mov r9d, ebx
shr r9d, 0x18
mov r10d, eax
shr r10d, 0x10
movzx r10d, r10b
mov r11d, dword [r12 + r10*4 + 0x400]
xor r11d, dword [r12 + r9*4]
movzx r9d, bl
movzx r10d, cl
mov ebx, ecx
movzx edi, ch
movzx ebp, dh
xor r11d, dword [r12 + rbp*4 + 0x800]
xor r11d, dword [r12 + r10*4 + 0xc00]
xor r11d, dword [rsi + 0x60]
mov r13d, r11d
shr ecx, 0x18
shr r8d, 0x10
movzx ebp, ah
movzx r14d, dl
mov r11d, edx
movzx r10d, al
shr eax, 0x18
shr edx, 0x10
movzx edx, dl
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + rax*4]
movzx eax, r8b
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rcx*4]
xor eax, dword [r12 + rbp*4 + 0x800]
xor eax, dword [r12 + r14*4 + 0xc00]
xor eax, dword [rsi + 0x64]
shr r11d, 0x18
shr ebx, 0x10
movzx r15d, bl
mov ecx, r13d
mov r8d, r13d
movzx ebx, ch
mov qword [rsp + 0x38], rbx
movzx r14d, cl
mov ebx, dword [r12 + r15*4 + 0x400]
xor ebx, dword [r12 + r11*4]
mov rcx, qword [rsp + 0x30]
xor ebx, dword [r12 + rcx*4 + 0x800]
xor ebx, dword [r12 + r10*4 + 0xc00]
xor ebx, dword [rsi + 0x68]
xor edx, dword [r12 + rdi*4 + 0x800]
xor edx, dword [r12 + r9*4 + 0xc00]
xor edx, dword [rsi + 0x6c]
shr r13d, 0x18
mov ecx, edx
shr ecx, 0x10
movzx ecx, cl
movzx r9d, al
mov r10d, eax
movzx edi, ah
mov r11d, eax
mov ecx, dword [r12 + rcx*4 + 0x400]
xor ecx, dword [r12 + r13*4]
movzx eax, bh
xor ecx, dword [r12 + rax*4 + 0x800]
xor ecx, dword [r12 + r9*4 + 0xc00]
xor ecx, dword [rsi + 0x70]
shr r11d, 0x18
shr r8d, 0x10
movzx eax, r8b
movzx ebp, dh
movzx r8d, bl
mov r9d, ebx
movzx r15d, dl
shr edx, 0x18
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [r12 + rbx*4 + 0x400]
xor ebx, dword [r12 + rdx*4]
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + r11*4]
xor eax, dword [r12 + rbp*4 + 0x800]
xor eax, dword [r12 + r8*4 + 0xc00]
xor eax, dword [rsi + 0x74]
shr r9d, 0x18
shr r10d, 0x10
movzx edx, r10b
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + r9*4]
mov r8, qword [rsp + 0x38]
xor edx, dword [r12 + r8*4 + 0x800]
xor edx, dword [r12 + r15*4 + 0xc00]
xor edx, dword [rsi + 0x78]
xor ebx, dword [r12 + rdi*4 + 0x800]
xor ebx, dword [r12 + r14*4 + 0xc00]
xor ebx, dword [rsi + 0x7c]
mov r8d, ecx
movzx edi, ch
mov qword [rsp + 0x30], rdi
mov r9d, ecx
shr r9d, 0x18
mov r10d, ebx
shr r10d, 0x10
movzx r10d, r10b
mov r10d, dword [r12 + r10*4 + 0x400]
xor r10d, dword [r12 + r9*4]
movzx ecx, cl
mov qword [rsp + 0x38], rcx
movzx r9d, al
mov r11d, eax
movzx ecx, ah
mov r15, rcx
mov edi, eax
movzx eax, dh
mov ecx, r10d
xor ecx, dword [r12 + rax*4 + 0x800]
xor ecx, dword [r12 + r9*4 + 0xc00]
xor ecx, dword [rsi + 0x80]
shr edi, 0x18
shr r8d, 0x10
movzx ebp, bh
movzx r14d, dl
mov r10d, edx
movzx r9d, bl
shr ebx, 0x18
shr edx, 0x10
movzx eax, dl
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rbx*4]
movzx edx, r8b
mov ebx, dword [r12 + rdx*4 + 0x400]
xor ebx, dword [r12 + rdi*4]
xor ebx, dword [r12 + rbp*4 + 0x800]
xor ebx, dword [r12 + r14*4 + 0xc00]
xor ebx, dword [rsi + 0x84]
shr r10d, 0x18
shr r11d, 0x10
movzx r11d, r11b
mov r8d, ecx
movzx edx, ch
mov qword [rsp + 0x40], rdx
movzx edx, cl
mov qword [rsp + 0x70], rdx
mov r13d, ecx
mov edx, dword [r12 + r11*4 + 0x400]
xor edx, dword [r12 + r10*4]
mov r10, qword [rsp + 0x30]
xor edx, dword [r12 + r10*4 + 0x800]
xor edx, dword [r12 + r9*4 + 0xc00]
mov r14, rsi
xor edx, dword [rsi + 0x88]
xor eax, dword [r12 + r15*4 + 0x800]
mov rcx, qword [rsp + 0x38]
xor eax, dword [r12 + rcx*4 + 0xc00]
xor eax, dword [rsi + 0x8c]
shr r13d, 0x18
mov ecx, eax
shr ecx, 0x10
movzx r9d, cl
movzx ebp, dh
movzx edi, ah
movzx r10d, dl
mov r11d, edx
movzx r15d, al
shr eax, 0x18
shr edx, 0x10
movzx ecx, dl
mov ecx, dword [r12 + rcx*4 + 0x400]
xor ecx, dword [r12 + rax*4]
mov edx, dword [r12 + r9*4 + 0x400]
xor edx, dword [r12 + r13*4]
xor edx, dword [r12 + rbp*4 + 0x800]
movzx r9d, bl
mov ebp, ebx
movzx esi, bh
shr ebx, 0x18
shr r8d, 0x10
movzx eax, r8b
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rbx*4]
xor eax, dword [r12 + rdi*4 + 0x800]
shr r11d, 0x18
shr ebp, 0x10
movzx r8d, bpl
mov ebx, dword [r12 + r8*4 + 0x400]
xor ebx, dword [r12 + r11*4]
mov r8, qword [rsp + 0x40]
xor ebx, dword [r12 + r8*4 + 0x800]
xor ecx, dword [r12 + rsi*4 + 0x800]
xor edx, dword [r12 + r9*4 + 0xc00]
xor edx, dword [r14 + 0x90]
xor eax, dword [r12 + r10*4 + 0xc00]
xor eax, dword [r14 + 0x94]
xor ebx, dword [r12 + r15*4 + 0xc00]
xor ebx, dword [r14 + 0x98]
mov r8, qword [rsp + 0x70]
xor ecx, dword [r12 + r8*4 + 0xc00]
xor ecx, dword [r14 + 0x9c]
cmp dword [rsp + 0x48], 0xc
jb 0x1400676a8
mov r8d, edx
movzx esi, dh
mov qword [rsp + 0x30], rsi
mov r9d, edx
shr r9d, 0x18
mov r10d, ecx
shr r10d, 0x10
movzx r10d, r10b
mov r10d, dword [r12 + r10*4 + 0x400]
xor r10d, dword [r12 + r9*4]
movzx edx, dl
mov qword [rsp + 0x38], rdx
movzx r9d, al
mov esi, eax
movzx edx, ah
mov r13, rdx
mov edi, eax
movzx eax, bh
mov edx, r10d
xor edx, dword [r12 + rax*4 + 0x800]
xor edx, dword [r12 + r9*4 + 0xc00]
xor edx, dword [r14 + 0xa0]
shr edi, 0x18
shr r8d, 0x10
movzx ebp, ch
mov r11, r14
movzx r14d, bl
mov r10d, ebx
movzx r9d, cl
shr ecx, 0x18
shr ebx, 0x10
movzx eax, bl
lea rbx, [0x14017f6b0]
mov ebx, dword [rbx + rax*4 + 0x400]
lea rax, [0x14017f6b0]
xor ebx, dword [rax + rcx*4]
movzx eax, r8b
lea rcx, [0x14017f6b0]
mov eax, dword [rcx + rax*4 + 0x400]
lea rcx, [0x14017f6b0]
xor eax, dword [rcx + rdi*4]
lea rcx, [0x14017f6b0]
xor eax, dword [rcx + rbp*4 + 0x800]
lea rcx, [0x14017f6b0]
xor eax, dword [rcx + r14*4 + 0xc00]
xor eax, dword [r11 + 0xa4]
shr r10d, 0x18
shr esi, 0x10
movzx ecx, sil
mov r8d, edx
movzx esi, dh
mov qword [rsp + 0x40], rsi
movzx r15d, dl
mov r14d, edx
lea rsi, [0x14017f6b0]
mov ecx, dword [rsi + rcx*4 + 0x400]
lea rsi, [0x14017f6b0]
xor ecx, dword [rsi + r10*4]
lea r10, [0x14017f6b0]
mov rsi, qword [rsp + 0x30]
xor ecx, dword [r10 + rsi*4 + 0x800]
lea r10, [0x14017f6b0]
xor ecx, dword [r10 + r9*4 + 0xc00]
xor ecx, dword [r11 + 0xa8]
lea r9, [0x14017f6b0]
xor ebx, dword [r9 + r13*4 + 0x800]
lea rdx, [0x14017f6b0]
mov r9, qword [rsp + 0x38]
xor ebx, dword [rdx + r9*4 + 0xc00]
xor ebx, dword [r11 + 0xac]
shr r14d, 0x18
mov edx, ebx
shr edx, 0x10
movzx edx, dl
movzx ebp, ch
movzx esi, bh
movzx r9d, cl
mov r10d, ecx
movzx edi, bl
shr ebx, 0x18
shr ecx, 0x10
movzx ecx, cl
lea r12, [0x14017f6b0]
mov ecx, dword [r12 + rcx*4 + 0x400]
lea r12, [0x14017f6b0]
xor ecx, dword [r12 + rbx*4]
lea rbx, [0x14017f6b0]
mov edx, dword [rbx + rdx*4 + 0x400]
lea rbx, [0x14017f6b0]
xor edx, dword [rbx + r14*4]
lea rbx, [0x14017f6b0]
xor edx, dword [rbx + rbp*4 + 0x800]
movzx r14d, al
mov ebx, eax
movzx ebp, ah
mov r13d, eax
shr r13d, 0x18
shr r8d, 0x10
movzx eax, r8b
lea r8, [0x14017f6b0]
mov eax, dword [r8 + rax*4 + 0x400]
lea r8, [0x14017f6b0]
xor eax, dword [r8 + r13*4]
lea r8, [0x14017f6b0]
xor eax, dword [r8 + rsi*4 + 0x800]
shr r10d, 0x18
shr ebx, 0x10
movzx r8d, bl
lea rsi, [0x14017f6b0]
mov ebx, dword [rsi + r8*4 + 0x400]
lea r8, [0x14017f6b0]
xor ebx, dword [r8 + r10*4]
lea r8, [0x14017f6b0]
mov r10, qword [rsp + 0x40]
xor ebx, dword [r8 + r10*4 + 0x800]
lea r8, [0x14017f6b0]
xor ecx, dword [r8 + rbp*4 + 0x800]
lea r8, [0x14017f6b0]
xor edx, dword [r8 + r14*4 + 0xc00]
lea r14, [0x14017f6b0]
xor edx, dword [r11 + 0xb0]
xor eax, dword [r14 + r9*4 + 0xc00]
xor eax, dword [r11 + 0xb4]
xor ebx, dword [r14 + rdi*4 + 0xc00]
xor ebx, dword [r11 + 0xb8]
xor ecx, dword [r14 + r15*4 + 0xc00]
xor ecx, dword [r11 + 0xbc]
cmp dword [rsp + 0x48], 0xe
mov r12, r11
jb 0x1400676ab
mov r8d, edx
movzx esi, dh
mov qword [rsp + 0x30], rsi
movzx r9d, dl
mov qword [rsp + 0x38], r9
mov r10d, edx
shr r10d, 0x18
mov edx, ecx
shr edx, 0x10
movzx edx, dl
movzx r11d, al
mov esi, eax
movzx edi, ah
mov r13, rdi
mov edi, eax
mov edx, dword [r14 + rdx*4 + 0x400]
xor edx, dword [r14 + r10*4]
movzx eax, bh
xor edx, dword [r14 + rax*4 + 0x800]
xor edx, dword [r14 + r11*4 + 0xc00]
xor edx, dword [r12 + 0xc0]
shr edi, 0x18
shr r8d, 0x10
movzx eax, r8b
movzx ebp, ch
movzx r8d, bl
mov r11d, ebx
movzx r10d, cl
shr ecx, 0x18
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [r14 + rbx*4 + 0x400]
xor ebx, dword [r14 + rcx*4]
mov eax, dword [r14 + rax*4 + 0x400]
xor eax, dword [r14 + rdi*4]
xor eax, dword [r14 + rbp*4 + 0x800]
xor eax, dword [r14 + r8*4 + 0xc00]
xor eax, dword [r12 + 0xc4]
shr r11d, 0x18
shr esi, 0x10
movzx ecx, sil
mov r8d, edx
movzx esi, dh
mov qword [rsp + 0x40], rsi
movzx r15d, dl
mov r9, r12
mov r12, r14
mov r14d, edx
mov ecx, dword [r12 + rcx*4 + 0x400]
xor ecx, dword [r12 + r11*4]
mov rdx, qword [rsp + 0x30]
xor ecx, dword [r12 + rdx*4 + 0x800]
xor ecx, dword [r12 + r10*4 + 0xc00]
xor ecx, dword [r9 + 0xc8]
xor ebx, dword [r12 + r13*4 + 0x800]
mov rdx, qword [rsp + 0x38]
xor ebx, dword [r12 + rdx*4 + 0xc00]
xor ebx, dword [r9 + 0xcc]
shr r14d, 0x18
mov edx, ebx
shr edx, 0x10
movzx ebp, ch
movzx esi, bh
movzx edi, cl
mov r10d, ecx
movzx r11d, bl
shr ebx, 0x18
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r12 + rcx*4 + 0x400]
xor ecx, dword [r12 + rbx*4]
movzx edx, dl
mov edx, dword [r12 + rdx*4 + 0x400]
xor edx, dword [r12 + r14*4]
xor edx, dword [r12 + rbp*4 + 0x800]
movzx r14d, al
mov ebx, eax
movzx ebp, ah
mov r13d, eax
shr r13d, 0x18
shr r8d, 0x10
movzx eax, r8b
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + r13*4]
xor eax, dword [r12 + rsi*4 + 0x800]
shr r10d, 0x18
shr ebx, 0x10
movzx r8d, bl
mov ebx, dword [r12 + r8*4 + 0x400]
xor ebx, dword [r12 + r10*4]
mov r8, qword [rsp + 0x40]
xor ebx, dword [r12 + r8*4 + 0x800]
xor ecx, dword [r12 + rbp*4 + 0x800]
xor edx, dword [r12 + r14*4 + 0xc00]
xor edx, dword [r9 + 0xd0]
xor eax, dword [r12 + rdi*4 + 0xc00]
xor eax, dword [r9 + 0xd4]
xor ebx, dword [r12 + r11*4 + 0xc00]
xor ebx, dword [r9 + 0xd8]
xor ecx, dword [r12 + r15*4 + 0xc00]
mov r12, r9
xor ecx, dword [r9 + 0xdc]
jmp 0x1400676ab
mov r12, r14
movzx esi, bh
mov qword [rsp + 0x30], rsi
movzx r8d, bl
mov r9d, ebx
shr ebx, 0x10
movzx r10d, bl
movzx r11d, al
mov esi, eax
mov ebp, eax
movzx eax, ah
mov r14d, edx
mov r15d, edx
movzx ebx, dh
movzx edx, dl
mov r13d, ecx
shr r13d, 0x10
movzx r13d, r13b
lea rdi, [0x1401806b0]
movzx r13d, byte [r13 + rdi]
vmovd xmm0, r13d
shr esi, 0x18
vpinsrb xmm0, xmm0, byte [rsi + rdi], 4
movzx esi, ch
shr ebp, 0x10
movzx r13d, bpl
vpinsrb xmm0, xmm0, byte [r13 + rdi], 8
movzx r13d, cl
shr ecx, 0x18
vpinsrb xmm0, xmm0, byte [rcx + rdi], 0xc
shr r14d, 0x18
movzx ecx, byte [r14 + rdi]
vmovd xmm1, ecx
shr r15d, 0x10
movzx ecx, r15b
vpinsrb xmm1, xmm1, byte [rcx + rdi], 4
shr r9d, 0x18
vpinsrb xmm1, xmm1, byte [r9 + rdi], 8
vpinsrb xmm1, xmm1, byte [r10 + rdi], 0xc
mov rcx, qword [rsp + 0x30]
movzx ecx, byte [rcx + rdi]
vmovd xmm2, ecx
vpinsrb xmm2, xmm2, byte [rsi + rdi], 4
vpinsrb xmm2, xmm2, byte [rbx + rdi], 8
vpinsrb xmm2, xmm2, byte [rax + rdi], 0xc
movzx eax, byte [r11 + rdi]
vmovd xmm3, eax
vpinsrb xmm3, xmm3, byte [r8 + rdi], 4
vpinsrb xmm3, xmm3, byte [r13 + rdi], 8
vpinsrb xmm3, xmm3, byte [rdx + rdi], 0xc
vpshufb xmm1, xmm1, xmm7
vpslld xmm2, xmm2, 8
vpor xmm1, xmm1, xmm2
mov rax, qword [rsp + 0x48]
shl eax, 2
and eax, 0x7ffffff8
vpshufb xmm0, xmm0, xmm6
vpor xmm0, xmm1, xmm0
vpor xmm0, xmm0, xmm3
vpxor xmm0, xmm0, xmmword [r12 + rax*4]
vpshufb xmm0, xmm0, xmm8
mov rbp, qword [rsp + 0x78]
vmovdqu xmmword [rbp], xmm0
mov esi, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x88]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x58]
mov r13, qword [rsp + 0x80]
mov eax, r13d
xor eax, r15d
test al, 7
jne 0x140066850
test dil, 7
jne 0x140066850
mov rax, qword [r12 + 0x100]
xor qword [rbp], rax
mov rax, qword [r12 + 0x108]
xor qword [rbp + 8], rax
jmp 0x140066910
mov eax, 0xffffff1e
jmp 0x1400667d5