Function at 0x140045020
Capabilities:
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x108]
sub rsp, 0x208
mov r14, qword [0x1401d33a8]
mov r15, rcx
mov ebx, r8d
vmovaps xmmword [rsp + 0x170], xmm14
mov r8d, 0xffffffff
mov ecx, r8d
movzx r10d, byte [r15]
lea r9, [r15 + 1]
test r10b, r10b
je 0x1400450a8
lea r11, [0x1401145c0]
cmp r10b, 0x23
jne 0x14004508b
cmp byte [r9], r10b
jne 0x14004508b
cmp byte [r9 + 1], r10b
cmove ecx, r8d
movzx edx, cl
movzx eax, r10b
movzx r10d, byte [r9]
xor rdx, rax
shr ecx, 8
inc r9
xor ecx, dword [r11 + rdx*4]
test r10b, r10b
jne 0x140045078
not ecx
call fcn.140042630
test rax, rax
mov qword [rbp - 0x70], rax
mov r12, rax
mov qword [rbp - 0x58], rax
sete byte [rsp + 0x40]
mov rsi, rax
mov rcx, rax
mov rdx, rax
mov r10, rax
mov r8, rax
mov r11, rax
mov r9, rax
mov rdi, rax
test rax, rax
jne 0x140045105
mov edx, ebx
mov rcx, r15
call fcn.140042830
mov rsi, rax
mov qword [rbp - 0x58], rax
mov rcx, rax
mov rdx, rax
mov r10, rax
mov r8, rax
mov r11, rax
mov r9, rax
mov rdi, rax
mov eax, ebx
mov r15d, ebx
and eax, 0x30200
or r15d, 6
cmp eax, 0x30200
mov eax, dword [rcx + 0x270]
mov dword [rsp + 0x4c], eax
cmovne r15d, ebx
cmp dword [r14 + 0x4008], 0
mov ebx, dword [r14 + 0x3f90]
mov dword [rsp + 0x50], ebx
jne 0x140045149
cmp byte [r14 + 0x3f9d], 0
je 0x140045149
mov al, 1
jmp 0x140045154
xor al, al
mov rdx, r10
mov r8, r11
mov r9, rdi
mov byte [rdx + 0xc6], al
lea eax, [rbx - 1]
cmp dword [rcx + 0x270], eax
setl dl
mov byte [rbp + 0x158], dl
bt r15d, 0x1a
jae 0x1400451a2
movsxd rax, dword [r14 + 0x4ad0]
imul rax, rax, 0x38
add rax, qword [r14 + 0x4ac8]
cmp r8, qword [rax + 8]
mov eax, dword [rax]
setne cl
cmp dword [r9 + 0xd8], eax
setne al
or cl, al
or dl, cl
mov byte [rbp + 0x158], dl
mov byte [rsi + 0xc4], dl
test dl, dl
je 0x1400451c1
or byte [rsi + 0xe8], 8
or byte [rsi + 0xe9], 8
or byte [rsi + 0xea], 8
mov edi, dword [rsp + 0x4c]
xor ecx, ecx
cmp edi, ebx
je 0x140045353
mov rbx, qword [0x1401d33a8]
mov qword [rbp + 0x168], rsi
bt r15d, 0x18
jae 0x1400451f8
mov eax, r15d
and eax, 0x14000000
cmp eax, 0x4000000
je 0x1400451f8
mov dil, 1
jmp 0x1400451fb
xor dil, dil
movzx eax, byte [rsi + 0xc7]
test r12, r12
je 0x140045210
cmp dil, al
je 0x1400452eb
test dil, dil
jne 0x14004523e
lea rdx, [rbp + 0x168]
lea rcx, [rbx + 0x3fe8]
call fcn.140053c10
movzx eax, word [rbx + 0x3fe8]
dec ax
mov word [rsi + 0xd4], ax
jmp 0x1400452e9
test r12, r12
je 0x1400452eb
cmp dil, al
je 0x1400452eb
test dil, dil
je 0x1400452eb
movsx edx, word [rsi + 0xd4]
mov r9d, dword [rbx + 0x3fe8]
inc edx
cmp edx, r9d
jge 0x1400452a5
movsxd rax, edx
lea r8, [rax*8]
nop dword [rax]
mov rax, qword [rbx + 0x3ff0]
lea r8, [r8 + 8]
inc edx
mov rcx, qword [rax + r8 - 8]
dec word [rcx + 0xd4]
mov r9d, dword [rbx + 0x3fe8]
cmp edx, r9d
jl 0x140045280
mov rax, qword [rbx + 0x3ff0]
movsx rcx, word [rsi + 0xd4]
movsxd r8, r9d
lea rdx, [rax + rcx*8]
sub rdx, rax
sar rdx, 3
sub r8, rdx
lea rcx, [rax + rdx*8]
lea r8, [r8*8 - 8]
lea rdx, [rcx + 8]
call sub.VCRUNTIME140.dll_memmove
dec dword [rbx + 0x3fe8]
mov word [rsi + 0xd4], 0xffff
xor ecx, ecx
mov byte [rsi + 0xc7], dil
mov dword [rsi + 0x14], r15d
test dword [r14 + 0x49e8], 0x100
je 0x14004530c
mov eax, dword [r14 + 0x4a20]
jmp 0x14004530e
mov eax, ecx
mov ebx, dword [rsp + 0x50]
mov edi, dword [rsp + 0x4c]
mov dword [rsi + 0x18], eax
mov dword [rsi + 0x270], ebx
vmovsd xmm0, qword [r14 + 0x3f88]
vcvtpd2ps xmm0, xmm0
vmovss dword [rsi + 0x274], xmm0
mov word [rsi + 0xd0], cx
movzx eax, word [r14 + 0x4028]
inc dword [r14 + 0x4028]
mov word [rsi + 0xd2], ax
jmp 0x140045357
mov r15d, dword [rsi + 0x14]
movsxd rax, dword [r14 + 0x4008]
test eax, eax
jne 0x140045367
mov r13, rcx
jmp 0x140045379
imul rcx, rax, 0x58
mov rax, qword [r14 + 0x4010]
mov r13, qword [rcx + rax - 0x58]
xor ecx, ecx
cmp edi, ebx
je 0x14004538d
test r15d, 0x5000000
mov r12, rcx
cmovne r12, r13
jmp 0x140045394
mov r12, qword [rsi + 0x378]
cmp dword [rsi + 0x100], 0
mov qword [rbp - 0x78], r12
jne 0x1400453b1
lea rdx, [rsi + 0x10]
lea rcx, [rsi + 0x100]
call fcn.140053eb0
mov eax, dword [r14 + 0x49e0]
vmovups xmm1, xmmword [r14 + 0x49c8]
mov dword [rbp + 0x30], eax
mov qword [r14 + 0x4038], rsi
movzx eax, word [rsi + 0x100]
mov ecx, dword [r14 + 0x400c]
mov ebx, dword [r14 + 0x4008]
mov qword [rbp - 0x10], rsi
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x34], xmm0
mov word [rbp + 0x34], ax
movzx eax, word [r14 + 0x4a60]
mov word [rbp + 0x36], ax
movzx eax, word [r14 + 0x4a70]
mov word [rbp + 0x38], ax
movzx eax, word [r14 + 0x4a80]
mov word [rbp + 0x3a], ax
movzx eax, word [r14 + 0x4a90]
mov word [rbp + 0x3c], ax
movzx eax, word [r14 + 0x4ab0]
mov word [rbp + 0x3e], ax
movzx eax, word [r14 + 0x4aa0]
mov word [rbp + 0x40], ax
movzx eax, word [r14 + 0x4ad0]
mov word [rbp + 0x42], ax
movzx eax, word [r14 + 0x5e64]
mov word [rbp + 0x44], ax
vmovups ymm0, ymmword [r14 + 0x49a8]
vmovups ymmword [rbp - 8], ymm0
vmovsd xmm0, qword [r14 + 0x49d8]
vmovups xmmword [rbp + 0x18], xmm1
vmovsd qword [rbp + 0x28], xmm0
cmp ebx, ecx
jne 0x1400454e4
inc ebx
test ecx, ecx
je 0x140045487
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14004548c
mov eax, 8
cmp eax, ebx
cmovg ebx, eax
cmp ebx, ecx
jle 0x1400454e4
movsxd rax, ebx
imul rcx, rax, 0x58
vzeroupper
call fcn.14003edf0
mov rdx, qword [r14 + 0x4010]
mov rdi, rax
test rdx, rdx
je 0x1400454d2
movsxd rcx, dword [r14 + 0x4008]
imul r8, rcx, 0x58
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r14 + 0x4010]
call fcn.14003ee90
mov qword [r14 + 0x4010], rdi
mov edi, dword [rsp + 0x4c]
mov dword [r14 + 0x400c], ebx
movsxd rax, dword [r14 + 0x4008]
vmovups ymm0, ymmword [rbp - 0x10]
vmovups ymm1, ymmword [rbp + 0x10]
imul rcx, rax, 0x58
mov rax, qword [r14 + 0x4010]
vmovups ymmword [rcx + rax], ymm0
vmovups xmm0, xmmword [rbp + 0x30]
vmovups ymmword [rcx + rax + 0x20], ymm1
vmovsd xmm1, qword [rbp + 0x40]
vmovups xmmword [rcx + rax + 0x40], xmm0
vmovsd qword [rcx + rax + 0x50], xmm1
inc dword [r14 + 0x4008]
bt r15d, 0x1c
jae 0x140045536
inc dword [r14 + 0x4af0]
cmp edi, dword [rsp + 0x50]
je 0x1400455f1
mov qword [rsi + 0x378], r12
mov qword [rsi + 0x3a0], rsi
mov qword [rsi + 0x398], rsi
mov qword [rsi + 0x390], rsi
mov qword [rsi + 0x388], rsi
test r12, r12
je 0x1400455bb
mov eax, r15d
and eax, 0x3000000
cmp eax, 0x1000000
jne 0x140045586
mov rax, qword [r12 + 0x388]
mov qword [rsi + 0x388], rax
bt r15d, 0x1a
jae 0x14004559c
mov rax, qword [r12 + 0x390]
mov qword [rsi + 0x390], rax
bt r15d, 0x1b
jb 0x1400455bb
test r15d, 0x5000000
je 0x1400455bb
mov rax, qword [r12 + 0x398]
mov qword [rsi + 0x398], rax
test dword [rsi + 0x14], 0x800000
je 0x1400455ea
mov rcx, rsi
nop word [rax + rax]
mov rax, qword [rcx + 0x378]
mov qword [rsi + 0x3a0], rax
mov rcx, rax
test dword [rax + 0x14], 0x800000
jne 0x1400455d0
mov qword [rsi + 0x380], r13
mov rbx, qword [0x1401d33a8]
lea rdx, [rbp + 0x160]
mov edi, dword [rsi + 0x10]
mov dword [rbp + 0x160], edi
lea rcx, [rbx + 0x4a90]
vzeroupper
call fcn.140053eb0
mov dword [rbx + 0x497c], edi
xor r12d, r12d
mov eax, dword [r14 + 0x497c]
mov dword [rsi + 0x3e8], eax
mov qword [r14 + 0x4038], r12
bt r15d, 0x1a
jae 0x140045672
movsxd rax, dword [r14 + 0x4ad0]
lea rcx, [r14 + 0x4ad0]
imul rbx, rax, 0x38
add rbx, qword [r14 + 0x4ac8]
mov rdx, rbx
mov qword [rbx + 8], rsi
mov eax, dword [r13 + 0x168]
mov dword [rbx + 0x18], eax
call fcn.140053920
mov eax, dword [rbx]
mov dword [rsi + 0xd8], eax
xor cl, cl
xor r13b, r13b
test byte [r14 + 0x49e8], 1
mov byte [rbp + 0x168], cl
mov byte [rbp + 0x160], cl
je 0x140045728
movsx eax, byte [rsi + 0xe8]
mov r8d, dword [r14 + 0x49ec]
test r8d, eax
setne cl
mov byte [rbp + 0x168], cl
test r8d, eax
je 0x140045719
vmovss xmm0, dword [r14 + 0x4a00]
vmovss xmm1, dword [r14 + 0x4a04]
vmulss xmm2, xmm0, xmm0
vfmadd231ss xmm2, xmm1, xmm1
vcomiss xmm2, dword [0x14011ab10]
jbe 0x140045719
vmovsd xmm0, qword [r14 + 0x49f8]
vmovsd qword [rsi + 0xec], xmm0
vmovsd xmm1, qword [r14 + 0x4a00]
vmovsd qword [rsi + 0xf4], xmm1
movzx ecx, byte [rsi + 0xe8]
mov eax, dword [rsi + 0xe8]
and ecx, 0xf1
and eax, 0xffffff00
or ecx, eax
mov dword [rsi + 0xe8], ecx
jmp 0x140045728
lea rdx, [r14 + 0x49f8]
mov rcx, rsi
call fcn.140048190
test byte [r14 + 0x49e8], 2
vxorps xmm14, xmm14, xmm14
je 0x1400457be
movsx ecx, byte [rsi + 0xe9]
mov eax, ecx
and eax, dword [r14 + 0x49f0]
je 0x14004575d
vcomiss xmm14, dword [r14 + 0x4a08]
jae 0x14004575d
mov r13b, 1
jmp 0x140045761
test eax, eax
je 0x140045773
vcomiss xmm14, dword [r14 + 0x4a0c]
mov byte [rbp + 0x160], 1
jb 0x14004577a
mov byte [rbp + 0x160], r12b
test byte [rsi + 0x18], 4
je 0x14004578f
test cl, 4
jne 0x14004578f
mov eax, dword [rsi + 0x38]
mov dword [r14 + 0x4a08], eax
test byte [rsi + 0x18], 8
je 0x1400457a8
test byte [rsi + 0xe9], 4
jne 0x1400457a8
mov eax, dword [rsi + 0x3c]
mov dword [r14 + 0x4a0c], eax
mov r8d, dword [r14 + 0x49f0]
lea rdx, [r14 + 0x4a08]
mov rcx, rsi
call fcn.1400482f0
test byte [r14 + 0x49e8], 0x80
je 0x140045806
vmovss xmm0, dword [r14 + 0x4a18]
vcomiss xmm0, xmm14
jb 0x1400457e7
vmovss dword [rsi + 0x9c], xmm0
mov dword [rsi + 0xa4], r12d
vmovss xmm0, dword [r14 + 0x4a1c]
vcomiss xmm0, xmm14
jb 0x140045806
vmovss dword [rsi + 0xa0], xmm0
mov dword [rsi + 0xa8], r12d
test byte [r14 + 0x49e8], 4
mov ebx, dword [rsp + 0x50]
mov edi, dword [rsp + 0x4c]
je 0x140045828
vmovsd xmm0, qword [r14 + 0x4a10]
vmovsd qword [rsi + 0x50], xmm0
jmp 0x140045830
cmp edi, ebx
je 0x140045830
mov qword [rsi + 0x50], r12
test byte [r14 + 0x49e8], 8
je 0x140045881
mov ecx, dword [r14 + 0x49f4]
movzx edx, byte [r14 + 0x4a24]
test ecx, ecx
je 0x140045858
movsx eax, byte [rsi + 0xea]
test ecx, eax
je 0x140045881
movzx ecx, byte [rsi + 0xea]
mov eax, dword [rsi + 0xe8]
and ecx, 0xf1
shl ecx, 0x10
and eax, 0xff00ffff
or ecx, eax
mov byte [rsi + 0xc1], dl
mov dword [rsi + 0xe8], ecx
test byte [r14 + 0x49e8], 0x20
je 0x140045895
xor edx, edx
mov rcx, rsi
call fcn.140047a70
cmp byte [rsi + 0xc4], r12b
je 0x1400458b3
and byte [rsi + 0xe8], 0xf7
and byte [rsi + 0xe9], 0xf7
and byte [rsi + 0xea], 0xf7
vmovaps xmmword [rsp + 0x1f0], xmm6
mov edx, 1
vmovaps xmmword [rsp + 0x1e0], xmm7
vmovaps xmmword [rsp + 0x1d0], xmm8
vmovaps xmmword [rsp + 0x1c0], xmm9
vmovaps xmmword [rsp + 0x1b0], xmm10
vmovaps xmmword [rsp + 0x1a0], xmm11
vmovaps xmmword [rsp + 0x190], xmm12
vmovaps xmmword [rsp + 0x180], xmm13
vmovaps xmmword [rsp + 0x160], xmm15
cmp edi, ebx
je 0x140047440
mov eax, r15d
lea rcx, [rsi + 0x100]
and eax, 0x3000000
mov dword [rsp + 0x48], eax
movzx eax, byte [rsi + 0xe5]
mov byte [rsi + 0xbe], dl
mov byte [rsi + 0xc8], r12b
mov dword [rsi + 0x248], 0xff7fffff
mov dword [rsi + 0x24c], 0xff7fffff
mov dword [rsi + 0x250], 0x7f7fffff
mov dword [rsi + 0x254], 0x7f7fffff
mov byte [rsp + 0x44], al
call fcn.140053ff0
mov rcx, qword [rsi + 0x2a8]
call fcn.14005bed0
mov dword [rsi + 0x1c0], 0xffffffff
cmp byte [rsi + 0x3f4], r12b
je 0x140045a37
mov byte [rsi + 0x3f4], r12b
mov rbx, qword [rsi + 0x2a8]
movsxd rdi, dword [rsi + 0x3ec]
cmp edi, dword [rbx + 0x14]
jle 0x1400459dc
mov rcx, rdi
add rcx, rcx
call fcn.14003edf0
mov rdx, qword [rbx + 0x18]
mov r12, rax
test rdx, rdx
je 0x1400459d5
movsxd r8, dword [rbx + 0x10]
mov rcx, rax
add r8, r8
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x18]
call fcn.14003ee90
mov qword [rbx + 0x18], r12
mov dword [rbx + 0x14], edi
mov rbx, qword [rsi + 0x2a8]
movsxd rdi, dword [rsi + 0x3f0]
cmp edi, dword [rbx + 0x24]
jle 0x140045a2c
lea rcx, [rdi + rdi*4]
shl rcx, 2
call fcn.14003edf0
mov rdx, qword [rbx + 0x28]
mov r12, rax
test rdx, rdx
je 0x140045a25
movsxd rcx, dword [rbx + 0x20]
lea r8, [rcx + rcx*4]
mov rcx, rax
shl r8, 2
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x28]
call fcn.14003ee90
mov qword [rbx + 0x28], r12
mov dword [rbx + 0x24], edi
mov qword [rsi + 0x3ec], 0
cmp qword [r14 + 0x4cf8], 0
mov r9, qword [rbp - 0x70]
je 0x140045b5b
test dword [rsi + 0x14], 0x20000
jne 0x140045b5b
test r9, r9
je 0x140045b5b
mov r12, qword [rbp + 0x150]
mov r9, qword [rsi + 8]
mov rax, r12
mov r8, r9
sub r8, r12
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140045a86
inc rax
test ecx, ecx
jne 0x140045a73
test edx, edx
je 0x140045b57
movsxd rdi, dword [rsi + 0x80]
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [r12 + rbx], 0
jne 0x140045aa0
inc rbx
cmp rdi, rbx
jae 0x140045b3f
test r9, r9
je 0x140045b28
mov r8, qword [0x1401d33a8]
test r8, r8
je 0x140045b28
movsx rdx, word [r8 + 0x6078]
lea rcx, [r8 + 0x607c]
mov r10d, dword [r8 + 0x3f90]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r10d
je 0x140045b1d
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x6078], cx
movsx rax, cx
lea rcx, [r8 + 0x607c]
lea rcx, [rcx + rax*8]
xor eax, eax
mov dword [rcx], r10d
mov dword [rcx + 4], eax
inc word [rcx + 6]
inc dword [r8 + 0x6074]
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call fcn.14003edf0
mov r9, rax
mov rdi, rbx
mov r8, rbx
mov rdx, r12
mov rcx, r9
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi + 8], rax
mov dword [rsi + 0x80], edi
mov r9, qword [rbp - 0x70]
lea r8, [rsi + 0x48]
mov rcx, rsi
lea rdx, [rsi + 0x40]
call fcn.140042db0
movzx eax, byte [rsi + 0xe4]
test al, al
jle 0x140045b7e
dec al
mov byte [rsi + 0xe4], al
movzx eax, byte [rsi + 0xe5]
test al, al
jle 0x140045b91
dec al
mov byte [rsi + 0xe5], al
movzx eax, byte [rsi + 0xe6]
test al, al
jle 0x140045ba4
dec al
mov byte [rsi + 0xe6], al
test r9, r9
jne 0x140045bbe
test r13b, r13b
je 0x140045bb7
cmp byte [rbp + 0x160], r9b
jne 0x140045bbe
mov byte [rsi + 0xe5], 1
xor r11d, r11d
cmp byte [rbp + 0x158], r11b
je 0x140045c12
test r15d, 0x6000000
je 0x140045c12
mov byte [rsi + 0xe5], 1
test r15b, 0x40
je 0x140045c12
test r13b, r13b
jne 0x140045bed
mov dword [rsi + 0x38], r11d
mov dword [rsi + 0x30], r11d
movzx ebx, byte [rbp + 0x160]
test bl, bl
jne 0x140045c00
mov dword [rsi + 0x3c], r11d
mov dword [rsi + 0x34], r11d
mov qword [rsi + 0x48], 0
mov qword [rsi + 0x40], 0
jmp 0x140045c19
movzx ebx, byte [rbp + 0x160]
mov r10, qword [0x1401d33a8]
mov rax, qword [r10 + 0x4b00]
mov r12, qword [rax]
mov qword [rsi + 0x20], r12
mov qword [r10 + 0x4038], rsi
movsxd rax, dword [rsi + 0x1c0]
cmp eax, 0xffffffff
je 0x140045c51
imul rcx, rax, 0x250
add rcx, qword [r10 + 0x4e00]
jmp 0x140045c54
mov rcx, r11
mov qword [r10 + 0x4dd8], rcx
mov rax, qword [rsi]
vmovss xmm0, dword [rax + 0x3d64]
mov rax, qword [rsi + 0x378]
vmulss xmm1, xmm0, dword [rsi + 0x2a0]
test rax, rax
je 0x140045c82
vmulss xmm1, xmm1, dword [rax + 0x2a0]
vmovss dword [r10 + 0x3d78], xmm1
vmovss dword [r10 + 0x3d60], xmm1
test rcx, rcx
jne 0x140045ca6
cmp qword [rsi + 0x1b8], rcx
jne 0x140045ca6
mov al, 1
jmp 0x140045ca8
xor al, al
mov byte [rsi + 0x170], al
bt r15d, 0x18
jae 0x140045cc1
mov eax, dword [r14 + 0x3920]
mov dword [rsi + 0x64], eax
jmp 0x140045cea
test r15d, 0x6000000
je 0x140045cdc
bt r15d, 0x1b
jb 0x140045cdc
vmovss xmm0, dword [r14 + 0x3928]
jmp 0x140045ce5
vmovss xmm0, dword [r14 + 0x3904]
vmovss dword [rsi + 0x64], xmm0
vmovsd xmm0, qword [r14 + 0x38f8]
mov eax, r15d
and eax, 0x5000000
vmovsd qword [rsi + 0x58], xmm0
cmp eax, 0x1000000
jne 0x140045d34
test byte [rsi + 0x18], 2
jne 0x140045d34
vucomiss xmm14, dword [rsi + 0x64]
jne 0x140045d34
bt r15d, 0xa
jae 0x140045d26
vmovss xmm0, dword [r14 + 0x38fc]
jmp 0x140045d2b
vmovaps xmm0, xmm14
mov dword [rsi + 0x58], r11d
vmovss dword [rsi + 0x5c], xmm0
movzx edi, byte [rsp + 0x40]
vmovss xmm0, dword [rsi + 0x58]
vmaxss xmm1, xmm0, dword [r14 + 0x393c]
vmovss xmm2, dword [r14 + 0x4a4c]
vmaxss xmm2, xmm2, xmm1
vmovss dword [rsi + 0x174], xmm2
mov eax, dword [r14 + 0x4a50]
mov dword [rsi + 0x178], eax
test r15b, 0x21
jne 0x140045e6e
test byte [rsi + 0x14], 1
mov rcx, qword [rsi]
je 0x140045d83
vmovaps xmm0, xmm14
jmp 0x140045db7
mov rax, qword [rsi + 0x378]
vmovss xmm0, dword [rcx + 0x3d64]
vmulss xmm2, xmm0, dword [rsi + 0x2a0]
test rax, rax
je 0x140045da7
vmulss xmm2, xmm2, dword [rax + 0x2a0]
vmovss xmm0, dword [rcx + 0x3930]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x2c]
vmovss xmm0, dword [rsi + 0x28]
vaddss xmm1, xmm0, dword [rsi + 0x38]
vmovss dword [rsp + 0x60], xmm0
vmovss xmm0, dword [rsi + 0x2c]
vmovss dword [rsp + 0x64], xmm0
vmovss dword [rsp + 0x68], xmm1
vmovss dword [rsp + 0x6c], xmm2
cmp qword [r14 + 0x4040], rsi
jne 0x140045e28
cmp dword [r14 + 0x4088], 0
jne 0x140045e28
cmp dword [r14 + 0x408c], 0
jne 0x140045e28
mov r8b, 1
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x60]
call fcn.140049280
test al, al
je 0x140045e28
cmp word [r14 + 0x3872], 2
jne 0x140045e28
mov byte [rsi + 0xc2], r8b
cmp byte [rsi + 0xc2], 0
je 0x140045e75
movzx ecx, byte [rsi + 0xc1]
mov edx, 1
test cl, cl
sete al
test cl, cl
mov byte [rsi + 0xc1], al
cmovne edi, edx
test dword [rsi + 0x14], 0x100
jne 0x140045e75
vcomiss xmm14, dword [r10 + 0x5f1c]
jb 0x140045e75
mov eax, dword [r10 + 0x1c]
mov dword [r10 + 0x5f1c], eax
jmp 0x140045e75
mov byte [rsi + 0xc1], 0
mov byte [rsi + 0xc2], 0
vmovss xmm0, dword [rsi + 0xb8]
vmovss xmm15, dword [rsi + 0xb4]
mov rcx, qword [rsi]
mov dword [rsi + 0x68], r11d
mov dword [rsi + 0x70], r11d
mov r8d, dword [rsi + 0x14]
vmovss dword [rbp - 0x38], xmm0
test r8b, 1
je 0x140045ead
vmovaps xmm3, xmm14
jmp 0x140045ee1
mov rdx, qword [rsi + 0x378]
vmovss xmm0, dword [rsi + 0x2a0]
vmulss xmm2, xmm0, dword [rcx + 0x3d64]
test rdx, rdx
je 0x140045ed1
vmulss xmm2, xmm2, dword [rdx + 0x2a0]
vmovss xmm0, dword [rcx + 0x3930]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, xmm2
bt r8d, 0xa
jae 0x140045f26
mov rax, qword [rsi + 0x378]
vmovss xmm0, dword [rsi + 0x2a0]
vmulss xmm1, xmm0, dword [rcx + 0x3d64]
test rax, rax
je 0x140045f0c
vmulss xmm1, xmm1, dword [rax + 0x2a0]
vmovss xmm0, dword [rcx + 0x3930]
vaddss xmm1, xmm1, dword [rsi + 0x178]
vaddss xmm0, xmm0, xmm0
vaddss xmm2, xmm1, xmm0
jmp 0x140045f2b
vmovaps xmm2, xmm14
vaddss xmm0, xmm2, xmm3
vmovss dword [rsi + 0x6c], xmm0
mov dword [rsi + 0x74], r11d
lea r8, [rsi + 0x48]
mov rdx, rsi
mov qword [rsi + 0xb4], 0
lea rcx, [rbp - 0x80]
call fcn.140042ec0
test r15b, 0x40
je 0x140045f90
cmp byte [rsi + 0xc1], 0
jne 0x140045f90
test r13b, r13b
jne 0x140045f76
vmovss xmm0, dword [rbp - 0x80]
vmovss dword [rsi + 0x38], xmm0
mov byte [rsp + 0x40], 1
test bl, bl
jne 0x14004602e
vmovss xmm0, dword [rbp - 0x7c]
vmovss dword [rsi + 0x3c], xmm0
mov dil, 1
jmp 0x14004602e
movzx eax, byte [rsi + 0xdc]
test al, al
jg 0x140045fa8
cmp byte [rsi + 0xdd], 0
jle 0x14004602e
test r13b, r13b
jne 0x140045fd5
test al, al
jle 0x140045fd5
cmp byte [rsi + 0xde], r13b
je 0x140045fc6
vmovss xmm0, dword [rsi + 0x38]
vmaxss xmm1, xmm0, dword [rbp - 0x80]
jmp 0x140045fcb
vmovss xmm1, dword [rbp - 0x80]
vmovss dword [rsi + 0x38], xmm1
mov byte [rsp + 0x40], 1
test bl, bl
jne 0x140046002
cmp byte [rsi + 0xdd], bl
jle 0x140046002
cmp byte [rsi + 0xde], bl
je 0x140045ff5
vmovss xmm0, dword [rbp - 0x7c]
vmaxss xmm1, xmm0, dword [rsi + 0x3c]
jmp 0x140045ffa
vmovss xmm1, dword [rbp - 0x7c]
vmovss dword [rsi + 0x3c], xmm1
mov dil, 1
cmp byte [rsi + 0xc1], 0
jne 0x14004602e
test dword [rsi + 0x14], 0x100
mov rcx, qword [0x1401d33a8]
jne 0x14004602e
vcomiss xmm14, dword [rcx + 0x5f1c]
jb 0x14004602e
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x5f1c], eax
lea r8, [rsi + 0x38]
mov rdx, rsi
lea rcx, [rsp + 0x60]
call fcn.140042c40
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rsi + 0x38], xmm0
vmovss dword [rsi + 0x3c], xmm1
cmp byte [rsi + 0xc1], 0
je 0x1400460c1
bt r15d, 0x18
jb 0x1400460c1
test byte [rsi + 0x14], 1
mov rcx, qword [rsi]
je 0x140046072
vmovaps xmm0, xmm14
jmp 0x1400460a6
mov rax, qword [rsi + 0x378]
vmovss xmm0, dword [rcx + 0x3d64]
vmulss xmm2, xmm0, dword [rsi + 0x2a0]
test rax, rax
je 0x140046096
vmulss xmm2, xmm2, dword [rax + 0x2a0]
vmovss xmm0, dword [rcx + 0x3930]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vaddss xmm0, xmm0, dword [rsi + 0x2c]
vsubss xmm1, xmm0, dword [rsi + 0x2c]
vmovss xmm0, dword [rsi + 0x38]
vmovss dword [rbp - 0x68], xmm0
vmovss dword [rbp - 0x64], xmm1
jmp 0x1400460cb
vmovsd xmm0, qword [rsi + 0x38]
vmovsd qword [rbp - 0x68], xmm0
cmp byte [rbp + 0x158], 0
lea rax, [rbp - 0x68]
vmovsd xmm0, qword [rax]
movzx ebx, byte [rbp + 0x168]
vmovsd qword [rsi + 0x30], xmm0
je 0x14004612d
mov eax, r15d
mov dword [rsi + 0xe0], 0xffffffff
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x14004612d
test bl, bl
jne 0x14004612d
movsxd rax, dword [r14 + 0x4ad0]
imul rcx, rax, 0x38
mov rax, qword [r14 + 0x4ad8]
vmovss xmm0, dword [rcx + rax - 0x14]
vmovss xmm1, dword [rcx + rax - 0x10]
vmovss dword [rsi + 0x28], xmm0
vmovss dword [rsi + 0x2c], xmm1
mov r13, qword [rbp - 0x78]
bt r15d, 0x18
jae 0x140046178
lea rcx, [r13 + 0x1a0]
movzx eax, word [rcx]
lea rdx, [rbp - 0x58]
mov word [rsi + 0xd0], ax
call fcn.140053c10
mov eax, dword [rsp + 0x48]
bt r15d, 0x1a
jb 0x14004617c
test bl, bl
jne 0x14004617c
cmp eax, 0x3000000
je 0x14004617c
vmovsd xmm0, qword [r13 + 0x110]
vmovsd qword [rsi + 0x28], xmm0
jmp 0x14004617c
mov eax, dword [rsp + 0x48]
vmovss xmm3, dword [rsi + 0xec]
vucomiss xmm3, dword [0x14011ae54]
je 0x1400461e3
cmp byte [rsi + 0xe5], 0
jne 0x1400461e3
vmovss xmm0, dword [rsi + 0xf8]
vmovss xmm2, dword [rsi + 0x34]
vfnmadd213ss xmm2, xmm0, dword [rsi + 0xf0]
vmovss xmm1, dword [rsi + 0xf4]
vmovaps xmm0, xmm3
vfnmadd231ss xmm0, xmm1, dword [rsi + 0x30]
xor r8d, r8d
lea rdx, [rbp + 0x168]
mov rcx, rsi
vmovss dword [rbp + 0x168], xmm0
vmovss dword [rbp + 0x16c], xmm2
call fcn.140048190
jmp 0x14004622f
bt r15d, 0x1c
jb 0x14004620d
bt r15d, 0x1a
jae 0x1400461fb
test bl, bl
jne 0x1400461fb
cmp byte [rsp + 0x44], bl
jg 0x14004620d
bt r15d, 0x19
jae 0x14004622f
test bl, bl
jne 0x14004622f
cmp eax, 0x3000000
je 0x14004622f
mov rdx, rsi
lea rcx, [rbp + 0x168]
call fcn.14004d080
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rsi + 0x28], xmm0
vmovss dword [rsi + 0x2c], xmm1
vmovss xmm4, dword [r12 + 0x18]
vmovss xmm5, dword [r12 + 0x14]
vmovss xmm7, dword [r12 + 8]
vmovss xmm6, dword [r12 + 4]
vaddss xmm9, xmm7, dword [r12 + 0x10]
vaddss xmm8, xmm6, dword [r12 + 0xc]
vmovss xmm0, dword [r14 + 0x39c0]
vmaxss xmm3, xmm0, dword [r14 + 0x39b8]
vaddss xmm0, xmm4, dword [r12 + 0x20]
vmovss xmm1, dword [r14 + 0x39b4]
vmaxss xmm2, xmm1, dword [r14 + 0x39bc]
vaddss xmm1, xmm5, dword [r12 + 0x1c]
vsubss xmm10, xmm0, xmm3
vsubss xmm13, xmm1, xmm2
vaddss xmm11, xmm3, xmm4
vaddss xmm12, xmm2, xmm5
vmovss dword [rbp - 0x18], xmm13
vmovss dword [rbp - 0x14], xmm10
vmovss dword [rbp - 0x48], xmm6
vmovss dword [rbp - 0x44], xmm7
vmovss dword [rbp - 0x40], xmm8
vmovss dword [rbp - 0x3c], xmm9
vmovss dword [rbp - 0x20], xmm12
vmovss dword [rbp - 0x1c], xmm11
test bl, bl
jne 0x140046335
bt r15d, 0x18
jb 0x140046335
vsubss xmm0, xmm8, xmm6
vcomiss xmm0, xmm14
jbe 0x140046335
vsubss xmm0, xmm9, xmm7
vcomiss xmm0, xmm14
jbe 0x140046335
mov rax, qword [0x1401d33a8]
vmovss xmm0, dword [rsi + 0x34]
cmp byte [rax + 0x5f], bl
je 0x140046303
test byte [rsi + 0x14], 1
jne 0x140046303
mov rcx, rsi
call fcn.140039af0
vmovss xmm2, dword [rsi + 0x2c]
vsubss xmm1, xmm11, xmm0
vcomiss xmm2, xmm1
vsubss xmm0, xmm12, dword [rsi + 0x30]
jb 0x14004631b
vminss xmm1, xmm10, xmm2
vmovss xmm2, dword [rsi + 0x28]
vcomiss xmm2, xmm0
jb 0x14004632b
vminss xmm0, xmm2, xmm13
vmovss dword [rsi + 0x28], xmm0
vmovss dword [rsi + 0x2c], xmm1
vcvttss2si eax, dword [rsi + 0x2c]
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vcvttss2si eax, dword [rsi + 0x28]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x28], xmm0
vmovss dword [rsi + 0x2c], xmm1
bt r15d, 0x18
jae 0x14004636b
vmovss xmm0, dword [r14 + 0x391c]
jmp 0x14004638e
mov eax, r15d
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x140046385
vmovss xmm0, dword [r14 + 0x3924]
jmp 0x14004638e
vmovss xmm0, dword [r14 + 0x3900]
xor al, al
vmovss dword [rsi + 0x60], xmm0
mov dword [rbp + 0x160], eax
cmp byte [rbp + 0x158], al
je 0x1400463d3
bt r15d, 0xc
jb 0x1400463d3
mov ebx, 1
bt r15d, 0x1a
jae 0x1400463be
mov byte [rbp + 0x160], bl
jmp 0x1400463d8
test r15d, 0x3000000
movzx eax, al
cmove eax, ebx
mov dword [rbp + 0x160], eax
jmp 0x1400463d8
mov ebx, 1
xor r12d, r12d
mov dword [rbp - 0x60], 0xffffffff
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x50], xmm0
mov dword [rbp - 0x5c], 0xffffffff
mov ecx, r12d
test dword [rsi + 0x14], 0x1000000
jne 0x140046407
cmp byte [r14 + 0x5e], r12b
setne cl
inc ecx
cmp byte [rsi + 0xc1], 0
vmovss xmm2, dword [r14 + 0x3d60]
vmovss xmm0, dword [0x14011abbc]
vfmadd213ss xmm0, xmm2, dword [rsi + 0x60]
vaddss xmm1, xmm0, dword [0x14011ac54]
vmulss xmm0, xmm2, dword [0x14011ac64]
vmaxss xmm1, xmm1, xmm0
vcvttss2si eax, xmm1
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rbp - 0x68], xmm0
mov dword [rbp + 0x168], ecx
jne 0x140046497
lea rax, [rbp - 0x20]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x5c]
lea rax, [rbp + 0x50]
mov qword [rsp + 0x28], rax
lea r8, [rbp - 0x60]
mov dword [rsp + 0x20], ecx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.140043220
mov ecx, dword [rsp + 0x40]
test eax, eax
je 0x14004649b
test al, 1
movzx ecx, cl
movzx edi, dil
cmovne ecx, ebx
test al, 2
cmovne edi, ebx
jmp 0x14004649b
mov ecx, dword [rsp + 0x40]
movzx eax, byte [rbp - 0x60]
mov byte [rsi + 0xc9], al
movzx eax, byte [rbp - 0x5c]
mov byte [rsi + 0xca], al
cmp byte [rsi + 0xc1], 0
jne 0x14004665f
cmp qword [rbp - 0x70], 0
vmovss xmm0, dword [rsi + 0x74]
vaddss xmm2, xmm0, dword [rsi + 0x6c]
vmovss xmm1, dword [rsi + 0x3c]
vmovss xmm0, dword [rsi + 0x214]
vmovss xmm5, dword [rsi + 0x38]
vsubss xmm7, xmm1, xmm2
vsubss xmm1, xmm0, dword [rsi + 0x20c]
vmovss xmm2, dword [rsi + 0x210]
vsubss xmm0, xmm2, dword [rsi + 0x208]
vaddss xmm6, xmm1, dword [rbp - 0x38]
vaddss xmm4, xmm0, xmm15
jne 0x140046515
vmovss dword [rbp - 0x34], xmm14
vmovss dword [rbp - 0x30], xmm14
lea rax, [rbp - 0x34]
jmp 0x14004653f
vmovss xmm0, dword [rsi + 0x5c]
vmovss xmm2, dword [rsi + 0x58]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, dword [rsi + 0x44]
vaddss xmm0, xmm2, xmm2
vaddss xmm1, xmm0, dword [rsi + 0x40]
vmovss dword [rbp - 0x2c], xmm1
vmovss dword [rbp - 0x28], xmm3
lea rax, [rbp - 0x2c]
vmovss xmm8, dword [rax]
vmovss xmm3, dword [rax + 4]
movzx eax, cl
vmovd xmm0, eax
movzx eax, dil
vmovd xmm1, r12d
vpcmpeqd xmm2, xmm0, xmm1
vmovd xmm1, r12d
vmovd xmm0, eax
vblendvps xmm4, xmm5, xmm4, xmm2
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm1, xmm7, xmm6, xmm2
bt r15d, 0xe
jb 0x14004658c
vcomiss xmm3, xmm1
jbe 0x140046588
test r15b, 8
je 0x14004658c
xor al, al
jmp 0x14004658e
mov al, 1
mov byte [rsi + 0xbd], al
bt r15d, 0xf
jb 0x1400465d1
test al, al
je 0x1400465aa
vmovss xmm0, dword [r14 + 0x3964]
jmp 0x1400465af
vmovaps xmm0, xmm14
vsubss xmm0, xmm4, xmm0
vcomiss xmm8, xmm0
jbe 0x1400465c8
mov eax, r15d
and eax, 0x808
cmp eax, 0x800
je 0x1400465d1
mov byte [rsi + 0xbc], 0
jmp 0x1400465f9
mov byte [rsi + 0xbc], 1
cmp byte [rsi + 0xbd], 0
jne 0x1400465f9
vcomiss xmm3, xmm1
jbe 0x1400465f1
test r15b, 8
jne 0x1400465f1
mov al, 1
jmp 0x1400465f3
xor al, al
mov byte [rsi + 0xbd], al
cmp byte [rsi + 0xbc], 0
je 0x14004660d
vmovss xmm1, dword [r14 + 0x3964]
jmp 0x140046612
vmovaps xmm1, xmm14
cmp byte [rsi + 0xbd], 0
je 0x140046626
vmovss xmm0, dword [r14 + 0x3964]
jmp 0x14004662b
vmovaps xmm0, xmm14
vmovss dword [rsi + 0xb4], xmm0
vmovss dword [rsi + 0xb8], xmm1
vmovss xmm0, dword [rsi + 0xb4]
vaddss xmm1, xmm0, dword [rsi + 0x70]
vmovss dword [rsi + 0x70], xmm1
vmovss xmm2, dword [rsi + 0xb8]
vaddss xmm0, xmm2, dword [rsi + 0x74]
vmovss dword [rsi + 0x74], xmm0
mov eax, r15d
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x14004667f
cmp dword [rsp + 0x48], 0x3000000
lea rax, [r13 + 0x248]
jne 0x140046683
lea rax, [rbp - 0x48]
test byte [rsi + 0x14], 1
vmovss xmm3, dword [rsi + 0x2c]
vmovss xmm12, dword [rsi + 0x28]
vaddss xmm4, xmm3, dword [rsi + 0x34]
vaddss xmm5, xmm12, dword [rsi + 0x30]
vmovups xmm8, xmmword [rax]
mov rcx, qword [rsi]
je 0x1400466ab
vmovaps xmm0, xmm14
jmp 0x1400466df
mov rax, qword [rsi + 0x378]
vmovss xmm0, dword [rcx + 0x3d64]
vmulss xmm2, xmm0, dword [rsi + 0x2a0]
test rax, rax
je 0x1400466cf
vmulss xmm2, xmm2, dword [rax + 0x2a0]
vmovss xmm0, dword [rcx + 0x3930]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vmovss xmm15, dword [rsi + 0x2c]
vaddss xmm13, xmm0, xmm3
vaddss xmm0, xmm12, dword [rsi + 0x38]
vmovss dword [rbp - 0x40], xmm0
vmovss dword [rsp + 0x40], xmm0
vmovss dword [rbp - 0x48], xmm12
vmovss dword [rbp - 0x44], xmm15
vmovss dword [rbp - 0x3c], xmm13
vmovss dword [rsi + 0x1f8], xmm12
vmovss dword [rsi + 0x1fc], xmm3
vmovss dword [rsi + 0x200], xmm5
vmovss dword [rsi + 0x204], xmm4
vmovss xmm0, dword [rsi + 0x1fc]
vshufps xmm9, xmm8, xmm8, 0x55
vmaxss xmm1, xmm0, xmm9
vmaxss xmm0, xmm8, dword [rsi + 0x1f8]
vmovss dword [rsi + 0x1f8], xmm0
vmovss dword [rsi + 0x1fc], xmm1
vmovss xmm0, dword [rsi + 0x200]
vshufps xmm10, xmm8, xmm8, 0xff
vminss xmm1, xmm10, dword [rsi + 0x204]
vmovss dword [rsi + 0x204], xmm1
vshufps xmm11, xmm8, xmm8, 0xaa
vminss xmm0, xmm0, xmm11
vmovss dword [rsi + 0x200], xmm0
vmovss xmm0, dword [rsi + 0x68]
vaddss xmm1, xmm0, dword [rsi + 0x28]
vmovss dword [rsi + 0x208], xmm1
vmovss xmm0, dword [rsi + 0x6c]
vaddss xmm1, xmm0, dword [rsi + 0x2c]
vmovss dword [rsi + 0x20c], xmm1
vmovss xmm0, dword [rsi + 0x30]
vaddss xmm1, xmm0, dword [rsi + 0x28]
vsubss xmm2, xmm1, dword [rsi + 0x70]
vmovss dword [rsi + 0x210], xmm2
vmovss xmm0, dword [rsi + 0x34]
vaddss xmm1, xmm0, dword [rsi + 0x2c]
vsubss xmm2, xmm1, dword [rsi + 0x74]
mov eax, r15d
and eax, 0x401
vmovss dword [rsi + 0x214], xmm2
cmp eax, 1
jne 0x1400467e9
vmovss xmm4, dword [rsi + 0x64]
jmp 0x1400467f2
vmovss xmm4, dword [r14 + 0x3938]
vmovss xmm5, dword [0x14011abf8]
vmulss xmm0, xmm5, dword [rsi + 0x58]
vmovss xmm2, dword [rsi + 0x64]
vcvttss2si eax, xmm0
vxorps xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmaxss xmm3, xmm2, xmm1
vaddss xmm2, xmm5, dword [rsi + 0x208]
vaddss xmm1, xmm3, xmm2
vcvttss2si eax, xmm1
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x218], xmm0
vaddss xmm1, xmm5, dword [rsi + 0x20c]
vaddss xmm2, xmm1, xmm4
vxorps xmm0, xmm0, xmm0
vcvttss2si eax, xmm2
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x21c], xmm0
vmulss xmm0, xmm5, dword [rsi + 0x58]
vaddss xmm2, xmm5, dword [rsi + 0x210]
vmovss xmm4, dword [rsi + 0x64]
vcvttss2si eax, xmm0
vxorps xmm1, xmm1, xmm1
vxorps xmm3, xmm3, xmm3
vcvtsi2ss xmm3, xmm3, eax
vmaxss xmm0, xmm4, xmm3
vsubss xmm2, xmm2, xmm0
vcvttss2si eax, xmm2
vcvtsi2ss xmm1, xmm1, eax
vmovss dword [rsi + 0x220], xmm1
vaddss xmm2, xmm5, dword [rsi + 0x214]
vsubss xmm1, xmm2, dword [rsi + 0x64]
vxorps xmm0, xmm0, xmm0
vcvttss2si eax, xmm1
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x224], xmm0
vmovss xmm0, dword [rsi + 0x21c]
vcomiss xmm0, xmm9
jae 0x1400468c5
vmovaps xmm2, xmm9
jmp 0x1400468ca
vminss xmm2, xmm0, xmm10
vmovss xmm0, dword [rsi + 0x218]
vcomiss xmm0, xmm8
jae 0x1400468e0
vmovaps xmm1, xmm8
jmp 0x1400468e5
vminss xmm1, xmm0, xmm11
vmovss dword [rsi + 0x218], xmm1
vmovss dword [rsi + 0x21c], xmm2
vmovss xmm0, dword [rsi + 0x224]
vcomiss xmm0, xmm9
jae 0x14004690b
vmovaps xmm1, xmm9
jmp 0x140046910
vminss xmm1, xmm0, xmm10
vmovss xmm0, dword [rsi + 0x220]
vcomiss xmm0, xmm8
jae 0x140046926
vmovaps xmm0, xmm8
jmp 0x14004692b
vminss xmm0, xmm0, xmm11
vmovss dword [rsi + 0x220], xmm0
vmovss dword [rsi + 0x224], xmm1
vmovss xmm1, dword [rsi + 0x30]
vcomiss xmm1, xmm14
jbe 0x14004695a
test r15d, 0x2000040
jne 0x14004695a
vmulss xmm0, xmm1, dword [0x14011ac10]
jmp 0x14004696b
vmovss xmm0, dword [r14 + 0x3d60]
vmulss xmm0, xmm0, dword [0x14011ad60]
vxorps xmm1, xmm1, xmm1
vcvttss2si eax, xmm0
vcvtsi2ss xmm1, xmm1, eax
vmovss dword [rsi + 0x278], xmm1
vmovss xmm0, dword [rsi + 0x58]
vmovss xmm2, dword [rsi + 0x210]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, dword [rsi + 0x40]
vsubss xmm0, xmm2, dword [rsi + 0x208]
vsubss xmm1, xmm3, xmm0
vmaxss xmm1, xmm1, xmm14
vmovss dword [rsi + 0x94], xmm1
vmovss xmm0, dword [rsi + 0x5c]
vmovss xmm2, dword [rsi + 0x214]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, dword [rsi + 0x44]
vsubss xmm0, xmm2, dword [rsi + 0x20c]
vsubss xmm1, xmm3, xmm0
vmaxss xmm1, xmm1, xmm14
mov rdx, rsi
lea rcx, [rsp + 0x60]
vmovss dword [rsi + 0x98], xmm1
call fcn.14004be50
vmovss xmm0, dword [r14 + 0x4a1c]
vaddss xmm1, xmm0, dword [rsi + 0xa0]
mov rdi, qword [rbp + 0x150]
xor edx, edx
vmovss xmm7, dword [rax + 4]
mov eax, dword [rsi + 0x9c]
mov rcx, rdi
mov dword [rsi + 0x9c], eax
vmovss dword [rsi + 0xa0], xmm1
movsxd r8, dword [rsi + 0x100]
mov rax, qword [rsi + 0x108]
mov r8d, dword [rax + r8*4 - 4]
call fcn.14003a5e0
mov rcx, qword [rsi]
mov ebx, eax
cmp dword [rcx + 0x4084], eax
jne 0x140046a54
mov r8, rdi
mov edx, 0xb
mov ecx, eax
call fcn.140053150
mov rcx, qword gs:[0x58]
mov edx, 4
mov rax, qword [rcx]
mov eax, dword [rdx + rax]
cmp dword [0x1401d3698], eax
jg 0x140047748
mov rdi, qword [0x1401d36a0]
mov rax, rdi
mov rcx, qword [rdi + 8]
cmp byte [rcx + 0x19], 0
jne 0x140046a9f
cmp dword [rcx + 0x1c], ebx
jae 0x140046a93
mov rcx, qword [rcx + 0x10]
jmp 0x140046a99
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140046a88
cmp byte [rax + 0x19], 0
jne 0x140046aaa
cmp ebx, dword [rax + 0x1c]
jae 0x140046aad
mov rax, rdi
cmp rax, rdi
jne 0x140046ba5
mov rax, qword [rdi + 8]
mov rcx, rdi
vmovss dword [rbp - 0x54], xmm14
mov dword [rbp - 0x58], ebx
mov qword [rsp + 0x60], rax
cmp byte [rax + 0x19], 0
mov dword [rsp + 0x68], r12d
jne 0x140046b05
mov edx, 1
nop word [rax + rax]
mov qword [rsp + 0x60], rax
cmp dword [rax + 0x1c], ebx
jae 0x140046af5
mov rax, qword [rax + 0x10]
mov dword [rsp + 0x68], r12d
jmp 0x140046aff
mov rcx, rax
mov dword [rsp + 0x68], edx
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140046ae0
cmp byte [rcx + 0x19], 0
jne 0x140046b10
cmp ebx, dword [rcx + 0x1c]
jae 0x140046b72
movabs rax, 0x666666666666666
cmp qword [0x1401d36a8], rax
je 0x140047742
mov ecx, 0x28
call fcn.1400ef224
vmovups xmm0, xmmword [rsp + 0x60]
mov r8, rax
lea rdx, [rsp + 0x60]
mov rax, qword [rbp - 0x58]
lea rcx, [0x1401d36a0]
vmovups xmmword [rsp + 0x60], xmm0
mov qword [r8 + 0x1c], rax
mov qword [r8], rdi
mov qword [r8 + 8], rdi
mov qword [r8 + 0x10], rdi
mov word [r8 + 0x18], 0
call fcn.140054a20
mov rdi, qword [0x1401d36a0]
mov rcx, qword [rdi + 8]
mov rax, rdi
cmp byte [rcx + 0x19], 0
jne 0x140046b97
nop
cmp dword [rcx + 0x1c], ebx
jae 0x140046b8b
mov rcx, qword [rcx + 0x10]
jmp 0x140046b91
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140046b80
cmp byte [rax + 0x19], 0
jne 0x140046ba2
cmp ebx, dword [rax + 0x1c]
jae 0x140046ba5
mov rax, rdi
vmovss xmm6, dword [rax + 0x20]
vcomiss xmm6, xmm7
jae 0x140046bd4
vsubss xmm0, xmm7, xmm6
vandps xmm0, xmm0, xmmword [0x14011b0a0]
vmulss xmm0, xmm0, dword [0x14011ab60]
vmovaps xmm1, xmm0
vfnmadd231ss xmm1, xmm0, dword [r14 + 0x18]
vaddss xmm6, xmm1, xmm6
jmp 0x140046bf8
jbe 0x140046bfd
vsubss xmm0, xmm7, xmm6
vandps xmm0, xmm0, xmmword [0x14011b0a0]
vmulss xmm0, xmm0, dword [0x14011ab60]
vmovaps xmm1, xmm0
vfnmadd231ss xmm1, xmm0, dword [r14 + 0x18]
vsubss xmm6, xmm6, xmm1
vmovss dword [rax + 0x20], xmm6
xor ecx, ecx
call fcn.140049100
test al, al
jne 0x140046c1c
vucomiss xmm7, dword [rsi + 0x90]
je 0x140046c56
vmovss dword [rsi + 0x90], xmm6
jmp 0x140046c56
mov rdx, rsi
lea rcx, [rsp + 0x60]
call fcn.14004be50
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rsi + 0x8c], xmm0
vmovss dword [rsi + 0x90], xmm1
mov dword [rsi + 0x9c], 0x7f7fffff
mov dword [rsi + 0xa0], 0x7f7fffff
mov rcx, qword [rsi + 0x2a8]
mov qword [rsi + 0x78], 0
mov rax, qword [r14 + 0x3d58]
mov rdx, qword [rax + 0x40]
mov rdx, qword [rdx + 8]
call fcn.14005c5f0
mov rcx, qword [0x1401d33a8]
vmaxss xmm0, xmm8, xmm11
vmaxss xmm1, xmm9, xmm10
vmovss dword [rsp + 0x60], xmm8
mov rax, qword [rcx + 0x4038]
vmovss dword [rsp + 0x64], xmm9
vmovss dword [rsp + 0x68], xmm0
vmovss dword [rsp + 0x6c], xmm1
mov byte [rax + 0xc0], 1
mov r13, qword [rcx + 0x4038]
mov rbx, qword [r13 + 0x2a8]
mov ecx, dword [rbx + 0x5c]
mov edi, dword [rbx + 0x58]
cmp edi, ecx
jne 0x140046d1f
inc edi
test ecx, ecx
je 0x140046cd9
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x140046cde
mov eax, 8
cmp eax, edi
cmovg edi, eax
cmp edi, ecx
jle 0x140046d1f
movsxd rcx, edi
shl rcx, 4
call fcn.14003edf0
mov rdx, qword [rbx + 0x60]
mov r12, rax
test rdx, rdx
je 0x140046d18
movsxd r8, dword [rbx + 0x58]
mov rcx, rax
shl r8, 4
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x60]
call fcn.14003ee90
mov qword [rbx + 0x60], r12
mov dword [rbx + 0x5c], edi
movsxd rdx, dword [rbx + 0x58]
mov rcx, rbx
mov rax, qword [rbx + 0x60]
add rdx, rdx
vmovups xmm0, xmmword [rsp + 0x60]
vmovups xmmword [rax + rdx*8], xmm0
inc dword [rbx + 0x58]
vmovups xmmword [rbx + 0x88], xmm0
call fcn.14005c1f0
mov rax, qword [r13 + 0x2a8]
xor bl, bl
movsxd rcx, dword [rax + 0x58]
mov rax, qword [rax + 0x60]
add rcx, rcx
vmovss xmm0, dword [rax + rcx*8 - 0xc]
vmovss xmm1, dword [rax + rcx*8 - 8]
vmovss xmm2, dword [rax + rcx*8 - 4]
mov eax, dword [rax + rcx*8 - 0x10]
mov dword [r13 + 0x248], eax
mov eax, r15d
vmovss dword [r13 + 0x24c], xmm0
vmovss dword [r13 + 0x250], xmm1
and eax, 0x5000000
vmovss dword [r13 + 0x254], xmm2
mov r13, qword [rbp - 0x78]
cmp eax, 0x1000000
jne 0x140046e78
cmp dword [rsp + 0x48], 0x3000000
je 0x140046e78
movsxd rax, dword [r13 + 0x1a0]
cmp eax, 2
jl 0x140046e41
mov rcx, rax
mov rax, qword [r13 + 0x1a8]
mov rdx, qword [rax + rcx*8 - 0x10]
test rdx, rdx
je 0x140046e41
vmovss xmm0, dword [rdx + 0x28]
vmovss xmm1, dword [rdx + 0x2c]
vmovss dword [rbp - 0x58], xmm0
vaddss xmm0, xmm0, dword [rdx + 0x30]
vmovss dword [rbp - 0x54], xmm1
vaddss xmm1, xmm1, dword [rdx + 0x34]
vmovss dword [rbp - 0x50], xmm0
vmovss xmm0, dword [rsi + 0x28]
vmovss dword [rbp - 0x4c], xmm1
vmovss xmm1, dword [rsi + 0x2c]
vmovss dword [rsp + 0x60], xmm0
vaddss xmm0, xmm0, dword [rsi + 0x30]
vmovss dword [rsp + 0x64], xmm1
vaddss xmm1, xmm1, dword [rsi + 0x34]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x58]
vmovss dword [rsp + 0x68], xmm0
vmovss dword [rsp + 0x6c], xmm1
call fcn.140038d20
movzx r8d, al
jmp 0x140046e44
xor r8b, r8b
mov rdx, qword [rsi + 0x2a8]
movsxd rax, dword [rdx]
imul rcx, rax, 0x38
mov rax, qword [rdx + 8]
cmp dword [rcx + rax - 0x18], 0
jne 0x140046e78
mov rax, qword [r13 + 0x2a8]
cmp dword [rax + 0x20], 0
je 0x140046e78
test r8b, r8b
jne 0x140046e78
mov bl, 1
mov qword [rsi + 0x2a8], rax
mov rax, qword [r14 + 0x4ce8]
test rax, rax
jne 0x140046e8b
mov rax, qword [r14 + 0x4b08]
mov r12d, dword [rbp + 0x160]
test r12b, r12b
jne 0x140046eb1
test rax, rax
je 0x140046eac
mov rax, qword [rax + 0x398]
cmp qword [rsi + 0x398], rax
je 0x140046eb1
xor r8b, r8b
jmp 0x140046eb4
mov r8b, 1
vmovss xmm0, dword [rbp - 0x68]
lea rax, [rbp + 0x50]
mov rcx, rsi
vmovss dword [rsp + 0x30], xmm0
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x48]
mov eax, dword [rbp + 0x168]
mov dword [rsp + 0x20], eax
call fcn.140044430
test bl, bl
je 0x140046ef0
lea rax, [rsi + 0x2b0]
mov qword [rsi + 0x2a8], rax
vmovss xmm5, dword [rsi + 0x50]
mov ecx, r15d
shr ecx, 3
not cl
and cl, 1
vucomiss xmm5, xmm14
jne 0x140046f46
vmovss xmm0, dword [rsi + 0x58]
vmovss xmm1, dword [rsi + 0x30]
vaddss xmm2, xmm0, xmm0
vmovss xmm0, dword [rsi + 0x70]
vsubss xmm3, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x68]
mov eax, r15d
and eax, 0x808
vsubss xmm1, xmm3, xmm2
cmp eax, 0x800
jne 0x140046f3d
vmovss xmm0, dword [rsi + 0x40]
jmp 0x140046f42
vmovaps xmm0, xmm14
vmaxss xmm5, xmm1, xmm0
vmovss xmm4, dword [rsi + 0x54]
vucomiss xmm4, xmm14
jne 0x140046f86
vmovss xmm0, dword [rsi + 0x5c]
vmovss xmm1, dword [rsi + 0x34]
vaddss xmm2, xmm0, xmm0
vmovss xmm0, dword [rsi + 0x74]
vsubss xmm3, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x6c]
vsubss xmm1, xmm3, xmm2
test cl, cl
je 0x140046f7d
vmovss xmm0, dword [rsi + 0x44]
jmp 0x140046f82
vmovaps xmm0, xmm14
vmaxss xmm4, xmm1, xmm0
vmovss xmm0, dword [rsi + 0x208]
vsubss xmm3, xmm0, dword [rsi + 0x8c]
vmovss xmm1, dword [rsi + 0x64]
vmaxss xmm2, xmm1, dword [rsi + 0x58]
vaddss xmm0, xmm3, xmm2
vcvttss2si eax, xmm0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmovss dword [rsi + 0x228], xmm1
vmovss xmm0, dword [rsi + 0x20c]
vsubss xmm3, xmm0, dword [rsi + 0x90]
vmovss xmm1, dword [rsi + 0x64]
vmaxss xmm2, xmm1, dword [rsi + 0x5c]
vaddss xmm0, xmm3, xmm2
vcvttss2si eax, xmm0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmovss dword [rsi + 0x22c], xmm1
vaddss xmm0, xmm5, dword [rsi + 0x228]
vmovss dword [rsi + 0x230], xmm0
vaddss xmm1, xmm4, dword [rsi + 0x22c]
vmovss dword [rsi + 0x234], xmm1
vmovups xmm0, xmmword [rsi + 0x228]
vmovups xmmword [rsi + 0x238], xmm0
vmovss xmm0, dword [rsi + 0x28]
vsubss xmm1, xmm0, dword [rsi + 0x8c]
vaddss xmm2, xmm1, dword [rsi + 0x58]
vaddss xmm3, xmm2, dword [rsi + 0x68]
vmovss dword [rsi + 0x258], xmm3
vmovss xmm0, dword [rsi + 0x2c]
vsubss xmm1, xmm0, dword [rsi + 0x90]
vaddss xmm2, xmm1, dword [rsi + 0x5c]
vaddss xmm3, xmm2, dword [rsi + 0x6c]
vmovss dword [rsi + 0x25c], xmm3
vmovss xmm0, dword [rsi + 0x50]
vucomiss xmm0, xmm14
jne 0x140047084
vmovss xmm0, dword [rsi + 0x58]
vmovss xmm1, dword [rsi + 0x30]
vaddss xmm2, xmm0, xmm0
vmovss xmm0, dword [rsi + 0x70]
vsubss xmm3, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x68]
vsubss xmm0, xmm3, xmm2
vaddss xmm0, xmm0, dword [rsi + 0x258]
vmovss dword [rsi + 0x260], xmm0
vmovss xmm1, dword [rsi + 0x54]
vucomiss xmm1, xmm14
jne 0x1400470c0
vmovss xmm0, dword [rsi + 0x5c]
vmovss xmm1, dword [rsi + 0x34]
vaddss xmm2, xmm0, xmm0
vmovss xmm0, dword [rsi + 0x74]
vsubss xmm3, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x6c]
vsubss xmm1, xmm3, xmm2
vaddss xmm0, xmm1, dword [rsi + 0x25c]
vmovss dword [rsi + 0x264], xmm0
vmovss xmm1, dword [rsi + 0x58]
vaddss xmm2, xmm1, dword [rsi + 0x68]
vsubss xmm0, xmm2, dword [rsi + 0x8c]
vmovss dword [rsi + 0x154], xmm0
xor ecx, ecx
lea rbx, [rsi + 0x17c]
mov qword [rsi + 0x158], rcx
vmovss xmm1, dword [rsi + 0x58]
vmovss xmm0, dword [rsi + 0x28]
vcvtss2sd xmm0, xmm0, xmm0
vcvtss2sd xmm1, xmm1, xmm1
vaddsd xmm2, xmm1, xmm0
vmovss xmm1, dword [rsi + 0x8c]
vmovss xmm0, dword [rsi + 0x68]
vcvtss2sd xmm0, xmm0, xmm0
vcvtss2sd xmm1, xmm1, xmm1
vsubsd xmm3, xmm2, xmm1
vmovss xmm2, dword [rsi + 0x2c]
vmovss xmm1, dword [rsi + 0x5c]
vaddsd xmm6, xmm3, xmm0
vmovss xmm0, dword [rsi + 0x90]
vcvtss2sd xmm0, xmm0, xmm0
vcvtss2sd xmm1, xmm1, xmm1
vcvtss2sd xmm2, xmm2, xmm2
vaddsd xmm3, xmm2, xmm1
vmovss xmm1, dword [rsi + 0x6c]
vsubsd xmm4, xmm3, xmm0
vcvtss2sd xmm1, xmm1, xmm1
vaddsd xmm5, xmm4, xmm1
vcvtsd2ss xmm0, xmm6, xmm6
vmovss dword [rsi + 0x120], xmm0
vcvtsd2ss xmm2, xmm5, xmm5
vmovss dword [rsi + 0x124], xmm2
vmovss xmm0, dword [rsi + 0x120]
vcvtss2sd xmm0, xmm0, xmm0
vsubsd xmm1, xmm6, xmm0
vcvtsd2ss xmm3, xmm1, xmm1
vmovss dword [rsi + 0x160], xmm3
vinsertps xmm2, xmm2, xmm2, 0xe
vcvtss2sd xmm2, xmm2, xmm2
vsubsd xmm0, xmm5, xmm2
vcvtsd2ss xmm1, xmm0, xmm0
vmovss dword [rsi + 0x164], xmm1
vmovss xmm0, dword [rsi + 0x120]
vmovss xmm2, dword [rsi + 0x124]
vmovss dword [rsi + 0x110], xmm0
vmovss dword [rsi + 0x114], xmm2
vmovss dword [rsi + 0x118], xmm0
vmovss dword [rsi + 0x11c], xmm2
vmovsd xmm0, qword [rsi + 0x120]
vmovsd qword [rsi + 0x128], xmm0
vmovsd xmm1, qword [rsi + 0x120]
vmovsd qword [rsi + 0x130], xmm1
mov qword [rsi + 0x140], rcx
mov qword [rsi + 0x138], rcx
mov qword [rsi + 0x148], rcx
mov word [rsi + 0x150], cx
mov dword [rsi + 0x168], ecx
movzx eax, word [rsi + 0x16e]
mov word [rsi + 0x16c], ax
mov dword [rsi + 0x16e], 0x10000
vcomiss xmm14, dword [rsi + 0x98]
setb al
mov byte [rsi + 0x172], al
mov byte [rsi + 0x173], cl
vmovss xmm0, dword [r14 + 0x393c]
cmp byte [rbp + 0x158], cl
je 0x140047266
xor eax, eax
mov qword [rbx + 0x12], rax
vcvttss2si eax, xmm0
mov rcx, rbx
mov word [rbx + 8], ax
call fcn.140080380
xor eax, eax
lea rcx, [rsi + 0x1a0]
mov qword [rbx + 0x12], rax
xor edi, edi
mov eax, dword [rbx + 4]
mov dword [rbx], eax
mov dword [rbx + 4], edi
mov qword [rsi + 0x198], rdi
call fcn.140053cb0
lea rax, [rsi + 0x280]
mov ebx, 1
mov qword [rsi + 0x1b0], rax
mov qword [rsi + 0x1b8], rdi
mov dword [rsi + 0x1c4], ebx
test r13, r13
je 0x1400472c7
mov eax, dword [r13 + 0x1c4]
jmp 0x1400472c9
mov eax, ebx
mov dword [rsi + 0x1c8], eax
lea rcx, [rsi + 0x1d8]
mov eax, dword [rsi + 0x278]
mov dword [rsi + 0x1cc], eax
mov dword [rsi + 0x1d0], 0xbf800000
call fcn.140053f50
lea rcx, [rsi + 0x1e8]
call fcn.140053f50
movzx eax, byte [rsi + 0xdc]
test al, al
jle 0x140047310
dec al
mov byte [rsi + 0xdc], al
movzx eax, byte [rsi + 0xdd]
test al, al
jle 0x140047323
dec al
mov byte [rsi + 0xdd], al
test r12b, r12b
je 0x140047348
mov edx, 2
mov rcx, rsi
call fcn.140047a70
cmp rsi, qword [r14 + 0x4b08]
jne 0x140047348
xor edx, edx
mov rcx, rsi
call fcn.14004e1e0
vmovss xmm6, dword [rsp + 0x40]
test bl, r15b
jne 0x140047389
vaddss xmm0, xmm12, dword [rsi + 0x64]
vsubss xmm1, xmm6, dword [rsi + 0x64]
mov r8, qword [rbp + 0x150]
lea rdx, [rsp + 0x60]
mov rcx, rsi
vmovss dword [rsp + 0x60], xmm0
vmovss dword [rsp + 0x68], xmm1
vmovss dword [rsp + 0x64], xmm15
vmovss dword [rsp + 0x6c], xmm13
call fcn.140044bb0
mov rdx, qword [0x1401d33a8]
mov dword [rsi + 0x268], edi
vmovss xmm4, dword [rdx + 0x3954]
vmovss xmm3, dword [rdx + 0xe48]
vsubss xmm0, xmm12, xmm4
vcomiss xmm3, xmm0
jb 0x1400473e2
vmovss xmm2, dword [rdx + 0x3958]
vmovss xmm1, dword [rdx + 0xe4c]
vsubss xmm0, xmm15, xmm2
vcomiss xmm1, xmm0
jb 0x1400473e2
vaddss xmm0, xmm4, xmm6
vcomiss xmm3, xmm0
jae 0x1400473e2
vaddss xmm0, xmm2, xmm13
vcomiss xmm1, xmm0
mov r8d, ebx
jb 0x1400473e5
mov r8d, edi
mov eax, dword [rsi + 0x84]
mov ecx, dword [r14 + 0x4980]
vbroadcastf128 ymm0, xmmword [rbp - 0x48]
vmovups ymmword [rdx + 0x49b4], ymm0
mov dword [rdx + 0x49a8], eax
mov dword [rdx + 0x49ac], ecx
mov dword [rdx + 0x49b0], r8d
mov eax, dword [r14 + 0x4984]
test eax, eax
je 0x1400474d1
cmp dword [rsi + 0x10], eax
je 0x140047433
cmp dword [rsi + 0x84], eax
jne 0x1400474d1
vzeroupper
call fcn.140052f60
jmp 0x1400474d1
mov rcx, qword [0x1401d33a8]
mov qword [rcx + 0x4038], rsi
movsxd rax, dword [rsi + 0x1c0]
cmp eax, 0xffffffff
je 0x14004746c
imul rdx, rax, 0x250
add rdx, qword [rcx + 0x4e00]
xor edi, edi
jmp 0x140047470
xor edi, edi
mov edx, edi
mov qword [rcx + 0x4dd8], rdx
mov rax, qword [rsi]
vmovss xmm0, dword [rax + 0x3d64]
mov rax, qword [rsi + 0x378]
vmulss xmm1, xmm0, dword [rsi + 0x2a0]
test rax, rax
je 0x14004749e
vmulss xmm1, xmm1, dword [rax + 0x2a0]
vmovss dword [rcx + 0x3d78], xmm1
vmovss dword [rcx + 0x3d60], xmm1
test rdx, rdx
jne 0x1400474c0
cmp qword [rsi + 0x1b8], r12
jne 0x1400474c0
mov al, 1
jmp 0x1400474c2
xor al, al
mov r13, qword [rbp - 0x78]
mov ebx, 1
mov byte [rsi + 0x170], al
lea rdx, [rsi + 0x220]
mov r8b, 1
lea rcx, [rsi + 0x218]
vzeroupper
call fcn.140040d20
mov eax, dword [rsp + 0x4c]
mov byte [rsi + 0xc0], 0
inc word [rsi + 0xcc]
mov dword [r14 + 0x49e8], edi
cmp eax, dword [rsp + 0x50]
je 0x140047671
mov eax, r15d
and eax, 0x11000000
cmp eax, 0x1000000
jne 0x1400475e2
bt r15d, 0x17
jae 0x140047551
cmp byte [r14 + 0x4b54], 0
je 0x140047551
mov rcx, qword [r14 + 0x4b08]
test rcx, rcx
je 0x140047551
mov rax, qword [rsi + 0x3a0]
cmp qword [rcx + 0x3a0], rax
jne 0x140047551
mov al, 1
jmp 0x140047553
xor al, al
cmp byte [r14 + 0x5fb8], 0
jne 0x1400475a7
test al, al
jne 0x1400475a7
vmovss xmm0, dword [rsi + 0x200]
vcomiss xmm0, dword [rsi + 0x1f8]
jbe 0x140047585
vmovss xmm0, dword [rsi + 0x204]
vcomiss xmm0, dword [rsi + 0x1fc]
ja 0x1400475a7
cmp byte [rsi + 0xdc], 0
jg 0x1400475a0
cmp byte [rsi + 0xdd], 0
jg 0x1400475a0
mov byte [rsi + 0xe4], 1
jmp 0x1400475a7
mov byte [rsi + 0xe5], 1
test r13, r13
je 0x1400475e2
cmp byte [r13 + 0xc1], 0
jne 0x1400475c0
cmp byte [r13 + 0xe4], 0
jle 0x1400475c7
mov byte [rsi + 0xe4], 1
cmp byte [r13 + 0xc1], 0
jne 0x1400475db
cmp byte [r13 + 0xe5], 0
jle 0x1400475e2
mov byte [rsi + 0xe5], 1
vcomiss xmm14, dword [r14 + 0x38f0]
jb 0x1400475f4
mov byte [rsi + 0xe4], 1
cmp byte [rsi + 0xe4], 0
jg 0x140047614
cmp byte [rsi + 0xe5], 0
jg 0x140047614
xor cl, cl
cmp byte [rsi + 0xe6], cl
jg 0x140047616
xor al, al
jmp 0x140047618
mov cl, 1
mov al, 1
mov byte [rsi + 0xc5], al
movzx eax, byte [rsi + 0xe7]
test al, al
jle 0x140047638
dec al
mov byte [rsi + 0xe7], al
or dword [rsi + 0x14], 0x30200
xor al, al
cmp byte [rsi + 0xc1], al
jne 0x14004764e
cmp byte [rsi + 0xbe], al
je 0x14004764e
test cl, cl
je 0x14004766b
cmp byte [rsi + 0xdc], al
jg 0x14004766b
cmp byte [rsi + 0xdd], al
jg 0x14004766b
cmp byte [rsi + 0xe5], 0
movzx eax, al
cmovle eax, ebx
mov byte [rsi + 0xc3], al
cmp byte [rsi + 0xc6], 0
jne 0x1400476ca
cmp byte [r14 + 0x78], 0
je 0x140047688
cmp qword [rbp - 0x70], 0
je 0x1400476a0
cmp byte [r14 + 0x79], 0
je 0x1400476ca
movsx eax, byte [r14 + 0x602a]
cmp eax, dword [r14 + 0x4008]
jne 0x1400476ca
movzx eax, byte [rsi + 0xdc]
test al, al
jle 0x1400476b3
inc al
mov byte [rsi + 0xdc], al
movzx eax, byte [rsi + 0xdd]
test al, al
jle 0x1400476c6
inc al
mov byte [rsi + 0xdd], al
xor al, al
jmp 0x1400476d4
cmp byte [rsi + 0xc3], 0
sete al
vmovaps xmm15, xmmword [rsp + 0x160]
vmovaps xmm13, xmmword [rsp + 0x180]
vmovaps xmm12, xmmword [rsp + 0x190]
vmovaps xmm11, xmmword [rsp + 0x1a0]
vmovaps xmm10, xmmword [rsp + 0x1b0]
vmovaps xmm9, xmmword [rsp + 0x1c0]
vmovaps xmm8, xmmword [rsp + 0x1d0]
vmovaps xmm7, xmmword [rsp + 0x1e0]
vmovaps xmm6, xmmword [rsp + 0x1f0]
vmovaps xmm14, xmmword [rsp + 0x170]
add rsp, 0x208
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140039ce0
int3
lea rcx, [0x1401d3698]
call fcn.1400ef550
cmp dword [0x1401d3698], 0xffffffff
jne 0x140046a74
mov ecx, 0x28
mov qword [0x1401d36a0], r12
mov qword [0x1401d36a8], r12
call fcn.1400ef224
lea rcx, [0x1400f4aa0]
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x1401d36a0], rax
call fcn.1400ef488
lea rcx, [0x1401d3698]
call fcn.1400ef4e4
jmp 0x140046a74