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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x120
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x140057010]
xor rax, rsp
mov qword [rsp + 0xf0], rax
movzx eax, word [rcx + 0x228]
lea rbx, [rsp + 0x70]
mov r13, qword [0x140057908]
xor ebp, ebp
mov r12, qword [rcx + 0x1a0]
mov esi, 4
mov word [rsp + 0x20], ax
mov r14, rcx
movzx eax, word [rcx + 0x22c]
mov r15d, ebp
mov word [rsp + 0x28], ax
mov edi, esi
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x60], r12
nop
mov rcx, rbx
call fcn.140033230
add rbx, 0x20
sub rdi, 1
jne 0x140032a00
mov eax, dword [r14 + 0x6c]
lea edi, [rax*2 + 0x23]
sar edi, 3
and edi, 0xfffffffc
mov dword [rsp + 0x4c], edi
lea ebx, [rdi + rdi*4]
movd xmm6, edi
pshufd xmm6, xmm6, 0
movsxd r14, ebx
cmp ebx, dword [r13 + 0x55d4]
jle 0x140032a83
mov rcx, r14
call fcn.14000a130
mov rdx, qword [r13 + 0x55d8]
mov rdi, rax
test rdx, rdx
je 0x140032a71
movsxd r8, dword [r13 + 0x55d0]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r13 + 0x55d8]
call fcn.14000a1e0
mov qword [r13 + 0x55d8], rdi
mov edi, dword [rsp + 0x4c]
mov dword [r13 + 0x55d4], ebx
mov rcx, qword [r13 + 0x55d8]
mov r8, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
cmp dword [0x140057018], 2
mov r8, qword [r13 + 0x55d8]
jl 0x140032aff
movdqa xmm4, xmmword [0x14004e870]
lea rdx, [rsp + 0xa8]
movq xmm3, r8
mov ecx, ebp
punpcklqdq xmm3, xmm3
nop
movd xmm2, ecx
lea rdx, [rdx + 0x40]
pshufd xmm2, xmm2, 0
movq xmm0, xmm4
paddd xmm2, xmm0
movq xmm1, xmm6
pmulld xmm2, xmm1
pmovsxdq xmm0, xmm2
paddq xmm0, xmm3
add ecx, 2
movq qword [rdx - 0x60], xmm0
psrldq xmm0, 8
movq qword [rdx - 0x40], xmm0
cmp ecx, esi
jl 0x140032ac0
jmp 0x140032b24
lea rcx, [rsp + 0x88]
movsxd r9, edi
mov rdx, rbp
nop dword [rax]
lea rax, [rdx + r8]
add rdx, r9
mov qword [rcx], rax
lea rcx, [rcx + 0x20]
sub rsi, 1
jne 0x140032b10
mov rsi, qword [rsp + 0x50]
lea eax, [rdi*4]
mov edx, ebp
cdqe
add rax, r8
mov dword [rsp + 0x24], edx
mov qword [rsp + 0x30], rax
cmp dword [rsi + 0x6c], edx
jle 0x1400331eb
mov edi, 1
mov r9, rbp
mov r8d, edi
mov dword [rsp + 0x48], edi
lea r13d, [rdi + 1]
nop dword [rax]
mov rax, qword [rsi + 0x58]
movsxd rcx, edx
sar rcx, 5
test dword [rax + rcx*4], r8d
je 0x140032d6a
movzx r8d, word [rsp + 0x20]
mov eax, ebp
mov r10, qword [rsi + 0x18]
test r8w, r8w
mov ebx, ebp
setg al
inc eax
mov dword [rsp + 0x58], eax
jmp 0x140032b98
movzx r8d, word [rsp + 0x20]
test ebx, ebx
jne 0x140032ba4
movzx eax, word [r9 + r10 + 0x62]
jmp 0x140032baa
movzx eax, word [r9 + r10 + 0x64]
movzx r14d, ax
mov r11d, r14d
mov esi, r14d
shl r11, 5
add r11, qword [r12 + 0x10]
movsxd rax, dword [r11]
mov ecx, eax
test eax, eax
jle 0x140032c02
mov rdi, qword [r11 + 8]
mov rdx, rax
shl rdx, 6
cmp dword [rdx + rdi - 0x20], ebp
jne 0x140032bf9
cmp qword [rdx + rdi - 0x18], rbp
lea r8d, [rax - 1]
mov edx, dword [rsp + 0x24]
mov edi, 1
jne 0x140032bf1
mov dword [r11], r8d
mov ecx, r8d
movzx r8d, word [rsp + 0x20]
jmp 0x140032c02
mov edx, dword [rsp + 0x24]
mov edi, 1
cmp ecx, 1
jne 0x140032d40
test dword [r9 + r10], 0x100
jne 0x140032c52
test r8w, r8w
jg 0x140032c2b
movss xmm0, dword [r9 + r10 + 0x48]
maxss xmm0, dword [r9 + r10 + 0x4c]
jmp 0x140032c46
test ebx, ebx
jne 0x140032c3f
movss xmm0, dword [r9 + r10 + 0x44]
maxss xmm0, dword [r9 + r10 + 0x4c]
jmp 0x140032c46
movss xmm0, dword [r9 + r10 + 0x48]
comiss xmm0, dword [r9 + r10 + 0x2c]
ja 0x140032d40
cmp word [rsp + 0x28], bp
jle 0x140032c70
mov rax, qword [rsp + 0x50]
movsx eax, word [rax + 0x22c]
cmp edx, eax
jge 0x140032c70
mov ecx, ebp
mov r8, rbp
jmp 0x140032c78
mov ecx, edi
mov r8d, 0x20
movzx eax, word [rsp + 0x20]
test ax, ax
jle 0x140032c8f
test ebx, ebx
jne 0x140032c8f
mov eax, ebp
lea rdx, [rsp + 0x70]
jmp 0x140032c9a
mov eax, r13d
lea rdx, [rsp + 0xb0]
lea edi, [rax + rcx]
cmp dword [rdx + r8 + 0x10], ebp
jne 0x140032cc7
mov dword [rdx + r8], 0x7f7fffff
mov dword [rdx + r8 + 4], 0x7f7fffff
mov dword [rdx + r8 + 8], 0xff7fffff
mov dword [rdx + r8 + 0xc], 0xff7fffff
mov rcx, qword [rdx + r8 + 0x18]
and r14d, 0x1f
shr rsi, 5
mov eax, dword [rcx + rsi*4]
bts eax, r14d
mov dword [rcx + rsi*4], eax
inc dword [rdx + r8 + 0x10]
mov rax, qword [r11 + 8]
movss xmm0, dword [rdx + r8]
movss xmm4, dword [rax]
comiss xmm0, xmm4
movss xmm1, dword [rax + 4]
movss xmm2, dword [rax + 8]
movss xmm3, dword [rax + 0xc]
jbe 0x140032d0b
movss dword [rdx + r8], xmm4
movss xmm0, dword [rdx + r8 + 4]
comiss xmm0, xmm1
jbe 0x140032d1e
movss dword [rdx + r8 + 4], xmm1
comiss xmm2, dword [rdx + r8 + 8]
jbe 0x140032d2d
movss dword [rdx + r8 + 8], xmm2
comiss xmm3, dword [rdx + r8 + 0xc]
jbe 0x140032d3c
movss dword [rdx + r8 + 0xc], xmm3
bts r15d, edi
mov edx, dword [rsp + 0x24]
inc ebx
mov edi, 1
cmp ebx, dword [rsp + 0x58]
jl 0x140032b92
mov r8d, dword [rsp + 0x48]
mov eax, 0xffff
mov rsi, qword [rsp + 0x50]
mov word [r9 + r10 + 0x60], ax
inc edx
rol r8d, 1
add r9, 0x74
mov dword [rsp + 0x24], edx
mov dword [rsp + 0x48], r8d
cmp edx, dword [rsi + 0x6c]
jl 0x140032b60
test r15d, r15d
je 0x1400331eb
mov edx, dword [r12 + 4]
mov r14, r12
mov rbx, qword [rsp + 0x68]
sub edx, r13d
movaps xmmword [rsp + 0x100], xmm7
lea rcx, [rbx + 0x4f28]
call fcn.14002fa90
mov r10d, dword [r12 + 4]
mov r11, qword [rbx + 0x4f30]
dec r10d
cmp r10d, r13d
jl 0x140032e2a
mov r14, qword [rsp + 0x30]
mov ebx, r10d
and ebx, 0x1f
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
movsxd r9, r13d
or eax, 0x1f
sar r9, 5
mov r8d, r13d
mov ecx, 0x1f
and r8d, 0x1f
mov rdx, rdi
cmp r10d, eax
mov rax, rdi
cmovle ecx, ebx
add r13d, 0x20
inc ecx
and r13d, 0xffffffe0
shl rdx, cl
mov ecx, r8d
shl rax, cl
dec edx
neg eax
and edx, eax
or dword [r14 + r9*4], edx
cmp r13d, r10d
jle 0x140032de0
mov r14, r12
movzx ecx, word [rsi + 0x234]
lea rdi, [rsp + 0x88]
mov rbx, qword [rsp + 0x30]
mov edx, ecx
movdqa xmm7, xmmword [0x14004eb70]
and ecx, 0x1f
shr rdx, 5
mov r12d, ebp
mov eax, dword [rbx + rdx*4]
btr eax, ecx
mov dword [rbx + rdx*4], eax
mov eax, ebp
movzx edx, word [rsp + 0x20]
movups xmm0, xmmword [rsi + 0x160]
mov r13d, dword [r14 + 4]
test dx, dx
movups xmmword [rsp + 0x38], xmm0
setg al
movss xmm3, dword [rsp + 0x44]
add eax, 2
movss xmm4, dword [rsp + 0x40]
sub r13d, eax
movss xmm6, dword [rsp + 0x3c]
movss xmm5, dword [rsp + 0x38]
nop word [rax + rax]
mov esi, dword [rdi - 8]
test esi, esi
je 0x140033221
movups xmm2, xmmword [rdi - 0x18]
mov ecx, r12d
movups xmmword [rsp + 0x38], xmm2
and ecx, 1
je 0x140032ec3
cmp word [rsp + 0x28], bp
jg 0x140032ed6
comiss xmm5, xmm2
ja 0x140032ed6
movups xmm2, xmmword [rsp + 0x38]
movss xmm2, xmm5
movups xmmword [rsp + 0x38], xmm2
mov eax, r12d
and eax, 2
je 0x140032ee3
test dx, dx
jg 0x140032f05
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
comiss xmm6, xmm0
ja 0x140032f05
movups xmm2, xmmword [rsp + 0x38]
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm6
shufps xmm2, xmm2, 0xe1
movups xmmword [rsp + 0x38], xmm2
test ecx, ecx
je 0x140032f2b
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xaa
comiss xmm0, xmm4
jae 0x140032f2b
movups xmm2, xmmword [rsp + 0x38]
shufps xmm2, xmm2, 0xd2
movss xmm2, xmm4
shufps xmm2, xmm2, 0xc9
movups xmmword [rsp + 0x38], xmm2
test eax, eax
je 0x140032f5f
mov rax, qword [rsp + 0x50]
test dword [rax + 4], 0x20000
jne 0x140032f5f
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xff
comiss xmm0, xmm3
jae 0x140032f5f
movups xmm2, xmmword [rsp + 0x38]
shufps xmm2, xmm2, 0x93
movss xmm2, xmm3
shufps xmm2, xmm2, 0x39
movups xmmword [rsp + 0x38], xmm2
mov edx, dword [rsp + 0x4c]
sub r13d, esi
sar edx, 2
mov r9, rbp
test edx, edx
jle 0x140033079
cmp edx, 0x10
jb 0x140033079
mov r8, qword [rdi]
lea eax, [rdx - 1]
movsxd rcx, eax
lea rax, [r8 + rcx*4]
lea r10, [rbx + rcx*4]
cmp rbx, rax
ja 0x140032f9c
cmp r10, r8
jae 0x140033079
cmp rbx, rdi
ja 0x140032faa
cmp r10, rdi
jae 0x140033079
mov ecx, edx
and ecx, 0x8000000f
jge 0x140032fbb
dec ecx
or ecx, 0xfffffff0
inc ecx
mov eax, edx
mov r10, 0xfffffffffffffff0
sub eax, ecx
sub r10, rbx
lea rcx, [rbx + 0x20]
movsxd r15, eax
mov ebx, 0x10
mov r14, 0xffffffffffffffe0
sub rbx, qword [rsp + 0x30]
sub r14, qword [rsp + 0x30]
nop word [rax + rax]
movdqu xmm0, xmmword [rcx - 0x20]
lea rax, [r14 + rcx]
add r9, 0x10
movdqu xmm1, xmmword [rax + r8]
lea rax, [r10 + rcx]
pandn xmm1, xmm7
pand xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
movdqu xmm0, xmmword [rcx - 0x10]
movdqu xmm1, xmmword [rax + r8]
mov rax, rcx
sub rax, qword [rsp + 0x30]
pandn xmm1, xmm7
pand xmm1, xmm0
movdqu xmmword [rcx - 0x10], xmm1
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rax + r8]
lea rax, [rbx + rcx]
pandn xmm1, xmm7
pand xmm1, xmm0
movdqu xmmword [rcx], xmm1
movdqu xmm0, xmmword [rcx + 0x10]
movdqu xmm1, xmmword [rax + r8]
pandn xmm1, xmm7
pand xmm1, xmm0
movdqu xmmword [rcx + 0x10], xmm1
add rcx, 0x40
cmp r9, r15
jl 0x140032ff0
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x30]
movsxd r8, edx
cmp r9, r8
jge 0x1400330aa
lea rdx, [rbx + r9*4]
sub r8, r9
nop dword [rax + rax]
mov rax, qword [rdi]
mov rcx, rdx
sub rcx, rbx
mov ecx, dword [rcx + rax]
not ecx
and dword [rdx], ecx
add rdx, 4
sub r8, 1
jne 0x140033090
mov r8d, ebp
mov r15d, 1
cmp dword [r14 + 4], ebp
jle 0x14003311b
mov edx, r15d
mov r9, rbp
nop
test esi, esi
je 0x14003311b
mov rbx, qword [rdi]
movsxd rcx, r8d
sar rcx, 5
mov r10d, dword [rbx + rcx*4]
test r10d, edx
je 0x14003310c
mov eax, r8d
dec esi
and eax, 0x1f
btr r10d, eax
mov dword [rbx + rcx*4], r10d
mov rcx, qword [r14 + 0x10]
mov rax, qword [r9 + rcx + 8]
movups xmmword [rax], xmm2
mov rax, r11
add r11, 0x20
movups xmm0, xmmword [r9 + rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [r9 + rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
inc r8d
rol edx, 1
add r9, 0x20
cmp r8d, dword [r14 + 4]
jl 0x1400330c0
movzx edx, word [rsp + 0x20]
cmp r12d, 1
jne 0x140033156
test dx, dx
jle 0x140033156
mov rax, qword [rsp + 0x50]
mov rdx, r11
add r11, 0x20
movzx ecx, word [rax + 0x234]
mov rax, qword [r14 + 0x10]
shl rcx, 5
movups xmm0, xmmword [rcx + rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rcx + rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov rbx, qword [rsp + 0x30]
inc r12d
movzx edx, word [rsp + 0x20]
add rdi, 0x20
cmp r12d, 4
jl 0x140032ea0
mov eax, dword [r14 + 4]
movaps xmm7, xmmword [rsp + 0x100]
test eax, eax
jle 0x1400331c8
mov rdx, rbp
test r13d, r13d
je 0x1400331c8
movsxd rax, ebp
mov rcx, rbx
sar rax, 5
test dword [rbx + rax*4], r15d
je 0x1400331b7
mov rax, qword [r14 + 0x10]
mov rcx, r11
add r11, 0x20
dec r13d
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov eax, dword [r14 + 4]
inc ebp
rol r15d, 1
add rdx, 0x20
cmp ebp, eax
jl 0x140033184
mov rcx, qword [r14 + 0x10]
add eax, 0xfffffffe
mov rdx, qword [rsp + 0x68]
add rcx, 0x40
movsxd r8, eax
shl r8, 5
mov rdx, qword [rdx + 0x4f30]
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.140044c50
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov r15d, 1
jmp 0x140033120