Function at 0x14018e140
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x168
vmovups xmmword [rsp + 0xc0], xmm6
vmovups xmmword [rsp + 0xd0], xmm7
vmovups xmmword [rsp + 0xe0], xmm8
vmovups xmmword [rsp + 0xf0], xmm9
vmovups xmmword [rsp + 0x100], xmm10
vmovups xmmword [rsp + 0x110], xmm11
vmovups xmmword [rsp + 0x120], xmm12
vmovups xmmword [rsp + 0x130], xmm13
vmovups xmmword [rsp + 0x140], xmm14
vmovups xmmword [rsp + 0x150], xmm15
vmovq xmm8, rcx
mov ecx, edx
vmovq xmm11, r9
vmovq rax, xmm8
mov rdx, qword [rax + 0x20]
mov eax, pe_nt_image_headers64
sarx r8d, eax, r8d
mov eax, r8d
neg eax
and eax, ecx
vmovq rcx, xmm8
or eax, r8d
mov r8d, 0x1f
mov byte [rcx + rdx], al
sub r8, rdx
lea rcx, [rcx + rdx + 1]
xor edx, edx
call sym.memset
vpxor xmm7, xmm7, xmm7
vmovq rax, xmm8
vmovdqu xmm6, xmm11
mov eax, dword [rax + 0x28]
mov dword [rsp + 0x38], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x2c]
mov dword [rsp + 0x40], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x30]
mov dword [rsp + 0x48], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x34]
mov dword [rsp + 0x50], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x28], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x3c]
mov dword [rsp + 0x30], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x34], eax
vmovq rax, xmm8
mov r10d, dword [rax + 0x44]
mov eax, dword [rax + 0x48]
mov dword [rsp + 0x3c], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x44], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x4c], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x54], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x58], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x5c]
mov dword [rsp + 0x5c], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x60]
mov dword [rsp + 0x68], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x64]
mov dword [rsp + 0xa8], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x68]
mov dword [rsp + 0x60], eax
vmovq rax, xmm8
mov dword [rsp + 0xac], 0
mov eax, dword [rax + 0x6c]
mov dword [rsp + 0x70], eax
vmovq rax, xmm8
mov ebp, dword [rax + 0x70]
mov eax, dword [rax + 0x74]
mov dword [rsp + 0x78], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x78]
mov dword [rsp + 0x88], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x7c]
mov dword [rsp + 0x90], eax
vmovq rax, xmm8
mov edi, dword [rax + 0x80]
mov eax, dword [rax + 0x84]
mov dword [rsp + 0xa4], edi
mov dword [rsp + 0x9c], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x88]
mov dword [rsp + 0x6c], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x8c]
mov dword [rsp + 0x74], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x90]
mov dword [rsp + 0x80], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x94]
mov dword [rsp + 0x84], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x98]
mov dword [rsp + 0x8c], eax
vmovq rax, xmm8
mov eax, dword [rax + 0x9c]
mov dword [rsp + 0x94], eax
vmovq rax, xmm8
mov eax, dword [rax + 0xa0]
mov dword [rsp + 0x98], eax
vmovq rax, xmm8
mov eax, dword [rax + 0xa4]
mov dword [rsp + 0xa0], eax
lea rax, [0x140367280]
vmovq xmm9, rax
lea rax, [0x1403671c0]
vmovq xmm10, rax
vmovq rax, xmm8
vmovd xmm13, dword [rax]
vmovd eax, xmm13
bswap eax
vmovd xmm13, eax
vmovq rax, xmm8
vmovd xmm12, dword [rax + 4]
vmovd eax, xmm12
bswap eax
vmovd xmm12, eax
vmovq rax, xmm8
vmovd xmm14, dword [rax + 8]
vmovd eax, xmm14
bswap eax
vmovd xmm14, eax
vmovq rax, xmm8
vmovd xmm15, dword [rax + 0xc]
vmovd eax, xmm15
bswap eax
vmovd xmm15, eax
vmovq rax, xmm8
vmovd xmm16, dword [rax + 0x10]
vmovd eax, xmm16
bswap eax
vmovd xmm16, eax
vmovq rax, xmm8
mov esi, dword [rax + 0x14]
bswap esi
mov ebx, dword [rax + 0x18]
bswap ebx
mov r13d, dword [rax + 0x1c]
bswap r13d
mov eax, dword [rsp + 0x44]
mov r9d, dword [rsp + 0x40]
mov dword [rsp + 0x2c], r13d
mov ecx, dword [rsp + 0x74]
mov r14d, dword [rsp + 0x8c]
mov edx, dword [rsp + 0x58]
mov r15d, dword [rsp + 0x68]
mov r11d, dword [rsp + 0x34]
xor r9d, eax
mov eax, dword [rsp + 0x70]
mov r12d, dword [rsp + 0x94]
xor r11d, r15d
mov r15d, dword [rsp + 0xa8]
xor eax, ecx
mov ecx, dword [rsp + 0x88]
xor r9d, eax
mov eax, dword [rsp + 0x28]
xor ecx, r14d
mov r14d, dword [rsp + 0x9c]
xor eax, edx
mov r13d, ecx
mov ecx, dword [rsp + 0x5c]
mov edx, dword [rsp + 0x98]
xor r13d, eax
mov eax, dword [rsp + 0x30]
xor edx, edi
mov edi, dword [rsp + 0x6c]
xor eax, ecx
mov ecx, dword [rsp + 0x90]
xor r11d, edx
mov edx, r15d
xor edx, r10d
xor ecx, r12d
mov r12d, dword [rsp + 0xa0]
xor ecx, eax
mov eax, dword [rsp + 0x84]
xor r14d, r12d
mov r12d, dword [rsp + 0x50]
xor edx, r14d
mov r14d, dword [rsp + 0x54]
xor r12d, r14d
mov r14d, dword [rsp + 0x78]
xor r14d, eax
mov eax, dword [rsp + 0x48]
xor r12d, r14d
mov r14d, dword [rsp + 0x4c]
xor r12d, edx
xor eax, r14d
mov r14d, dword [rsp + 0x80]
mov r8d, eax
xor r14d, ebp
mov eax, r14d
xor eax, r8d
mov r8d, dword [rsp + 0x38]
mov r14d, eax
mov eax, dword [rsp + 0x3c]
xor r14d, edx
xor r8d, eax
mov eax, dword [rsp + 0x60]
xor eax, edi
mov edi, r10d
xor eax, r8d
mov r8d, dword [rsp + 0x38]
xor eax, edx
xor r8d, edx
mov dword [rsp + 0x38], r8d
mov r8d, dword [rsp + 0x40]
mov r10d, dword [rsp + 0x3c]
xor r8d, eax
vmovd xmm28, r8d
mov r8d, dword [rsp + 0x48]
xor r8d, r9d
vmovd xmm20, r8d
mov r8d, dword [rsp + 0x50]
xor r8d, r14d
vmovd xmm22, r8d
mov r8d, dword [rsp + 0x28]
xor r8d, r12d
vmovd xmm27, r8d
mov r8d, dword [rsp + 0x30]
xor r8d, r13d
xor r10d, edx
xor ebp, r9d
xor r15d, r11d
mov dword [rsp + 0x3c], r10d
mov r10d, dword [rsp + 0x44]
mov dword [rsp + 0x30], r8d
mov r8d, dword [rsp + 0x34]
mov dword [rsp + 0x28], r15d
xor edi, r11d
mov r15d, dword [rsp + 0x60]
vmovd xmm0, edi
mov edi, dword [rsp + 0xa4]
xor r10d, eax
xor r8d, ecx
vmovd xmm29, r10d
mov r10d, dword [rsp + 0x4c]
mov dword [rsp + 0x34], r8d
mov r8d, dword [rsp + 0x70]
xor r15d, edx
xor edi, ecx
xor r10d, r9d
xor r8d, eax
mov dword [rsp + 0x40], r10d
mov r10d, dword [rsp + 0x54]
mov dword [rsp + 0x54], r8d
mov r8d, dword [rsp + 0x78]
xor r10d, r14d
xor r8d, r14d
mov dword [rsp + 0x44], r10d
mov r10d, dword [rsp + 0x58]
mov dword [rsp + 0x58], ebp
mov ebp, dword [rsp + 0x88]
vmovd xmm31, r8d
xor ebp, r12d
xor r10d, r12d
vmovd xmm23, ebp
mov ebp, dword [rsp + 0x90]
vmovd xmm24, r10d
mov r10d, dword [rsp + 0x5c]
xor ebp, r13d
xor r10d, r13d
mov dword [rsp + 0x4c], ebp
mov ebp, dword [rsp + 0x9c]
mov dword [rsp + 0x48], r10d
mov r10d, dword [rsp + 0x68]
xor ebp, r11d
xor r10d, ecx
mov r8d, ebp
mov ebp, dword [rsp + 0x6c]
xor edx, ebp
mov ebp, dword [rsp + 0x74]
xor ebp, eax
vmovd xmm5, ebp
mov ebp, dword [rsp + 0x80]
mov eax, dword [rsp + 0x84]
xor eax, r14d
xor r9d, ebp
mov r14d, dword [rsp + 0x28]
mov ebp, dword [rsp + 0x3c]
vmovd xmm4, eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x50], r9d
xor ebp, r8d
xor eax, r12d
mov r12d, dword [rsp + 0x94]
mov r9d, ebp
mov ebp, r14d
vmovd xmm11, eax
mov eax, dword [rsp + 0x98]
xor r12d, r13d
mov r13d, dword [rsp + 0x2c]
xor eax, ecx
mov ecx, dword [rsp + 0xa0]
mov dword [rsp + 0x5c], r12d
mov dword [rsp + 0x68], eax
xor r11d, ecx
mov ecx, r15d
xor ecx, r11d
mov dword [rsp + 0x60], ecx
mov ecx, r12d
mov r12d, dword [rsp + 0x4c]
xor ecx, edi
vmovd xmm2, ecx
mov ecx, eax
mov eax, dword [rsp + 0x34]
xor ecx, r8d
vmovd xmm3, ecx
mov ecx, dword [rsp + 0x38]
xor r12d, r10d
xor edi, r14d
vmovd xmm25, edi
vmovd edi, xmm15
xor r15d, r8d
vmovd xmm26, r12d
xor edi, r13d
vmovd r12d, xmm13
xor ebp, edi
xor r12d, r13d
xor ecx, r14d
mov r14d, dword [rsp + 0x44]
vmovd xmm19, ebp
vmovd ebp, xmm27
vmovd xmm21, ecx
mov ecx, dword [rsp + 0x48]
xor ebp, r14d
vmovd r14d, xmm19
xor r14d, ebp
vmovd ebp, xmm16
xor eax, ecx
vmovd xmm19, r14d
mov r14d, dword [rsp + 0x30]
mov ecx, eax
vmovd eax, xmm0
xor r10d, eax
vmovd eax, xmm14
xor ecx, esi
xor r10d, ebx
xor eax, r13d
vmovd xmm17, ecx
mov dword [rsp + 0x6c], r10d
mov r10d, r13d
mov r13d, dword [rsp + 0x54]
mov ecx, eax
xor ebp, r14d
vmovd r14d, xmm24
xor r10d, ebx
xor ecx, ebx
xor ebp, r14d
mov r14d, dword [rsp + 0x44]
vmovd xmm18, ebp
vmovd ebp, xmm12
xor ebp, ebx
vmovd xmm1, ebp
mov ebp, r9d
mov r9d, dword [rsp + 0x58]
xor ebp, ebx
vmovd xmm30, ebp
vmovd ebp, xmm29
xor ebp, r10d
xor ebp, r15d
mov r15d, dword [rsp + 0x40]
mov dword [rsp + 0x70], ebp
mov ebp, r13d
xor r15d, r12d
xor ebp, r15d
mov r15d, r9d
mov dword [rsp + 0x74], ebp
vmovd ebp, xmm1
xor r15d, r8d
xor r8d, ecx
xor r14d, ebp
vmovd ebp, xmm31
xor r15d, r14d
vmovd r14d, xmm24
xor r14d, ebp
mov ebp, dword [rsp + 0x48]
mov dword [rsp + 0x80], r15d
vmovd r15d, xmm23
xor r8d, r14d
vmovd r14d, xmm16
rorx r8d, r8d, 0x1e
xor ebp, edi
xor ebp, r15d
vmovd r15d, xmm26
xor r15d, r14d
mov r14d, dword [rsp + 0x60]
vmovd xmm26, r15d
vmovd r15d, xmm25
xor r15d, esi
vmovd xmm25, r15d
mov r15d, edx
xor r14d, esi
xor r15d, r11d
vmovd xmm24, r14d
mov r14d, ebx
xor r14d, esi
xor r14d, r15d
mov r15d, r13d
mov r13d, r9d
vmovd r9d, xmm12
xor r15d, r14d
xor r13d, r10d
mov r14d, r12d
mov dword [rsp + 0x60], r15d
vmovd r15d, xmm5
xor r14d, esi
xor r15d, r13d
mov r13d, dword [rsp + 0x50]
mov r10d, r14d
vmovd r14d, xmm23
mov dword [rsp + 0x78], r15d
vmovd r15d, xmm31
xor r13d, r11d
xor r10d, r13d
vmovd r13d, xmm1
vmovd xmm1, r8d
vmovd r8d, xmm26
xor r15d, r10d
xor r13d, esi
rorx r8d, r8d, 0x1e
vmovd xmm31, r15d
vmovd r15d, xmm4
vmovd xmm26, r8d
vmovd r8d, xmm25
xor r14d, r15d
mov r15d, dword [rsp + 0x4c]
rorx r8d, r8d, 0x1e
mov r10d, r14d
vmovd xmm25, r8d
vmovd r14d, xmm16
xor r10d, r13d
mov r13d, dword [rsp + 0x2c]
xor r10d, r11d
xor ecx, r15d
rorx r8d, r10d, 0x1d
vmovd r15d, xmm11
xor ecx, r15d
vmovd r15d, xmm2
vmovd xmm2, r8d
vmovd r8d, xmm0
xor edx, r8d
vmovd r8d, xmm13
xor edi, r15d
vmovd r15d, xmm3
xor edx, r8d
vmovd r8d, xmm21
xor r15d, r14d
rorx r14d, ebp, 0x1e
xor r8d, r13d
rorx ebp, edi, 0x1d
mov edi, dword [rsp + 0x28]
rorx ecx, ecx, 0x1d
mov r10, r8
vmovd r8d, xmm28
rorx r15d, r15d, 0x1d
vmovd xmm3, r14d
shl r10, 0x20
xor r12d, r8d
vmovd r8d, xmm0
or rdx, r10
mov r10d, dword [rsp + 0x3c]
xor r10d, edi
xor r12d, r10d
mov r10d, dword [rsp + 0x38]
shl r12, 0x20
xor r10d, r8d
vmovd r8d, xmm5
vmovd xmm5, ecx
xor r8d, r9d
vmovd r9d, xmm20
xor r10d, r8d
vmovd r8d, xmm12
or r12, r10
mov r10d, dword [rsp + 0x50]
xor r8d, r9d
vmovd r9d, xmm29
xor r8d, r9d
vmovd r9d, xmm14
shl r8, 0x20
xor r10d, r9d
mov r9d, r10d
vmovd r10d, xmm28
xor r9d, r10d
mov r10d, dword [rsp + 0x40]
or r9, r8
vmovd r8d, xmm22
xor eax, r8d
vmovd r8d, xmm0
xor r10d, edi
vmovd edi, xmm4
xor eax, r10d
vmovd r10d, xmm20
xor r10d, r8d
vmovd r8d, xmm15
shl rax, 0x20
xor r8d, edi
vmovd edi, xmm22
xor r10d, r8d
vmovd r8d, xmm0
vmovd xmm0, ebp
or rax, r10
vmovd r10d, xmm16
xor r10d, r8d
vmovd r8d, xmm11
xor r8d, edi
xor r8d, r10d
vmovd r10d, xmm19
rorx r10d, r10d, 0x1f
shl r10, 0x20
or r8, r10
mov r10d, dword [rsp + 0x5c]
xor r10d, esi
vmovd esi, xmm27
xor r10d, esi
vmovd esi, xmm18
rorx edi, esi, 0x1f
mov esi, dword [rsp + 0x30]
shl rdi, 0x20
or r10, rdi
mov edi, dword [rsp + 0x68]
xor edi, esi
vmovd esi, xmm17
xor ebx, edi
rorx edi, esi, 0x1f
lea rsi, [0x140367200]
shl rdi, 0x20
mov rcx, rsi
or rbx, rdi
mov edi, dword [rsp + 0x34]
xor r11d, edi
rorx edi, dword [rsp + 0x6c], 0x1f
shl rdi, 0x20
xor r11d, r13d
or r11, rdi
lea rdi, [0x140367240]
mov r13, r11
nop dword [rax]
mov rsi, rdx
mov r11, r10
xor r9, rax
xor r13, r8
or rsi, r12
or r11, rbx
xor rsi, rax
xor r11, r8
and rax, rdx
and r8, r10
xor r12, rax
xor rbx, r8
xor rax, r9
xor r8, r13
and r9, rsi
and r13, r11
not r12
not rbx
xor r9, r12
xor r13, rbx
or r12, rax
or rbx, r8
xor rdx, r12
xor r8, r13
xor r10, rbx
and r13, rbx
xor r8, rdx
mov rbp, rbx
rorx r14d, edx, 0x1e
shr rdx, 0x20
mov rbx, r8
rorx edx, edx, 0x1e
xor rax, r9
xor rsi, r12
shr rbx, 0x20
and r9, r12
xor r14d, r8d
rorx r12d, r8d, 0x12
xor edx, ebx
rorx ebx, ebx, 0x12
xor r12d, r14d
rorx r8d, r14d, 0x16
xor ebx, edx
rorx edx, edx, 0x16
not rsi
xor edx, ebx
xor r8d, r12d
xor r10, rsi
rorx r12d, r12d, 0x1f
shl rdx, 0x20
xor r11, rbp
or rdx, r8
rorx r8d, ebx, 0x1f
mov rbx, r10
xor r11, r9
shl r8, 0x20
shr rbx, 0x20
not r11
or r8, r12
rorx r12d, esi, 0x1e
shr rsi, 0x20
rorx esi, esi, 0x1e
xor r12d, r10d
rorx r10d, r10d, 0x12
xor esi, ebx
rorx ebx, ebx, 0x12
xor r10d, r12d
rorx r12d, r12d, 0x16
xor ebx, esi
rorx esi, esi, 0x16
xor r12d, r10d
rorx r10d, r10d, 0x1f
xor esi, ebx
rorx ebx, ebx, 0x1f
shl rsi, 0x20
shl rbx, 0x20
or r12, rsi
or r10, rbx
rorx esi, r9d, 0x1e
mov rbx, r11
shr r9, 0x20
shr rbx, 0x20
xor esi, r11d
rorx r11d, r11d, 0x12
rorx r9d, r9d, 0x1e
xor r11d, esi
rorx esi, esi, 0x16
xor r9d, ebx
rorx ebx, ebx, 0x12
xor esi, r11d
rorx r11d, r11d, 0x1f
xor ebx, r9d
rorx r9d, r9d, 0x16
xor r9d, ebx
rorx ebx, ebx, 0x1f
shl r9, 0x20
shl rbx, 0x20
or r9, rsi
or rbx, r11
xor r13, rax
rorx esi, eax, 0x1e
mov r11, r13
shr rax, 0x20
xor esi, r13d
rorx r13d, r13d, 0x12
shr r11, 0x20
rorx eax, eax, 0x1e
xor r13d, esi
rorx esi, esi, 0x16
xor eax, r11d
rorx r11d, r11d, 0x12
xor esi, r13d
xor rdx, qword [rdi]
xor r11d, eax
rorx eax, eax, 0x16
rorx r13d, r13d, 0x1f
xor r8, qword [rcx]
xor eax, r11d
rorx r11d, r11d, 0x1f
add rdi, 8
shl rax, 0x20
shl r11, 0x20
add rcx, 8
or rax, rsi
vmovq rsi, xmm9
or r13, r11
cmp rdi, rsi
jne 0x14018ead0
mov rdi, rdx
mov dword [rsp + 0x38], edx
mov r11, r13
mov r13, r9
shr rdi, 0x20
shr r13, 0x20
mov dword [rsp + 0x48], r9d
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x3c], edi
xor edi, edx
mov rdx, r12
mov dword [rsp + 0x4c], r13d
shr rdx, 0x20
vmovd xmm13, edi
mov dword [rsp + 0x30], r10d
shr r10, 0x20
mov edi, edx
mov qword [rsp + 0xb0], r10
mov dword [rsp + 0x5c], r10d
mov r10d, r11d
xor edi, r12d
shr r11, 0x20
vmovd r14d, xmm3
vmovd ecx, xmm5
vmovd xmm4, edi
mov edi, r13d
vmovq r13, xmm24
mov qword [rsp + 0xb8], r11
xor edi, r9d
mov r9, rax
shl r13, 0x20
mov dword [rsp + 0xa8], r11d
shr r9, 0x20
vmovd xmm12, edi
mov r11, qword [rsp + 0x78]
vmovd ebp, xmm0
mov edi, r9d
mov dword [rsp + 0x54], r9d
mov r9d, dword [rsp + 0x70]
mov dword [rsp + 0x44], edx
xor edi, eax
vmovd eax, xmm30
mov rdx, r8
mov dword [rsp + 0x28], r8d
or r13, rax
mov rax, qword [rsp + 0x60]
vmovd xmm11, edi
mov r8d, r14d
mov edi, dword [rsp + 0x80]
shl r11, 0x20
shl rcx, 0x20
mov r14, rbp
or rcx, r8
shl r14, 0x20
vmovd r8d, xmm26
shr rdx, 0x20
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x34], ebx
vmovd r12d, xmm1
shr rbx, 0x20
shl rax, 0x20
or r14, r8
shl r15, 0x20
vmovd r8d, xmm25
or rax, r9
mov r9d, dword [rsp + 0x74]
or r15, r8
mov dword [rsp + 0x58], edx
mov dword [rsp + 0x68], ebx
lea r8, [0x140367180]
lea rsi, [0x140367140]
mov dword [rsp + 0x2c], r10d
mov qword [rsp + 0x60], rdx
or r11, r9
vmovq r9, xmm31
shl r9, 0x20
or r9, rdi
vmovq rdi, xmm2
shl rdi, 0x20
or r12, rdi
mov rdi, r13
nop dword [rax + rax]
mov r13, rdi
xor r11, r9
xor r15, r12
or r13, rax
xor r13, r9
and r9, rdi
xor rax, r9
xor r9, r11
and r11, r13
mov rbp, rax
mov rax, rdi
mov rdi, r15
not rbp
xor r11, rbp
or rbp, r9
xor rax, rbp
xor r9, r11
xor r13, rbp
and r11, rbp
mov rbp, rcx
rorx edx, eax, 0x1e
not r13
or rbp, r14
xor rbp, r12
and r12, rcx
xor r14, r12
and rdi, rbp
xor r12, r15
not r14
xor rdi, r14
or r14, r12
xor r12, rdi
xor rcx, r14
and rdi, r14
xor r12, rax
shr rax, 0x20
mov r15, r12
rorx eax, eax, 0x1e
xor edx, r12d
rorx r10d, r12d, 0x12
shr r15, 0x20
xor r10d, edx
rorx r12d, edx, 0x16
xor eax, r15d
rorx r15d, r15d, 0x12
xor r15d, eax
rorx eax, eax, 0x16
xor eax, r15d
xor r12d, r10d
xor rcx, r13
xor rbp, r14
shl rax, 0x20
xor rbp, r11
or rax, r12
rorx r12d, r15d, 0x1f
mov r15, rcx
not rbp
mov rdx, rax
shl r12, 0x20
rorx eax, r10d, 0x1f
shr r15, 0x20
or r12, rax
rorx eax, r13d, 0x1e
shr r13, 0x20
mov r14, rbp
rorx r13d, r13d, 0x1e
xor eax, ecx
rorx ecx, ecx, 0x12
shr r14, 0x20
xor r13d, r15d
rorx r15d, r15d, 0x12
xor ecx, eax
rorx eax, eax, 0x16
xor r15d, r13d
rorx r13d, r13d, 0x16
xor eax, ecx
rorx ecx, ecx, 0x1f
xor r13d, r15d
rorx r15d, r15d, 0x1f
shl r13, 0x20
shl r15, 0x20
or rax, r13
rorx r13d, r11d, 0x1e
shr r11, 0x20
or rcx, r15
rorx r11d, r11d, 0x1e
xor r13d, ebp
rorx ebp, ebp, 0x12
xor r11d, r14d
rorx r14d, r14d, 0x12
xor ebp, r13d
rorx r13d, r13d, 0x16
xor r14d, r11d
rorx r11d, r11d, 0x16
xor r13d, ebp
rorx ebp, ebp, 0x1f
xor r11d, r14d
rorx r14d, r14d, 0x1f
shl r11, 0x20
shl r14, 0x20
or r11, r13
or r14, rbp
rorx r13d, r9d, 0x1e
xor rdi, r9
xor r13d, edi
mov rbp, rdi
rorx edi, edi, 0x12
shr r9, 0x20
xor edi, r13d
rorx r13d, r13d, 0x16
shr rbp, 0x20
rorx r9d, r9d, 0x1e
xor r13d, edi
rorx r15d, edi, 0x1f
mov rdi, qword [r8]
xor r9d, ebp
rorx ebp, ebp, 0x12
add r8, 8
xor r12, qword [rsi]
add rsi, 8
xor ebp, r9d
rorx r9d, r9d, 0x16
xor r9d, ebp
rorx ebp, ebp, 0x1f
shl r9, 0x20
shl rbp, 0x20
xor rdi, rdx
vmovq rdx, xmm10
or r9, r13
or r15, rbp
cmp r8, rdx
jne 0x14018ee20
mov r8, rdi
mov rsi, rax
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x60], edi
shr rsi, 0x20
shr r8, 0x20
mov dword [rsp + 0x70], eax
mov ebp, r11d
mov dword [rsp + 0x6c], r8d
xor r8d, edi
mov edi, esi
mov dword [rsp + 0x74], esi
xor edi, eax
mov rax, r11
mov dword [rsp + 0x78], r9d
mov r13, r12
shr rax, 0x20
vmovd xmm1, edi
mov edi, dword [rsp + 0xac]
mov rsi, r15
mov dword [rsp + 0x80], eax
xor eax, r11d
mov r11, r9
shr r13, 0x20
shr r11, 0x20
vmovd xmm5, eax
mov rax, rcx
shr rsi, 0x20
mov dword [rsp + 0x84], r11d
xor r9d, r11d
mov r11, r14
shr rax, 0x20
shr r11, 0x20
mov r10d, dword [rsp + 0x2c]
mov dword [rsp + 0x88], r12d
mov dword [rsp + 0x8c], r13d
mov dword [rsp + 0x90], ecx
mov dword [rsp + 0x94], eax
mov dword [rsp + 0xa4], r14d
mov dword [rsp + 0x98], r11d
mov dword [rsp + 0x9c], r15d
mov dword [rsp + 0xa0], esi
cmp edi, 1
je 0x14018f110
cmp edi, 2
je 0x14018f1e0
vmovq rax, xmm8
mov dword [rsp + 0xac], 1
mov edi, r14d
vmovdqu8 ymmword [rax], ymm7
jmp 0x14018e3c7
vmovd edi, xmm13
xor edi, r8d
mov r8d, edi
bswap r8d
vmovq rdi, xmm6
mov dword [rdi], r8d
vmovd r8d, xmm4
vmovd edi, xmm1
xor r8d, edi
bswap r8d
vmovq rdi, xmm6
mov dword [rdi + 4], r8d
vmovd r8d, xmm12
vmovd edi, xmm5
xor r8d, edi
bswap r8d
vmovq rdi, xmm6
mov dword [rdi + 8], r8d
vmovd r8d, xmm11
xor r8d, r9d
bswap r8d
mov dword [rdi + 0xc], r8d
mov edi, dword [rsp + 0x28]
mov r8d, r13d
xor r8d, r12d
xor edx, edi
xor edx, r8d
bswap edx
vmovq rdi, xmm6
xor eax, ecx
mov dword [rdi + 0x10], edx
mov edx, dword [rsp + 0xb0]
mov edi, dword [rsp + 0x30]
xor edx, edi
xor eax, edx
bswap eax
vmovq rcx, xmm6
xor r11d, r14d
mov dword [rcx + 0x14], eax
mov eax, dword [rsp + 0x34]
xor ebx, eax
xor ebx, r11d
bswap ebx
mov r11d, dword [rsp + 0xb8]
xor esi, r15d
mov dword [rcx + 0x18], ebx
xor r11d, r10d
xor r11d, esi
bswap r11d
mov dword [rcx + 0x1c], r11d
mov dword [rsp + 0xac], 2
mov edi, r14d
jmp 0x14018e3c7
vmovd xmm0, r9d
vmovd r9d, xmm13
vmovdqu xmm2, xmm11
vmovd eax, xmm1
xor r9d, r8d
bswap r9d
vmovq rcx, xmm6
mov dword [rcx + 0x20], r9d
vmovd ecx, xmm4
xor ecx, eax
mov eax, ecx
bswap eax
vmovq rcx, xmm6
vmovd edx, xmm12
mov dword [rcx + 0x24], eax
vmovd eax, xmm5
xor edx, eax
bswap edx
vmovd r10d, xmm2
vmovd eax, xmm0
mov dword [rcx + 0x28], edx
xor r10d, eax
bswap r10d
mov dword [rcx + 0x2c], r10d
vzeroupper
vmovups xmm6, xmmword [rsp + 0xc0]
vmovups xmm7, xmmword [rsp + 0xd0]
vmovups xmm8, xmmword [rsp + 0xe0]
vmovups xmm9, xmmword [rsp + 0xf0]
vmovups xmm10, xmmword [rsp + 0x100]
vmovups xmm11, xmmword [rsp + 0x110]
vmovups xmm12, xmmword [rsp + 0x120]
vmovups xmm13, xmmword [rsp + 0x130]
vmovups xmm14, xmmword [rsp + 0x140]
vmovups xmm15, xmmword [rsp + 0x150]
add rsp, 0x168
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret