Function at 0x1400310a0
Capabilities:
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, 0x328
vmovaps xmmword [rsp + 0x310], xmm6
mov r15, r9
mov rbx, r8
mov rdi, rdx
mov r13, rcx
mov r12, qword [rdx + 0xa8]
mov rbp, qword [rdx + 0x58]
test ebp, 0x80000
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0x88], r12
mov qword [rsp + 0x68], rdx
jne 0x1400311d2
mov esi, dword [rdi + 0x44]
mov r12d, dword [r12 + 0xf0]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x1f0], ymm0
vmovups ymmword [rsp + 0x208], ymm0
mov dword [rsp + 0x1f8], 0x88
bt rbp, 0x22
mov qword [rsp + 0xc0], rbp
jb 0x140031a59
mov eax, ebp
shr eax, 0x1e
mov qword [rsp + 0x70], rax
mov rax, qword [rdi + 0x90]
mov qword [rsp + 0x58], rax
test esi, esi
je 0x140031e1b
mov eax, dword [rdi + 0x48]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0xd0]
mov rdx, r13
mov r8d, esi
xor r9d, r9d
vzeroupper
call fcn.140012f70
mov rdx, qword [rsp + 0xd0]
mov eax, dword [rsp + 0xd8]
movzx r8d, byte [rsp + 0xdc]
movzx ecx, byte [rsp + 0xdd]
mov qword [rsp + 0x48], rcx
movzx ecx, word [rsp + 0xde]
mov qword [rsp + 0x50], rcx
cmp r8b, 4
jne 0x140031e5b
mov r8d, eax
cdqe
mov rcx, qword [rdx + 0x30]
mov r9, rdx
movsxd rdx, dword [rdx + 0x38]
imul rdx, rax
or byte [rcx + rdx + 0x28], 8
mov al, 4
mov qword [rsp + 0x60], rax
jmp 0x140031e66
mov rcx, qword [r12 + 8]
mov edx, 0x38
call fcn.140019100
mov rbp, rax
mov qword [rax + 0x110], rdi
mov qword [rax + 0x20], r13
mov rcx, qword [r15 + 0x38]
mov qword [rax + 0x268], rcx
mov qword [rsp + 0x98], r15
vmovups ymm0, ymmword [r15 + 0x18]
mov qword [rsp + 0x38], rax
vmovups ymmword [rax + 0x248], ymm0
cmp dword [r12 + 0xf0], 0
je 0x14003189c
mov r13, qword [r12 + 0xf8]
add r13, 0x10
mov rax, qword [rsp + 0x38]
lea rcx, [rax + 0xa0]
mov qword [rsp + 0x48], rcx
lea rcx, [rax + 0x68]
mov qword [rsp + 0x60], rcx
add rax, 0x270
mov qword [rsp + 0xc0], rax
add rbx, 0x81
vmovups xmm6, xmmword [0x1400a8c78]
xor edi, edi
mov qword [rsp + 0x50], rbp
jmp 0x140031344
mov eax, r12d
mov rcx, r11
mov ebp, r8d
and r14b, 0xf3
mov qword [r15 + 0xb0], rdx
mov qword [r15 + 0xb8], rsi
mov qword [r15 + 0xc0], rcx
mov dword [r15 + 0xc8], r10d
mov byte [r15 + 0xcc], bpl
mov byte [r15 + 0xcd], r9b
mov word [r15 + 0xce], ax
vmovups ymm0, ymmword [rsp + 0x2a0]
vmovups ymm1, ymmword [rsp + 0x2c0]
vmovups ymm2, ymmword [rsp + 0x2e0]
vmovups ymmword [r15 + 0xd0], ymm0
vmovups ymmword [r15 + 0xf0], ymm1
vmovups ymmword [r15 + 0x110], ymm2
mov byte [r15 + 0x130], r14b
mov eax, dword [rsp + 0x1f0]
mov ecx, dword [rsp + 0x1f3]
mov dword [r15 + 0x131], eax
mov dword [r15 + 0x134], ecx
inc rdi
mov r13, qword [r13]
mov r12, qword [rsp + 0x88]
mov eax, dword [r12 + 0xf0]
add rbx, 0x88
cmp rdi, rax
mov rbp, qword [rsp + 0x50]
jae 0x14003189c
mov rax, qword [rsp + 0x38]
lea rsi, [rax + 0xb0]
test byte [r13 + 0x58], 2
lea rax, [rax + 0x78]
vmovups xmm0, xmmword [r13 + 8]
vmovaps xmmword [rsp + 0x160], xmm0
mov rcx, qword [r13 + 0x1d0]
mov qword [rsp + 0xf0], rcx
vmovups ymm0, ymmword [r13 + 0x1b0]
vmovups ymmword [rsp + 0xd0], ymm0
mov rcx, qword [rsp + 0x48]
cmove rcx, qword [rsp + 0x60]
cmove rsi, rax
vzeroupper
call fcn.140001b80
mov r15, rax
mov r8d, dword [rsi]
mov rcx, rax
xor edx, edx
call fcn.1400924f0
vmovaps xmm0, xmmword [rsp + 0x160]
vmovups xmmword [r15 + 8], xmm0
mov rax, qword [rsp + 0xf0]
mov qword [r15 + 0x1d0], rax
vmovups ymm0, ymmword [rsp + 0xd0]
vmovups ymmword [r15 + 0x1b0], ymm0
mov qword [r15 + 0x30], rbp
vmovups xmmword [r15 + 0x138], xmm6
mov r8d, 0x200
mov rcx, r15
mov rdx, r13
vzeroupper
call fcn.140091e40
mov rdx, qword [rbx - 0x81]
mov rsi, qword [rbx - 0x79]
mov r11, qword [rbx - 0x71]
mov r10d, dword [rbx - 0x69]
movzx r8d, byte [rbx - 0x65]
movzx r9d, byte [rbx - 0x64]
movzx r12d, word [rbx - 0x63]
vmovups ymm0, ymmword [rbx - 0x21]
vmovups ymmword [rsp + 0x2e0], ymm0
vmovups ymm0, ymmword [rbx - 0x41]
vmovups ymmword [rsp + 0x2c0], ymm0
vmovups ymm0, ymmword [rbx - 0x61]
vmovups ymmword [rsp + 0x2a0], ymm0
movzx r14d, byte [rbx - 1]
mov eax, dword [rbx + 3]
mov dword [rsp + 0x1f3], eax
mov eax, dword [rbx]
mov dword [rsp + 0x1f0], eax
test r14b, 1
je 0x140031280
test r14b, 8
jne 0x140031280
mov rax, qword [r13 + 0x58]
movabs rcx, 0x800000000
and rax, rcx
jne 0x140031280
lea rax, [rbx - 0x61]
vmovups ymm0, ymmword [rax]
vmovups ymm1, ymmword [rax + 0x20]
vmovups ymm2, ymmword [rax + 0x40]
vmovups ymmword [rsp + 0x230], ymm0
vmovups ymmword [rsp + 0x250], ymm1
vmovups ymmword [rsp + 0x270], ymm2
mov eax, dword [rbx]
mov ecx, dword [rbx + 3]
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0xb3], ecx
mov byte [rsp + 0x70], r8b
mov r8d, dword [rsi + 0x3c]
mov eax, dword [rsi + 0x40]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0xd0]
mov byte [rsp + 0x40], r9b
mov word [rsp + 0x36], r12w
mov r12, rdx
mov rdx, rbp
mov r9, rsi
mov dword [rsp + 0x44], r10d
mov qword [rsp + 0x78], r11
vzeroupper
call fcn.140012f70
mov rdx, qword [rsp + 0xd0]
mov r8d, dword [rsp + 0xd8]
mov rcx, rbp
movzx ebp, byte [rsp + 0xdc]
movzx r9d, byte [rsp + 0xdd]
mov byte [rsp + 0x58], r9b
movzx eax, word [rsp + 0xde]
mov qword [rsp + 0xd0], r12
mov qword [rsp + 0xd8], rsi
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0xe0], rdx
mov dword [rsp + 0x30], r8d
mov dword [rsp + 0xe8], r8d
mov byte [rsp + 0xec], bpl
mov byte [rsp + 0xed], r9b
mov word [rsp + 0xc8], ax
mov word [rsp + 0xee], ax
vmovups ymm0, ymmword [rsp + 0x230]
vmovups ymm1, ymmword [rsp + 0x250]
vmovups ymm2, ymmword [rsp + 0x270]
lea r8, [rsp + 0x151]
vmovups ymmword [r8 - 0x21], ymm2
vmovups ymmword [r8 - 0x41], ymm1
vmovups ymmword [r8 - 0x61], ymm0
mov byte [rsp + 0x150], r14b
mov eax, dword [rsp + 0xb0]
mov edx, dword [rsp + 0xb3]
mov dword [r8 + 3], edx
mov dword [r8], eax
mov qword [rsp + 0xa8], r12
mov qword [rsp + 0x160], r12
movzx r12d, byte [rsp + 0x70]
mov qword [rsp + 0x168], rsi
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x170], rax
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x178], eax
mov byte [rsp + 0x17c], r12b
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x17d], al
movzx eax, word [rsp + 0x36]
mov word [rsp + 0x17e], ax
vmovups ymm0, ymmword [rsp + 0x2a0]
vmovups ymm1, ymmword [rsp + 0x2c0]
vmovups ymm2, ymmword [rsp + 0x2e0]
lea r8, [rsp + 0x1e1]
vmovups ymmword [r8 - 0x21], ymm2
vmovups ymmword [r8 - 0x41], ymm1
vmovups ymmword [r8 - 0x61], ymm0
mov byte [rsp + 0x1e0], r14b
mov eax, dword [rsp + 0x1f0]
mov edx, dword [rsp + 0x1f3]
mov dword [r8 + 3], edx
mov dword [r8], eax
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0x160]
vzeroupper
call fcn.140015440
movzx r9d, byte [rsp + 0x58]
test al, al
jne 0x140031828
cmp bpl, r12b
jne 0x1400316e8
cmp r12b, 4
jne 0x1400316d3
mov rcx, qword [rsp + 0x78]
cmp qword [rsp + 0x80], rcx
jne 0x1400316e8
mov eax, dword [rsp + 0x30]
cmp eax, dword [rsp + 0x44]
je 0x1400316dd
jmp 0x1400316e8
mov ecx, dword [rsp + 0x30]
cmp ecx, dword [rsp + 0x44]
jne 0x1400316e8
cmp r9b, byte [rsp + 0x40]
je 0x140031828
mov rcx, qword [rsp + 0xc0]
mov r12d, r9d
call fcn.140001b80
mov r9d, r12d
mov ecx, r14d
and cl, 4
cmp cl, 1
mov cl, 4
sbb cl, 0
mov byte [rax + 8], cl
mov r8, qword [rsp + 0xa8]
mov qword [rax + 0x10], r8
mov qword [rax + 0x18], rsi
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x20], rcx
mov ecx, dword [rsp + 0x30]
mov dword [rax + 0x28], ecx
mov byte [rax + 0x2c], bpl
mov byte [rax + 0x2d], r12b
movzx ecx, word [rsp + 0xc8]
mov word [rax + 0x2e], cx
vmovups ymm0, ymmword [rsp + 0x230]
vmovups ymm1, ymmword [rsp + 0x250]
vmovups ymm2, ymmword [rsp + 0x270]
vmovups ymmword [rax + 0x30], ymm0
vmovups ymmword [rax + 0x50], ymm1
vmovups ymmword [rax + 0x70], ymm2
mov byte [rax + 0x90], r14b
mov ecx, dword [rsp + 0xb0]
mov edx, dword [rsp + 0xb3]
mov dword [rax + 0x91], ecx
mov dword [rax + 0x94], edx
mov qword [rax + 0x98], r8
mov qword [rax + 0xa0], rsi
mov rcx, qword [rsp + 0x78]
mov qword [rax + 0xa8], rcx
mov ecx, dword [rsp + 0x44]
mov dword [rax + 0xb0], ecx
movzx ecx, byte [rsp + 0x70]
mov byte [rax + 0xb4], cl
movzx ecx, byte [rsp + 0x40]
mov byte [rax + 0xb5], cl
movzx ecx, word [rsp + 0x36]
mov word [rax + 0xb6], cx
vmovups ymm0, ymmword [rsp + 0x2a0]
vmovups ymm1, ymmword [rsp + 0x2c0]
vmovups ymm2, ymmword [rsp + 0x2e0]
vmovups ymmword [rax + 0xf8], ymm2
vmovups ymmword [rax + 0xd8], ymm1
vmovups ymmword [rax + 0xb8], ymm0
mov byte [rax + 0x118], r14b
mov ecx, dword [rsp + 0x1f0]
mov edx, dword [rsp + 0x1f3]
mov dword [rax + 0x119], ecx
mov dword [rax + 0x11c], edx
vmovups ymm0, ymmword [rsp + 0x230]
vmovups ymm1, ymmword [rsp + 0x250]
vmovups ymm2, ymmword [rsp + 0x270]
vmovups ymmword [rsp + 0x2e0], ymm2
vmovups ymmword [rsp + 0x2c0], ymm1
vmovups ymmword [rsp + 0x2a0], ymm0
mov eax, dword [rsp + 0xb0]
mov ecx, dword [rsp + 0xb3]
mov dword [rsp + 0x1f0], eax
mov dword [rsp + 0x1f3], ecx
mov rdx, qword [rsp + 0xa8]
movzx eax, word [rsp + 0xc8]
mov rcx, qword [rsp + 0x80]
mov r10d, dword [rsp + 0x30]
jmp 0x140031289
movzx edi, byte [rsp + 0x3a8]
cmp dword [r12 + 0xb8], 0
je 0x140031995
mov rsi, qword [r12 + 0xc0]
add rsi, 0x10
mov rax, qword [rsp + 0x38]
lea rbx, [rax + 0xa0]
vmovups xmm6, xmmword [0x1400a8c78]
xor r14d, r14d
nop word cs:[rax + rax]
vmovups xmm0, xmmword [rsi + 8]
vmovaps xmmword [rsp + 0x160], xmm0
mov rax, qword [rsi + 0x1d0]
mov qword [rsp + 0xf0], rax
vmovups ymm0, ymmword [rsi + 0x1b0]
vmovups ymmword [rsp + 0xd0], ymm0
mov rcx, rbx
vzeroupper
call fcn.140001b80
mov r15, rax
mov r8d, dword [rbp + 0xb0]
mov rcx, rax
xor edx, edx
call fcn.1400924f0
vmovaps xmm0, xmmword [rsp + 0x160]
vmovups xmmword [r15 + 8], xmm0
mov rax, qword [rsp + 0xf0]
mov qword [r15 + 0x1d0], rax
vmovups ymm0, ymmword [rsp + 0xd0]
vmovups ymmword [r15 + 0x1b0], ymm0
mov qword [r15 + 0x30], rbp
vmovups xmmword [r15 + 0x138], xmm6
mov r8d, 0x200
mov rcx, r15
mov rdx, rsi
vzeroupper
call fcn.140091e40
inc r14
mov rsi, qword [rsi]
mov eax, dword [r12 + 0xb8]
cmp r14, rax
jb 0x1400318e0
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsi + 0x180]
mov rdx, qword [rax]
mov r8, qword [rax + 0x40]
test dil, dil
setne byte [rsp + 0x20]
mov qword [rsp + 0x28], 0
mov rcx, rbp
xor r9d, r9d
vzeroupper
call fcn.1400329b0
test al, al
je 0x140031c21
mov rsi, qword [rsi + 0x90]
test rsi, rsi
mov r14, qword [rsp + 0xa0]
je 0x140031d69
cmp dword [rbp + 0x1e8], 1
jne 0x140031c3c
mov rax, qword [rsp + 0x38]
add rax, 0x1f0
mov ecx, dword [rbp + 0x1e4]
nop word cs:[rax + rax]
mov rax, qword [rax]
test ecx, ecx
je 0x140031a10
mov rcx, qword [rax + 0x90]
mov rdx, qword [rsp + 0x390]
mov qword [rdx + 0x80], rcx
vmovups ymm0, ymmword [rax + 0x10]
vmovups ymm1, ymmword [rax + 0x30]
vmovups ymm2, ymmword [rax + 0x50]
vmovups ymm3, ymmword [rax + 0x70]
vmovups ymmword [rdx + 0x60], ymm3
vmovups ymmword [rdx + 0x40], ymm2
vmovups ymmword [rdx + 0x20], ymm1
vmovups ymmword [rdx], ymm0
jmp 0x140031d69
lea rcx, [rsp + 0x1f0]
mov edx, r12d
vzeroupper
call fcn.1400018f0
mov rcx, r12
shl rcx, 7
lea r8, [rcx + r12*8]
mov rcx, rax
mov rdx, rbx
call fcn.140091e40
mov rdi, qword [rsp + 0x1f0]
movsxd rax, dword [rsp + 0x1fc]
mov rcx, rax
shl rcx, 7
lea r14, [rcx + rax*8]
add r14, rdi
jmp 0x140031ad7
mov rcx, qword [0x1400e4580]
movsxd rdx, dword [0x1400e4588]
cdqe
imul rdx, rax
inc eax
mov dword [0x1400e458c], eax
mov qword [rcx + rdx], r13
or byte [r13 + 0x5a], 0x20
nop word [rax + rax]
add rdi, 0x88
cmp rdi, r14
jae 0x140031b2d
test byte [rdi + 0x80], 1
jne 0x140031ad0
test byte [rdi + 0xb], 2
je 0x140031ad0
mov r13, qword [rdi + 0x50]
test byte [r13 + 0x59], 4
je 0x140031ad0
mov rax, qword [rsp + 0x68]
test byte [rax + 0x5a], 0x20
jne 0x140031ad0
mov eax, dword [0x1400e458c]
mov dword [r13 + 0x168], eax
cmp eax, dword [0x1400e4590]
jne 0x140031aa2
lea rcx, [0x1400e4580]
call fcn.140001620
mov eax, dword [0x1400e458c]
jmp 0x140031aa2
mov rdi, qword [rsp + 0x68]
mov r14d, dword [rdi + 0x58]
shr r14d, 0x1e
and r14b, 1
mov rax, qword [rdi + 0x90]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x30], 0xffffffff
xor eax, eax
test esi, esi
je 0x140031e3b
mov qword [rsp + 0x38], rax
mov eax, 0
mov qword [rsp + 0x50], rax
mov r8d, 0
test r14b, r14b
mov r13, qword [rsp + 0xa0]
mov eax, 0
jne 0x140031ed5
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x58], 0
je 0x140031eda
mov rax, qword [rsp + 0x58]
mov r8d, dword [rax + 0x3c]
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x20], eax
xor r14d, r14d
lea rcx, [rsp + 0xd0]
mov rdx, r13
xor r9d, r9d
call fcn.140012f70
mov rdx, qword [rsp + 0xd0]
mov eax, dword [rsp + 0xd8]
movzx r8d, byte [rsp + 0xdc]
movzx ecx, byte [rsp + 0xdd]
mov qword [rsp + 0x48], rcx
movzx ecx, word [rsp + 0xde]
mov qword [rsp + 0x50], rcx
cmp r8b, 4
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x38], rdx
jne 0x140031eda
cdqe
mov rcx, qword [rdx + 0x30]
movsxd rdx, dword [rdx + 0x38]
imul rdx, rax
or byte [rcx + rdx + 0x28], 8
mov r8b, 4
xor r14d, r14d
jmp 0x140031eda
lea rdx, str.This_is_the_call_site.
mov rcx, qword [rsp + 0x98]
call fcn.140011a10
xor esi, esi
jmp 0x140032979
mov rcx, qword [rsp + 0x98]
add rcx, 0x18
mov rax, qword [rsp + 0x38]
lea rdi, [rax + 0x148]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x180], rax
vmovups ymm0, ymmword [rcx]
vmovups ymmword [rsp + 0x160], ymm0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], rsi
lea rcx, [rsp + 0xe0]
mov r8d, dword [rsi + 0x3c]
mov eax, dword [rsi + 0x40]
mov dword [rsp + 0x20], eax
mov rdx, r14
mov r9, rsi
vzeroupper
call fcn.140012f70
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x148], rax
vmovups ymm0, ymmword [rsp + 0x160]
vmovups ymmword [rsp + 0x128], ymm0
mov rdx, qword [0x1400e4790]
mov rcx, rsi
vzeroupper
call fcn.140011250
test al, al
setne al
shl al, 6
or al, 9
mov byte [rsp + 0x150], al
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x390]
mov qword [rcx + 0x80], rax
vmovups ymm0, ymmword [rsp + 0xd0]
vmovups ymm1, ymmword [rsp + 0xf0]
vmovups ymm2, ymmword [rsp + 0x110]
vmovups ymm3, ymmword [rsp + 0x130]
vmovups ymmword [rcx + 0x60], ymm3
vmovups ymmword [rcx + 0x40], ymm2
vmovups ymmword [rcx + 0x20], ymm1
vmovups ymmword [rcx], ymm0
mov rax, qword [rcx + 0x80]
mov qword [rdi + 0x80], rax
vmovups ymm0, ymmword [rcx]
vmovups ymm1, ymmword [rcx + 0x20]
vmovups ymm2, ymmword [rcx + 0x40]
vmovups ymm3, ymmword [rcx + 0x60]
vmovups ymmword [rdi + 0x60], ymm3
vmovups ymmword [rdi + 0x40], ymm2
vmovups ymmword [rdi + 0x20], ymm1
vmovups ymmword [rdi], ymm0
lea rcx, [r14 + 0x270]
vzeroupper
call fcn.140001b80
mov byte [rax + 8], 0x1f
mov qword [rax + 0x10], rbp
add qword [rsp + 0x38], 0x210
mov rdi, qword [rbp + 0x210]
movsxd rax, dword [rbp + 0x21c]
lea rax, [rax + rax*2]
lea rbx, [rdi + rax*8]
cmp rdi, rbx
jae 0x140031e09
lea rsi, [r14 + 0x2a8]
jmp 0x140031de8
mov rcx, qword [r14 + 0x2a8]
movsxd rdx, dword [r14 + 0x2b0]
cdqe
imul rdx, rax
inc eax
mov dword [r14 + 0x2b4], eax
mov rax, qword [rdi + 0x10]
mov qword [rcx + rdx + 0x10], rax
vmovups xmm0, xmmword [rdi]
vmovups xmmword [rcx + rdx], xmm0
add rdi, 0x18
cmp rdi, rbx
jae 0x140031e09
mov eax, dword [r14 + 0x2b4]
cmp eax, dword [r14 + 0x2b8]
jne 0x140031db0
mov rcx, rsi
call fcn.140001620
mov eax, dword [r14 + 0x2b4]
jmp 0x140031db0
mov rcx, qword [rsp + 0x38]
call fcn.140001a40
mov sil, 1
jmp 0x140032979
mov r8d, 0xffffffff
xor r9d, r9d
xor eax, eax
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x50], rax
jmp 0x140031e66
mov qword [rsp + 0x38], rax
xor r8d, r8d
xor eax, eax
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x50], rax
mov r13, qword [rsp + 0xa0]
jmp 0x140031eda
mov qword [rsp + 0x60], r8
mov r9, rdx
mov r8d, eax
mov rax, qword [rsp + 0x70]
and al, 1
mov qword [rsp + 0x70], rax
lea rax, [rdi + 0x90]
mov qword [rsp + 0x1e8], rax
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x230], ymm0
vmovups ymmword [rsp + 0x248], ymm0
lea rax, [r15 + 0x18]
mov qword [rsp + 0x98], rax
mov rax, qword [r15 + 0x38]
mov qword [rsp + 0x288], rax
vmovups ymm0, ymmword [r15 + 0x18]
vmovups ymmword [rsp + 0x268], ymm0
mov rax, qword [rsp + 0x88]
mov r15, qword [rax + 0xd8]
mov edi, r8d
mov r14, r9
jmp 0x140031f53
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x60], r8
lea r9, [rdi + 0x90]
lea rcx, [r15 + 0x18]
bt rbp, 0x22
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x230], ymm0
vmovups ymmword [rsp + 0x248], ymm0
mov rax, qword [r15 + 0x38]
mov qword [rsp + 0x288], rax
vmovups ymm0, ymmword [r15 + 0x18]
vmovups ymmword [rsp + 0x268], ymm0
mov rax, qword [rsp + 0x88]
mov r15, qword [rax + 0xd8]
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x1e8], r9
mov qword [rsp + 0x98], rcx
jb 0x140032586
mov edi, dword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
test r12, r12
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x38], r14
je 0x14003259c
lea rax, [r13 + 0x270]
mov qword [rsp + 0x298], rax
mov rax, r12
shl rax, 7
lea rax, [rax + r12*8]
xor r12d, r12d
xor ebp, ebp
mov qword [rsp + 0x88], rax
jmp 0x140032102
mov rax, qword [rbx + r12 + 0x50]
mov r9d, dword [rax + 0x3c]
mov r8d, dword [r15 + 0x38]
mov qword [rsp + 0x160], r14
mov dword [rsp + 0x168], edi
mov rax, qword [rsp + 0x60]
mov byte [rsp + 0x16c], al
mov rax, qword [rsp + 0x48]
mov byte [rsp + 0x16d], al
mov rax, qword [rsp + 0x50]
mov word [rsp + 0x16e], ax
mov r14d, edi
mov edi, ebp
lea rbp, [rsp + 0xd0]
mov rcx, rbp
lea rdx, [rsp + 0x160]
vzeroupper
call fcn.140013190
vmovups xmm0, xmmword [rsp + 0xd0]
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], rsi
vmovups xmmword [rsp + 0xe0], xmm0
vmovups ymm0, ymmword [rsp + 0x230]
vmovups ymm1, ymmword [rsp + 0x250]
vmovups ymm2, ymmword [rsp + 0x270]
lea rdx, [rsp + 0xf0]
vmovups ymmword [rdx + 0x40], ymm2
vmovups ymmword [rdx + 0x20], ymm1
vmovups ymmword [rdx], ymm0
mov byte [rsp + 0x150], 1
mov eax, dword [rsp + 0x91]
mov ecx, dword [rsp + 0x94]
mov dword [rdx + 0x64], ecx
mov dword [rdx + 0x61], eax
mov rax, qword [r13 + 0x80]
mov qword [rsp + 0x1e0], rax
vmovups ymm0, ymmword [r13]
vmovups ymm1, ymmword [r13 + 0x20]
vmovups ymm2, ymmword [r13 + 0x40]
vmovups ymm3, ymmword [r13 + 0x60]
vmovups ymmword [rsp + 0x1c0], ymm3
vmovups ymmword [rsp + 0x1a0], ymm2
vmovups ymmword [rsp + 0x180], ymm1
vmovups ymmword [rsp + 0x160], ymm0
mov r13, qword [rsp + 0xa0]
mov rcx, r13
mov rdx, rbp
mov ebp, edi
mov edi, r14d
mov r14, qword [rsp + 0x38]
lea r8, [rsp + 0x160]
vzeroupper
call fcn.140015f30
mov rax, qword [rsp + 0x88]
mov r15, qword [r15]
add r12, 0x88
cmp rax, r12
je 0x14003259e
test byte [r15 + 0x58], 2
jne 0x1400320ef
inc ebp
lea r13, [rbx + r12]
mov rsi, qword [r15 + 0x18]
test byte [rbx + r12 + 0x80], 1
jne 0x140032200
test byte [rbx + r12 + 0xb], 2
jne 0x140031fa0
mov rax, qword [r13 + 0x80]
mov qword [rsp + 0x1e0], rax
vmovups ymm0, ymmword [r13]
vmovups ymm1, ymmword [r13 + 0x20]
vmovups ymm2, ymmword [r13 + 0x40]
vmovups ymm3, ymmword [r13 + 0x60]
vmovups ymmword [rsp + 0x1c0], ymm3
vmovups ymmword [rsp + 0x1a0], ymm2
vmovups ymmword [rsp + 0x180], ymm1
vmovups ymmword [rsp + 0x160], ymm0
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0x160]
mov r8, rsi
vzeroupper
call fcn.140018550
mov rax, qword [rsp + 0x150]
mov qword [r13 + 0x80], rax
vmovups ymm0, ymmword [rsp + 0xd0]
vmovups ymm1, ymmword [rsp + 0xf0]
vmovups ymm2, ymmword [rsp + 0x110]
vmovups ymm3, ymmword [rsp + 0x130]
vmovups ymmword [r13 + 0x60], ymm3
vmovups ymmword [r13 + 0x40], ymm2
vmovups ymmword [r13 + 0x20], ymm1
vmovups ymmword [r13], ymm0
cmp byte [r13 + 0x80], 0
jne 0x140031fa0
jmp 0x14003285f
mov rax, qword [rbx + r12 + 8]
mov r9d, dword [rax + 0x3c]
mov r8d, dword [r15 + 0x38]
mov qword [rsp + 0x160], r14
mov dword [rsp + 0x168], edi
mov rax, qword [rsp + 0x60]
mov byte [rsp + 0x16c], al
mov rax, qword [rsp + 0x48]
mov byte [rsp + 0x16d], al
mov rax, qword [rsp + 0x50]
mov word [rsp + 0x16e], ax
lea rcx, [rsp + 0xd0]
mov rdi, rsi
lea rdx, [rsp + 0x160]
vzeroupper
call fcn.140013190
mov rcx, qword [rsp + 0xd0]
mov edx, dword [rsp + 0xd8]
movzx r14d, byte [rsp + 0xdc]
movzx r10d, byte [rsp + 0xdd]
movzx r11d, word [rsp + 0xde]
vmovups xmm0, xmmword [r13]
vmovaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rbx + r12 + 0x10]
mov r8d, dword [rbx + r12 + 0x18]
movzx esi, byte [rbx + r12 + 0x1c]
movzx r9d, byte [rbx + r12 + 0x1d]
vmovups ymm0, ymmword [rbx + r12 + 0x68]
vmovups ymmword [rsp + 0x2ea], ymm0
vmovups ymm0, ymmword [rbx + r12 + 0x5e]
vmovups ymmword [rsp + 0x2e0], ymm0
vmovups ymm0, ymmword [rbx + r12 + 0x3e]
vmovups ymmword [rsp + 0x2c0], ymm0
vmovups ymm0, ymmword [rbx + r12 + 0x1e]
vmovups ymmword [rsp + 0x2a0], ymm0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd8], rdi
mov rdi, rax
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xe0], rcx
mov dword [rsp + 0x40], edx
mov dword [rsp + 0xe8], edx
mov byte [rsp + 0xec], r14b
mov byte [rsp + 0x78], r10b
mov byte [rsp + 0xed], r10b
mov word [rsp + 0x36], r11w
mov word [rsp + 0xee], r11w
vmovups ymm0, ymmword [rsp + 0x230]
vmovups ymm1, ymmword [rsp + 0x250]
vmovups ymm2, ymmword [rsp + 0x270]
lea rdx, [rsp + 0xf0]
vmovups ymmword [rdx + 0x40], ymm2
vmovups ymmword [rdx + 0x20], ymm1
vmovups ymmword [rdx], ymm0
mov byte [rsp + 0x150], 1
mov eax, dword [rsp + 0x91]
mov ecx, dword [rsp + 0x94]
mov dword [rdx + 0x64], ecx
mov dword [rdx + 0x61], eax
vmovups xmm0, xmmword [r13]
vmovaps xmmword [rsp + 0x160], xmm0
mov qword [rsp + 0x170], rdi
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0x178], r8d
mov byte [rsp + 0x17c], sil
mov byte [rsp + 0x80], r9b
mov byte [rsp + 0x17d], r9b
vmovups ymm0, ymmword [rbx + r12 + 0x1e]
vmovups ymm1, ymmword [rbx + r12 + 0x3e]
vmovups ymm2, ymmword [rbx + r12 + 0x5e]
vmovups ymm3, ymmword [rbx + r12 + 0x68]
lea rax, [rsp + 0x17e]
vmovups ymmword [rax + 0x4a], ymm3
vmovups ymmword [rax + 0x40], ymm2
vmovups ymmword [rax + 0x20], ymm1
vmovups ymmword [rax], ymm0
mov rcx, qword [rsp + 0xa0]
mov r13, rcx
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0x160]
vzeroupper
call fcn.140015440
test al, al
jne 0x140032578
cmp r14b, sil
jne 0x140032465
cmp r14b, 4
jne 0x140032449
cmp qword [rsp + 0xa8], rdi
jne 0x140032465
mov eax, dword [rsp + 0x40]
cmp eax, dword [rsp + 0x44]
jne 0x140032465
movzx eax, byte [rsp + 0x78]
cmp al, byte [rsp + 0x80]
je 0x140032578
mov rcx, qword [rsp + 0x298]
call fcn.140001b80
mov byte [rax + 8], 3
mov qword [rax + 0x10], 0
mov rcx, qword [rsp + 0xc8]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0xa8]
mov qword [rax + 0x20], rcx
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x28], ecx
mov byte [rax + 0x2c], r14b
movzx ecx, byte [rsp + 0x78]
mov byte [rax + 0x2d], cl
movzx ecx, word [rsp + 0x36]
mov word [rax + 0x2e], cx
vmovups ymm0, ymmword [rsp + 0x230]
vmovups ymm1, ymmword [rsp + 0x250]
vmovups ymm2, ymmword [rsp + 0x270]
vmovups ymmword [rax + 0x30], ymm0
vmovups ymmword [rax + 0x50], ymm1
vmovups ymmword [rax + 0x70], ymm2
mov byte [rax + 0x90], 1
mov ecx, dword [rsp + 0x91]
mov edx, dword [rsp + 0x94]
mov dword [rax + 0x91], ecx
mov dword [rax + 0x94], edx
vmovaps xmm0, xmmword [rsp + 0xb0]
vmovups xmmword [rax + 0x98], xmm0
mov qword [rax + 0xa8], rdi
mov ecx, dword [rsp + 0x44]
mov dword [rax + 0xb0], ecx
mov byte [rax + 0xb4], sil
movzx ecx, byte [rsp + 0x80]
mov byte [rax + 0xb5], cl
vmovups ymm0, ymmword [rsp + 0x2a0]
vmovups ymm1, ymmword [rsp + 0x2c0]
vmovups ymm2, ymmword [rsp + 0x2e0]
vmovups ymm3, ymmword [rsp + 0x2ea]
vmovups ymmword [rax + 0x100], ymm3
vmovups ymmword [rax + 0xf6], ymm2
vmovups ymmword [rax + 0xd6], ymm1
vmovups ymmword [rax + 0xb6], ymm0
mov edi, dword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
jmp 0x1400320e7
test r12, r12
je 0x14003259c
cmp r12d, 1
jne 0x14003280b
xor ebp, ebp
jmp 0x140032844
xor ebp, ebp
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x58]
mov r14, qword [rsp + 0x3b0]
movzx ebx, byte [rsp + 0x3a0]
movzx edi, byte [rsp + 0x398]
lea rcx, [r13 + 0x270]
vzeroupper
call fcn.140001b80
mov rsi, rax
bt qword [rsp + 0xc0], 0x22
mov byte [rax + 8], 0x1a
mov qword [rax + 0x10], r13
mov r8, qword [rsp + 0x98]
vmovups ymm0, ymmword [r8]
vmovups ymmword [rax + 0x88], ymm0
mov rax, qword [r8 + 0x20]
mov qword [rsi + 0xa8], rax
mov qword [rsi + 0x18], r15
mov rax, qword [rsp + 0x38]
mov qword [rsi + 0x30], rax
mov eax, dword [rsp + 0x30]
mov dword [rsi + 0x38], eax
mov rax, qword [rsp + 0x60]
mov byte [rsi + 0x3c], al
mov rax, qword [rsp + 0x48]
mov byte [rsi + 0x3d], al
mov rax, qword [rsp + 0x50]
mov word [rsi + 0x3e], ax
vmovups xmm0, xmmword [r14]
vmovups xmmword [rsi + 0x20], xmm0
jae 0x140032659
vmovups ymm0, ymmword [rsp + 0x1f0]
vmovups ymm1, ymmword [rsp + 0x208]
vmovups ymmword [rsi + 0x68], ymm1
vmovups ymmword [rsi + 0x50], ymm0
test ebp, ebp
setne al
add al, al
lea ecx, [rax + 4]
test dil, dil
movzx eax, al
movzx ecx, cl
cmove ecx, eax
lea eax, [rcx + 8]
mov rdx, qword [rsp + 0x70]
test dl, dl
movzx eax, al
cmove eax, ecx
test bl, bl
setne cl
or cl, al
mov byte [rsi + 0xb0], cl
test r12, r12
je 0x1400328c3
mov rbx, qword [rsp + 0x390]
mov byte [rbx + 0x80], 1
mov rax, qword [rsp + 0x1e8]
mov rax, qword [rax]
mov qword [rbx + 8], rax
vmovups ymm0, ymmword [r8]
vmovups ymmword [rbx + 0x58], ymm0
mov rax, qword [r8 + 0x20]
mov qword [rbx + 0x78], rax
or byte [rsi + 0xb0], 2
lea rdi, [rbx + 0x10]
test dl, dl
je 0x140032728
mov r8d, dword [r12 + 0x3c]
mov eax, dword [r12 + 0x40]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0xd0]
mov rdx, r13
mov r9, r12
vzeroupper
call fcn.140012f70
vmovups xmm0, xmmword [rsp + 0xd0]
vmovups xmmword [rdi], xmm0
mov rcx, qword [rbx + 0x10]
mov edx, dword [rbx + 0x18]
movzx eax, byte [rbx + 0x1c]
test eax, eax
jne 0x1400327a8
cmp edx, 0xffffffff
jne 0x1400327a8
xor eax, eax
jmp 0x14003289a
bt qword [rsp + 0xc0], 0x22
jb 0x1400327dd
mov r9d, dword [r12 + 0x3c]
movsxd r8, dword [r15 + 0x78]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x160], rax
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x168], eax
mov rax, qword [rsp + 0x60]
mov byte [rsp + 0x16c], al
mov rax, qword [rsp + 0x48]
mov byte [rsp + 0x16d], al
mov rax, qword [rsp + 0x50]
mov word [rsp + 0x16e], ax
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0x160]
vzeroupper
call fcn.140013190
vmovups xmm0, xmmword [rsp + 0xd0]
vmovups xmmword [rdi], xmm0
jmp 0x1400328b2
dec eax
cmp eax, 4
ja case.default.0x1400327c4
movsxd rdx, edx
lea r8, [0x1400b27dc]
movsxd rax, dword [r8 + rax*4]
add rax, r8
jmp rax
movsxd rax, dword [0x1400e4630]
imul rax, rdx
add rax, qword [0x1400e4628]
jmp 0x14003289a
mov rax, qword [rsp + 0x38]
mov qword [rbx + 0x10], rax
mov eax, dword [rsp + 0x30]
mov dword [rbx + 0x18], eax
mov rax, qword [rsp + 0x60]
mov byte [rbx + 0x1c], al
mov rax, qword [rsp + 0x48]
mov byte [rbx + 0x1d], al
mov rax, qword [rsp + 0x50]
mov word [rbx + 0x1e], ax
jmp 0x1400328b2
mov eax, r12d
and eax, 0xfffffffe
xor ebp, ebp
nop word cs:[rax + rax]
xor ecx, ecx
test byte [r15 + 0x58], 2
sete cl
mov rdx, qword [r15]
movzx r8d, byte [rdx + 0x58]
and r8b, 2
cmp r8b, 1
adc ebp, ecx
mov r15, qword [rdx]
add eax, 0xfffffffe
jne 0x140032820
test r12b, 1
je 0x14003259e
movzx eax, byte [r15 + 0x58]
and al, 2
cmp al, 1
adc ebp, 0
jmp 0x14003259e
xor esi, esi
jmp 0x140032979
movsxd rax, dword [0x1400e45f8]
imul rax, rdx
add rax, qword [0x1400e45f0]
jmp 0x14003289a
movsxd rax, dword [rcx + 0x38]
imul rax, rdx
add rax, qword [rcx + 0x30]
jmp 0x14003289a
movsxd rax, dword [0x1400e4668]
imul rax, rdx
add rax, qword [0x1400e4660]
cmp byte [r12 + 0x54], 0
jne 0x1400328ae
test byte [r12 + 0x59], 0x20
jne 0x14003299b
or byte [rax + 0xc], 4
or byte [rbx + 0x80], 8
vmovups xmm0, xmmword [rbx + 0x10]
vmovups xmmword [rsi + 0x40], xmm0
mov rax, qword [r15 + 0x58]
mov sil, 1
test al, 2
je 0x140032979
test eax, 0x40000
jne 0x140032919
test eax, 0x200000
jne 0x140032979
mov eax, dword [0x1400e458c]
lea rbx, [0x1400e458c]
lea rdi, [0x1400e4580]
mov dword [r15 + 0x168], eax
mov r14d, 0x200000
mov r12, r15
lea r15, [0x1400e4588]
cmp eax, dword [0x1400e4590]
je 0x140032953
jmp 0x140032960
test eax, 0x100000
jne 0x140032979
mov eax, dword [0x1400e45c4]
lea rbx, [0x1400e45c4]
lea rdi, [0x1400e45b8]
mov dword [r15 + 0x168], eax
mov r14d, 0x100000
mov r12, r15
lea r15, [0x1400e45c0]
cmp eax, dword [0x1400e45c8]
jne 0x140032960
mov rcx, rdi
vzeroupper
call fcn.140001620
mov eax, dword [rbx]
mov rcx, qword [rdi]
movsxd rdx, dword [r15]
cdqe
imul rdx, rax
inc eax
mov dword [rbx], eax
mov qword [rcx + rdx], r12
or qword [r12 + 0x58], r14
mov eax, esi
vmovaps xmm6, xmmword [rsp + 0x310]
add rsp, 0x328
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
vzeroupper
ret
or byte [rax + 0xc], 8
jmp 0x1400328b2