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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push r15
cmp dword [rcx + 0x88], 0x10
lea r15, [0x180000000]
mov r10d, dword [r8]
mov rdi, r9
mov r11d, dword [r8 + 4]
mov rsi, r8
bswap r10d
bswap r11d
mov r14, rdx
mov rbx, rcx
jne 0x180033cdb
mov edx, dword [rcx + 0x40]
mov r9d, dword [rcx + 0x84]
add edx, r11d
mov r8d, edx
mov ecx, r9d
neg ecx
and cl, 0x1f
shr r8, cl
mov ecx, r9d
shl edx, cl
mov eax, edx
or r8, rax
mov rax, r8
shr rax, 0x10
movzx ecx, al
mov rax, r8
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
xor edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r8
shr rax, 8
movzx ecx, al
movzx eax, r8b
sub edx, dword [r15 + rcx*4 + 0xd2560]
add edx, dword [r15 + rax*4 + 0xd2960]
mov eax, dword [rbx + 0x3c]
xor r10d, edx
mov edx, dword [rbx + 0x80]
sub eax, r10d
mov r8d, eax
mov ecx, edx
mov r9d, eax
neg ecx
and cl, 0x1f
shr r9, cl
mov ecx, edx
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
add edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
xor edx, dword [r15 + rcx*4 + 0xd2560]
sub edx, dword [r15 + rax*4 + 0xd2960]
mov ecx, dword [rbx + 0x7c]
xor r11d, edx
neg ecx
mov eax, r11d
xor eax, dword [rbx + 0x38]
and cl, 0x1f
mov r9d, eax
mov r8d, eax
shr r9, cl
mov ecx, dword [rbx + 0x7c]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx edx, al
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov r8d, dword [r15 + rcx*4 + 0xd2560]
sub r8d, dword [r15 + rdx*4 + 0xd2160]
add r8d, dword [r15 + rax*4 + 0xd1d60]
movzx eax, r9b
xor r8d, dword [r15 + rax*4 + 0xd2960]
xor r10d, r8d
mov r8d, dword [rbx + 0x34]
add r8d, r10d
mov ecx, dword [rbx + 0x78]
neg ecx
mov r9d, r8d
and cl, 0x1f
shr r9, cl
mov ecx, dword [rbx + 0x78]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
xor edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
sub edx, dword [r15 + rcx*4 + 0xd2560]
add edx, dword [r15 + rax*4 + 0xd2960]
xor r11d, edx
mov eax, dword [rbx + 0x30]
mov ecx, dword [rbx + 0x74]
sub eax, r11d
mov r8d, eax
neg ecx
mov r9d, eax
and cl, 0x1f
shr r9, cl
mov ecx, dword [rbx + 0x74]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
add edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
xor edx, dword [r15 + rcx*4 + 0xd2560]
sub edx, dword [r15 + rax*4 + 0xd2960]
mov ecx, dword [rbx + 0x70]
xor r10d, edx
neg ecx
mov eax, r10d
xor eax, dword [rbx + 0x2c]
and cl, 0x1f
mov r8d, eax
mov r9d, eax
shr r9, cl
mov ecx, dword [rbx + 0x70]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx edx, al
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov r8d, dword [r15 + rcx*4 + 0xd2560]
sub r8d, dword [r15 + rdx*4 + 0xd2160]
add r8d, dword [r15 + rax*4 + 0xd1d60]
mov ecx, dword [rbx + 0x6c]
neg ecx
movzx eax, r9b
and cl, 0x1f
xor r8d, dword [r15 + rax*4 + 0xd2960]
xor r11d, r8d
mov r8d, dword [rbx + 0x28]
add r8d, r11d
mov r9d, r8d
shr r9, cl
mov ecx, dword [rbx + 0x6c]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
xor edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
sub edx, dword [r15 + rcx*4 + 0xd2560]
add edx, dword [r15 + rax*4 + 0xd2960]
mov eax, dword [rbx + 0x24]
xor r10d, edx
mov ecx, dword [rbx + 0x68]
sub eax, r10d
mov r8d, eax
mov r9d, eax
neg ecx
and cl, 0x1f
shr r9, cl
mov ecx, dword [rbx + 0x68]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
add edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
xor edx, dword [r15 + rcx*4 + 0xd2560]
sub edx, dword [r15 + rax*4 + 0xd2960]
mov ecx, dword [rbx + 0x64]
xor r11d, edx
neg ecx
mov eax, r11d
xor eax, dword [rbx + 0x20]
and cl, 0x1f
mov r8d, eax
mov r9d, eax
shr r9, cl
mov ecx, dword [rbx + 0x64]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx edx, al
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov r8d, dword [r15 + rcx*4 + 0xd2560]
sub r8d, dword [r15 + rdx*4 + 0xd2160]
add r8d, dword [r15 + rax*4 + 0xd1d60]
mov ecx, dword [rbx + 0x60]
neg ecx
movzx eax, r9b
and cl, 0x1f
xor r8d, dword [r15 + rax*4 + 0xd2960]
xor r10d, r8d
mov r8d, dword [rbx + 0x1c]
add r8d, r10d
mov r9d, r8d
shr r9, cl
mov ecx, dword [rbx + 0x60]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
xor edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
sub edx, dword [r15 + rcx*4 + 0xd2560]
add edx, dword [r15 + rax*4 + 0xd2960]
mov eax, dword [rbx + 0x18]
xor r11d, edx
mov ecx, dword [rbx + 0x5c]
sub eax, r11d
neg ecx
mov r9d, eax
and cl, 0x1f
mov r8d, eax
shr r9, cl
mov ecx, dword [rbx + 0x5c]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
add edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
xor edx, dword [r15 + rcx*4 + 0xd2560]
sub edx, dword [r15 + rax*4 + 0xd2960]
mov ecx, dword [rbx + 0x58]
xor r10d, edx
neg ecx
mov eax, r10d
xor eax, dword [rbx + 0x14]
and cl, 0x1f
mov r8d, eax
mov r9d, eax
shr r9, cl
mov ecx, dword [rbx + 0x58]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx edx, al
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov r8d, dword [r15 + rcx*4 + 0xd2560]
sub r8d, dword [r15 + rdx*4 + 0xd2160]
add r8d, dword [r15 + rax*4 + 0xd1d60]
mov ecx, dword [rbx + 0x54]
neg ecx
movzx eax, r9b
and cl, 0x1f
xor r8d, dword [r15 + rax*4 + 0xd2960]
xor r11d, r8d
mov r8d, dword [rbx + 0x10]
add r8d, r11d
mov r9d, r8d
shr r9, cl
mov ecx, dword [rbx + 0x54]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
xor edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
sub edx, dword [r15 + rcx*4 + 0xd2560]
add edx, dword [r15 + rax*4 + 0xd2960]
mov eax, dword [rbx + 0xc]
xor r10d, edx
mov ecx, dword [rbx + 0x50]
sub eax, r10d
neg ecx
mov r9d, eax
and cl, 0x1f
mov r8d, eax
shr r9, cl
mov ecx, dword [rbx + 0x50]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
add edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
xor edx, dword [r15 + rcx*4 + 0xd2560]
sub edx, dword [r15 + rax*4 + 0xd2960]
mov ecx, dword [rbx + 0x4c]
xor r11d, edx
neg ecx
mov eax, r11d
xor eax, dword [rbx + 8]
and cl, 0x1f
mov r9d, eax
mov r8d, eax
shr r9, cl
mov ecx, dword [rbx + 0x4c]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx edx, al
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov r8d, dword [r15 + rcx*4 + 0xd2560]
sub r8d, dword [r15 + rdx*4 + 0xd2160]
add r8d, dword [r15 + rax*4 + 0xd1d60]
mov ecx, dword [rbx + 0x48]
movzx eax, r9b
neg ecx
and cl, 0x1f
xor r8d, dword [r15 + rax*4 + 0xd2960]
xor r10d, r8d
mov r8d, dword [rbx + 4]
add r8d, r10d
mov r9d, r8d
shr r9, cl
mov ecx, dword [rbx + 0x48]
shl r8d, cl
mov eax, r8d
or r9, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 0x18
mov edx, dword [r15 + rcx*4 + 0xd2160]
xor edx, dword [r15 + rax*4 + 0xd1d60]
mov rax, r9
shr rax, 8
movzx ecx, al
movzx eax, r9b
sub edx, dword [r15 + rcx*4 + 0xd2560]
add edx, dword [r15 + rax*4 + 0xd2960]
xor r11d, edx
test rdi, rdi
je 0x1800341a9
mov eax, dword [rdi]
bswap eax
xor r11d, eax
mov eax, dword [rdi + 4]
bswap eax
xor r10d, eax
mov rax, qword [rsi]
mov qword [rdi], rax
mov rbx, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
bswap r11d
bswap r10d
mov dword [r14], r11d
mov dword [r14 + 4], r10d
mov r14, qword [rsp + 0x28]
pop r15
ret