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

Disassembly:
push rbp
push rbx
push rsi
mov rbp, rsp
sub rsp, 0x40
mov rbx, qword [rcx + 8]
mov rsi, rcx
test rbx, rbx
je 0x1800399e3
mov qword [rsp + 0x60], rdi
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x1800399de
mov eax, dword [rcx + 0x20]
mov qword [rsp + 0x68], r12
cmp eax, 0x80000006
ja 0x180038f87
je 0x180038f66
cmp eax, 6
je 0x180038e96
cmp eax, 7
je 0x180038e80
cmp eax, 9
je 0x180038fb0
cmp eax, 0x80000005
jne 0x180038fa4
movups xmm0, xmmword [rcx + 0x34]
lea r8, [rbp - 0x20]
mov rdx, rdi
mov rcx, rbx
movaps xmmword [rbp - 0x20], xmm0
call fcn.180040be0
jmp 0x1800399d9
mov r8d, 0x1408
mov rdx, rdi
mov rcx, rbx
call fcn.18006b4f0
jmp 0x1800399d9
mov r8d, 0x1408
mov rdx, rdi
mov rcx, rbx
call fcn.18006b4f0
movups xmm1, xmmword [0x1800d1fe0]
movups xmm0, xmmword [rsi + 0x34]
movq rax, xmm1
movaps xmmword [rbp - 0x10], xmm1
movq rcx, xmm0
movaps xmmword [rbp - 0x20], xmm0
cmp rcx, rax
jne 0x180038ee7
mov rax, qword [rbp - 0x18]
cmp rax, qword [rbp - 8]
jne 0x180038ee7
mov r12d, 8
mov dword [rbx + 0x780], r12d
mov dword [rbx + 0x784], r12d
movups xmm1, xmmword [0x1800d1ff0]
movups xmm0, xmmword [rsi + 0x34]
movq rax, xmm1
movaps xmmword [rbp - 0x20], xmm1
movq rcx, xmm0
movaps xmmword [rbp - 0x10], xmm0
cmp rcx, rax
jne 0x180038f45
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x180038f45
mov rax, qword [rsi + 0x10]
mov ecx, dword [rax + 0xb8]
shr ecx, 0xb
and ecx, 7
add ecx, 8
mov dword [rbx + 0x174], ecx
mov rax, qword [rsi + 0x10]
mov ecx, dword [rax + 0xb8]
shr ecx, 0xb
and ecx, 7
add ecx, 8
mov dword [rbx + 0x178], ecx
mov rax, qword [rsi + 0x10]
test byte [rax + 0x4c], 0x10
je 0x1800399d9
and dword [rbx + 0x4c], 0xffffffef
mov dword [rbx + 0x88], 2
jmp 0x1800399d9
movups xmm0, xmmword [rcx + 0x34]
movzx r9d, byte [rcx + 0x49]
lea r8, [rbp - 0x10]
mov rdx, rdi
mov rcx, rbx
movaps xmmword [rbp - 0x10], xmm0
call fcn.180041860
jmp 0x1800399d9
cmp eax, 0x80000007
je 0x180039c99
cmp eax, 0x80000008
je 0x180039a0f
cmp eax, 0x80000009
je 0x180038fb0
mov dword [rcx + 0x1c], 0xf
jmp 0x1800399d9
cmp byte [rcx + 0x49], 0
mov r12d, 8
movups xmm0, xmmword [rdi + 4]
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], r15
je 0x1800390f8
movups xmm2, xmmword [rcx + 0x34]
lea r15, [rcx + 0x34]
movups xmmword [rbx + 4], xmm0
mov eax, dword [rdi + 0x14]
mov dword [rbx + 0x14], eax
mov eax, dword [rdi + 0x18]
mov dword [rbx + 0x18], eax
mov eax, dword [rdi + 0x1c]
mov dword [rbx + 0x1c], eax
mov eax, dword [rdi + 0x20]
mov dword [rbx + 0x20], eax
mov eax, dword [rdi + 0x24]
mov dword [rbx + 0x24], eax
movups xmm0, xmmword [rdi + 0x28]
movups xmmword [rbx + 0x28], xmm0
movups xmm1, xmmword [rdi + 0x38]
movups xmmword [rbx + 0x38], xmm1
movups xmm0, xmmword [rdi + 0x48]
movups xmmword [rbx + 0x48], xmm0
movups xmm1, xmmword [rdi + 0x58]
movups xmmword [rbx + 0x58], xmm1
movups xmm0, xmmword [rdi + 0x68]
movups xmmword [rbx + 0x68], xmm0
movups xmm1, xmmword [rdi + 0x78]
movups xmmword [rbx + 0x78], xmm1
movups xmm0, xmmword [rdi + 0x88]
movups xmmword [rbx + 0x88], xmm0
movups xmm1, xmmword [rdi + 0x98]
movups xmmword [rbx + 0x98], xmm1
test byte [rdi + 0x4c], 0x10
je 0x180039058
and dword [rbx + 0x4c], 0xffffffef
mov dword [rbx + 0x88], 2
movups xmm0, xmmword [0x1800d1fe0]
movq rcx, xmm2
movaps xmmword [rbp - 0x10], xmm2
movq rax, xmm0
movaps xmmword [rbp - 0x20], xmm0
cmp rcx, rax
jne 0x1800390a4
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x1800390a4
lea r14, [rdi + 0xa8]
mov r8d, 0x600
lea rsi, [rbx + 0xa8]
mov rdx, r14
mov rcx, rsi
call fcn.18006b4f0
jmp 0x180039746
movups xmm0, xmmword [0x1800d1ff0]
movq rcx, xmm2
movaps xmmword [rbp - 0x10], xmm2
movq rax, xmm0
movaps xmmword [rbp - 0x20], xmm0
cmp rcx, rax
jne 0x180039738
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x180039738
lea r14, [rdi + 0xa8]
mov r8d, 0x600
lea rsi, [rbx + 0xa8]
mov rdx, r14
mov rcx, rsi
call fcn.18006b4f0
jmp 0x180039746
movups xmmword [rbx + 4], xmm0
mov eax, dword [rdi + 0x14]
mov dword [rbx + 0x14], eax
mov eax, dword [rdi + 0x18]
mov dword [rbx + 0x18], eax
mov eax, dword [rdi + 0x1c]
mov dword [rbx + 0x1c], eax
mov eax, dword [rdi + 0x20]
mov dword [rbx + 0x20], eax
mov eax, dword [rdi + 0x24]
mov dword [rbx + 0x24], eax
movups xmm0, xmmword [rdi + 0x28]
movups xmmword [rbx + 0x28], xmm0
movups xmm1, xmmword [rdi + 0x38]
movups xmmword [rbx + 0x38], xmm1
movups xmm0, xmmword [rdi + 0x48]
movups xmmword [rbx + 0x48], xmm0
movups xmm1, xmmword [rdi + 0x58]
movups xmmword [rbx + 0x58], xmm1
movups xmm0, xmmword [rdi + 0x68]
movups xmmword [rbx + 0x68], xmm0
movups xmm1, xmmword [rdi + 0x78]
movups xmmword [rbx + 0x78], xmm1
movups xmm0, xmmword [rdi + 0x88]
movups xmmword [rbx + 0x88], xmm0
movups xmm1, xmmword [rdi + 0x98]
movups xmmword [rbx + 0x98], xmm1
test byte [rdi + 0x4c], 0x10
je 0x18003917a
and dword [rbx + 0x4c], 0xffffffef
mov dword [rbx + 0x88], 2
movups xmm0, xmmword [rcx + 0x34]
lea r15, [rcx + 0x34]
movups xmm1, xmmword [0x1800d1fe0]
movq rcx, xmm0
movaps xmmword [rbp - 0x10], xmm0
movq rax, xmm1
movaps xmmword [rbp - 0x20], xmm1
cmp rcx, rax
jne 0x180039459
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x180039459
lea rsi, [rbx + 0xa8]
mov eax, dword [rsi]
lea r14, [rdi + 0xa8]
xor eax, dword [r14]
and eax, 1
xor dword [rsi], eax
mov ecx, dword [rsi]
xor ecx, dword [r14]
and ecx, 2
xor ecx, dword [rsi]
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 4
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, r12d
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x10
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x20
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x40
xor eax, ecx
mov dword [rsi], eax
mov edx, eax
xor edx, dword [r14]
and edx, 0x80
xor edx, eax
mov dword [rsi], edx
mov ecx, edx
xor ecx, dword [r14]
and ecx, 0x100
xor ecx, edx
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x200
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x400
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x800
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x1000
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x2000
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x4000
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x8000
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x10000
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x20000
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x40000
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x80000
xor eax, ecx
mov dword [rsi], eax
mov ecx, eax
xor ecx, dword [r14]
and ecx, 0x100000
xor ecx, eax
mov dword [rsi], ecx
mov eax, ecx
xor eax, dword [r14]
and eax, 0x200000
xor eax, ecx
mov dword [rsi], eax
mov ecx, dword [r14]
add ecx, ecx
xor ecx, eax
mov eax, dword [r14]
add eax, eax
and ecx, 0x7fffff
xor ecx, eax
mov dword [rsi], ecx
mov eax, dword [rdi + 0xac]
mov dword [rsi + 4], eax
mov eax, dword [rdi + 0xb0]
mov dword [rsi + 8], eax
mov eax, dword [rdi + 0xb4]
mov dword [rsi + 0xc], eax
mov eax, dword [rdi + 0xb8]
mov dword [rsi + 0x10], eax
mov eax, dword [rdi + 0xbc]
mov dword [rsi + 0x14], eax
mov eax, dword [rdi + 0xc0]
mov dword [rsi + 0x18], eax
mov eax, dword [rdi + 0xc4]
mov dword [rsi + 0x1c], eax
mov eax, dword [rdi + 0xc8]
mov dword [rsi + 0x20], eax
mov eax, dword [rdi + 0xcc]
mov dword [rsi + 0x24], eax
mov eax, dword [rdi + 0xd0]
mov dword [rsi + 0x28], eax
mov eax, dword [rdi + 0xd4]
mov dword [rsi + 0x2c], eax
mov eax, dword [rdi + 0xd8]
mov dword [rsi + 0x30], eax
mov eax, dword [rdi + 0xdc]
mov dword [rsi + 0x638], eax
mov eax, dword [rdi + 0xe0]
mov dword [rsi + 0x63c], eax
mov eax, dword [rdi + 0xe4]
mov dword [rsi + 0x640], eax
mov eax, dword [rdi + 0xe8]
mov dword [rsi + 0x644], eax
mov eax, dword [rdi + 0xec]
mov dword [rsi + 0x648], eax
movups xmm0, xmmword [rdi + 0xf0]
movups xmmword [rsi + 0x64c], xmm0
movups xmm1, xmmword [rdi + 0x100]
movups xmmword [rsi + 0x65c], xmm1
movups xmm0, xmmword [rdi + 0x110]
movups xmmword [rsi + 0x66c], xmm0
movups xmm1, xmmword [rdi + 0x120]
movups xmmword [rsi + 0x67c], xmm1
movups xmm0, xmmword [rdi + 0x130]
movups xmmword [rsi + 0x68c], xmm0
movups xmm1, xmmword [rdi + 0x140]
movups xmmword [rsi + 0x69c], xmm1
movups xmm0, xmmword [rdi + 0x150]
movups xmmword [rsi + 0x6ac], xmm0
mov eax, dword [rdi + 0x160]
mov dword [rsi + 0x6bc], eax
mov eax, dword [rdi + 0x164]
mov dword [rsi + 0x6c0], eax
mov eax, dword [rdi + 0x168]
mov dword [rsi + 0x6c4], eax
mov eax, dword [rdi + 0x170]
mov dword [rsi + 0x6cc], eax
mov eax, dword [rdi + 0x174]
mov dword [rsi + 0x6d0], eax
mov eax, dword [rdi + 0x178]
mov dword [rsi + 0x6d4], eax
jmp 0x180039746
movups xmm1, xmmword [0x1800d1ff0]
movq rcx, xmm0
movaps xmmword [rbp - 0x10], xmm0
movq rax, xmm1
movaps xmmword [rbp - 0x20], xmm1
cmp rcx, rax
jne 0x180039738
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x180039738
lea rsi, [rbx + 0xa8]
mov edx, dword [rsi + 0x10]
lea r14, [rdi + 0xa8]
mov eax, dword [r14]
mov dword [rsi], eax
mov eax, dword [rdi + 0xac]
mov dword [rsi + 4], eax
mov eax, dword [rdi + 0xb0]
mov dword [rsi + 8], eax
mov eax, dword [rdi + 0xb4]
mov dword [rsi + 0xc], eax
xor edx, dword [rdi + 0xb8]
and edx, 1
xor edx, dword [rsi + 0x10]
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 2
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 4
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, r12d
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x10
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x20
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x40
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x80
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x100
xor edx, eax
mov dword [rsi + 0x10], edx
mov ecx, edx
xor ecx, dword [rdi + 0xb8]
and ecx, 0x600
xor ecx, edx
mov dword [rsi + 0x10], ecx
mov edx, ecx
mov eax, dword [rdi + 0x170]
cmp eax, r12d
cmovl eax, r12d
mov dword [rsi + 0xcc], eax
mov eax, dword [rdi + 0x174]
cmp eax, r12d
cmovl eax, r12d
mov dword [rsi + 0xd0], eax
xor edx, dword [rdi + 0xb8]
and edx, 0x4000
xor edx, ecx
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x8000
xor edx, eax
mov eax, edx
mov dword [rsi + 0x10], edx
xor eax, dword [rdi + 0xb8]
and eax, 0x10000
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x20000
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x40000
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x80000
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x100000
xor edx, eax
mov dword [rsi + 0x10], edx
mov eax, dword [rdi + 0xbc]
mov dword [rsi + 0x14], eax
mov eax, dword [rdi + 0xc0]
mov dword [rsi + 0x18], eax
mov eax, dword [rdi + 0xc4]
mov dword [rsi + 0x1c], eax
mov eax, dword [rdi + 0xc8]
mov dword [rsi + 0x20], eax
mov eax, dword [rdi + 0xcc]
mov dword [rsi + 0x24], eax
mov eax, dword [rdi + 0xd0]
mov dword [rsi + 0x28], eax
mov eax, dword [rdi + 0xd4]
mov dword [rsi + 0x2c], eax
mov eax, dword [rdi + 0xd8]
mov dword [rsi + 0x30], eax
mov eax, dword [rdi + 0xdc]
mov dword [rsi + 0x34], eax
mov eax, dword [rdi + 0xe0]
mov dword [rsi + 0x38], eax
mov eax, dword [rdi + 0xe4]
mov dword [rsi + 0x3c], eax
movups xmm0, xmmword [rdi + 0xe8]
movups xmmword [rsi + 0x40], xmm0
movups xmm1, xmmword [rdi + 0xf8]
movups xmmword [rsi + 0x50], xmm1
movups xmm0, xmmword [rdi + 0x108]
movups xmmword [rsi + 0x60], xmm0
movups xmm1, xmmword [rdi + 0x118]
movups xmmword [rsi + 0x70], xmm1
movups xmm0, xmmword [rdi + 0x128]
movups xmmword [rsi + 0x80], xmm0
movups xmm1, xmmword [rdi + 0x138]
movups xmmword [rsi + 0x90], xmm1
movups xmm0, xmmword [rdi + 0x148]
movups xmmword [rsi + 0xa0], xmm0
mov eax, dword [rdi + 0x158]
mov dword [rsi + 0xb0], eax
mov eax, dword [rdi + 0x15c]
mov dword [rsi + 0xb4], eax
mov eax, dword [rdi + 0x160]
mov dword [rsi + 0xb8], eax
mov eax, dword [rdi + 0x164]
mov dword [rsi + 0xbc], eax
mov eax, dword [rdi + 0x168]
mov dword [rsi + 0xc0], eax
mov eax, dword [rdi + 0x16c]
mov dword [rsi + 0xc4], eax
mov eax, dword [rdi + 0x178]
mov dword [rsi + 0xd4], eax
mov eax, edx
xor eax, dword [rdi + 0xb8]
and eax, 0x200000
xor edx, eax
mov eax, edx
mov dword [rsi + 0x10], edx
xor eax, dword [rdi + 0xb8]
and eax, 0x400000
xor eax, edx
mov dword [rsi + 0x10], eax
jmp 0x180039746
lea rsi, [rbx + 0xa8]
lea r14, [rdi + 0xa8]
movups xmm0, xmmword [r15]
mov r15, qword [rsp + 0x78]
movups xmm1, xmmword [0x1800d2000]
movq rcx, xmm0
movaps xmmword [rbp - 0x10], xmm0
movq rax, xmm1
movaps xmmword [rbp - 0x20], xmm1
cmp rcx, rax
jne 0x1800399d4
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x1800399d4
mov eax, dword [r14]
mov ecx, dword [rbx + 0xb8]
mov dword [rsi], eax
mov eax, dword [rdi + 0xac]
mov dword [rbx + 0xac], eax
mov eax, dword [rdi + 0xb0]
mov dword [rbx + 0xb0], eax
mov eax, dword [rdi + 0xb4]
mov dword [rbx + 0xb4], eax
xor ecx, dword [rdi + 0xb8]
and ecx, 1
xor ecx, dword [rbx + 0xb8]
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 2
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 4
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, r12d
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x10
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x20
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x40
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x180
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x200
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x400
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x800
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov edx, ecx
xor edx, dword [rdi + 0xb8]
and edx, 0x2000
xor edx, ecx
mov dword [rbx + 0xb8], edx
mov eax, dword [rdi + 0x11c]
cmp eax, r12d
cmovl eax, r12d
mov dword [rbx + 0x220], eax
mov eax, dword [rdi + 0x118]
cmp eax, r12d
cmovl eax, r12d
mov dword [rbx + 0x21c], eax
mov eax, dword [rdi + 0xbc]
mov dword [rbx + 0xbc], eax
mov eax, dword [rdi + 0xc0]
mov dword [rbx + 0xc0], eax
mov eax, dword [rdi + 0xc4]
mov dword [rbx + 0xc4], eax
mov eax, dword [rdi + 0xc8]
mov dword [rbx + 0xc8], eax
mov eax, dword [rdi + 0xcc]
mov dword [rbx + 0xcc], eax
mov eax, dword [rdi + 0xd0]
mov dword [rbx + 0xd0], eax
mov rax, qword [rdi + 0xd8]
mov qword [rbx + 0xd8], rax
mov rax, qword [rdi + 0xe0]
mov qword [rbx + 0xe0], rax
mov eax, dword [rdi + 0xe8]
mov dword [rbx + 0xe8], eax
mov eax, dword [rdi + 0xec]
mov dword [rbx + 0xec], eax
mov eax, dword [rdi + 0xf0]
mov dword [rbx + 0xf0], eax
mov eax, dword [rdi + 0xf4]
mov dword [rbx + 0xf4], eax
mov eax, dword [rdi + 0xf8]
mov dword [rbx + 0xf8], eax
mov eax, dword [rdi + 0xfc]
mov dword [rbx + 0xfc], eax
mov eax, dword [rdi + 0x100]
mov dword [rbx + 0x100], eax
mov rax, qword [rdi + 0x108]
mov qword [rbx + 0x108], rax
mov eax, dword [rdi + 0x110]
mov dword [rbx + 0x110], eax
mov eax, dword [rdi + 0x114]
mov dword [rbx + 0x114], eax
mov eax, dword [rdi + 0x124]
mov dword [rbx + 0x228], eax
mov eax, dword [rdi + 0xb8]
and eax, 0x1000
je 0x1800399eb
btr edx, 0xc
or edx, eax
mov dword [rbx + 0xb8], edx
mov eax, dword [rdi + 0x120]
mov dword [rbx + 0x224], eax
mov r14, qword [rsp + 0x70]
mov r12, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x60]
add rsp, 0x40
pop rsi
pop rbx
pop rbp
ret
mov eax, dword [rdi + 0x128]
test eax, eax
je 0x1800399d4
shl eax, 0xc
xor eax, edx
and eax, 0x1000
xor eax, edx
mov dword [rbx + 0xb8], eax
mov eax, dword [rdi + 0x12c]
jmp 0x1800399ce
movups xmm0, xmmword [rcx + 0x34]
movzx r9d, byte [rcx + 0x49]
lea r8, [rbp - 0x10]
mov rdx, rdi
mov rcx, rbx
movaps xmmword [rbp - 0x10], xmm0
call fcn.180041dc0
movups xmm1, xmmword [0x1800d2000]
movups xmm0, xmmword [rsi + 0x34]
movq rax, xmm1
movaps xmmword [rbp - 0x20], xmm1
movq rcx, xmm0
movaps xmmword [rbp - 0x10], xmm0
cmp rcx, rax
jne 0x1800399d9
mov rax, qword [rbp - 8]
cmp rax, qword [rbp - 0x18]
jne 0x1800399d9
mov eax, dword [rdi + 0xa8]
mov dword [rbx + 0xa8], eax
mov eax, dword [rdi + 0xac]
mov dword [rbx + 0xac], eax
mov eax, dword [rdi + 0xb0]
mov dword [rbx + 0xb0], eax
mov eax, dword [rdi + 0xb4]
mov ecx, dword [rbx + 0xb8]
mov dword [rbx + 0xb4], eax
xor ecx, dword [rdi + 0xb8]
and ecx, 1
xor ecx, dword [rbx + 0xb8]
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 2
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 4
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 8
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x10
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x20
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x40
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x180
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x200
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x400
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb8]
and eax, 0x800
xor ecx, eax
mov dword [rbx + 0xb8], ecx
mov eax, dword [rdi + 0xb8]
shr eax, 0xc
and eax, 7
add eax, 8
mov dword [rbx + 0x220], eax
mov eax, dword [rdi + 0xb8]
shr eax, 0xf
and eax, 7
add eax, 8
mov dword [rbx + 0x21c], eax
mov eax, dword [rdi + 0xbc]
mov dword [rbx + 0xbc], eax
mov eax, dword [rdi + 0xc0]
mov dword [rbx + 0xc0], eax
mov eax, dword [rdi + 0xc4]
mov dword [rbx + 0xc4], eax
mov eax, dword [rdi + 0xc8]
mov dword [rbx + 0xc8], eax
mov eax, dword [rdi + 0xcc]
mov dword [rbx + 0xcc], eax
mov eax, dword [rdi + 0xd0]
mov dword [rbx + 0xd0], eax
mov rax, qword [rdi + 0xd8]
mov qword [rbx + 0xd8], rax
mov rax, qword [rdi + 0xe0]
mov qword [rbx + 0xe0], rax
mov eax, dword [rdi + 0xe8]
mov dword [rbx + 0xe8], eax
mov eax, dword [rdi + 0xec]
mov dword [rbx + 0xec], eax
mov eax, dword [rdi + 0xf0]
mov dword [rbx + 0xf0], eax
mov eax, dword [rdi + 0xf4]
mov dword [rbx + 0xf4], eax
mov eax, dword [rdi + 0xf8]
mov dword [rbx + 0xf8], eax
mov eax, dword [rdi + 0xfc]
mov dword [rbx + 0xfc], eax
mov eax, dword [rdi + 0x100]
mov dword [rbx + 0x100], eax
mov rax, qword [rdi + 0x108]
mov qword [rbx + 0x108], rax
mov eax, dword [rdi + 0x110]
mov dword [rbx + 0x110], eax
mov eax, dword [rdi + 0x114]
mov dword [rbx + 0x114], eax
mov eax, dword [rdi + 0x118]
shl eax, 0xc
xor eax, ecx
and eax, 0x1000
xor eax, ecx
mov dword [rbx + 0xb8], eax
mov eax, dword [rdi + 0x11c]
mov dword [rbx + 0x224], eax
jmp 0x1800399d9
movups xmm0, xmmword [rcx + 0x34]
movzx r9d, byte [rcx + 0x49]
lea r8, [rbp - 0x10]
mov rdx, rdi
mov rcx, rbx
movaps xmmword [rbp - 0x10], xmm0
call fcn.180041dc0
jmp 0x1800399d9