Function at 0x140029990
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x388]
sub rsp, 0x460
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
mov rax, qword [0x140071100]
xor rax, rsp
mov qword [rbp + 0x2d0], rax
xor r12d, r12d
mov byte [0x140071fe8], r12b
mov byte [0x140071ff8], r12b
mov rdx, qword [0x140071d98]
add rdx, qword [0x140071fb0]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [0x140072068], rax
test rax, rax
je 0x14002a7a8
mov rdx, qword [0x140071e00]
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov dword [0x140072078], eax
test eax, eax
je 0x14002a7a8
mov rdx, qword [0x140071e18]
add rdx, qword [0x140071fb0]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [0x140072060], rax
mov edx, dword [0x140072078]
shr edx, 9
and edx, 0x3f
shl edx, 3
add rdx, 0x10
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [0x140072080], rax
mov edx, dword [0x140072078]
and edx, 0x1ff
imul edx, edx, 0x78
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [0x140072070], rax
test rax, rax
je 0x14002a7a8
mov rsi, qword [0x140071fa0]
mov rdi, qword [0x140071fb0]
add rdi, qword [0x140071e30]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x20], r12
mov r9d, 0x40
lea r8, [rsp + 0x50]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rbx
movaps xmm0, xmmword [rsp + 0x50]
movaps xmmword [0x140072020], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movaps xmmword [0x140072030], xmm1
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [0x140072040], xmm0
movaps xmm1, xmmword [rbp - 0x80]
movaps xmmword [0x140072050], xmm1
mov rdx, qword [0x140071dd0]
add rdx, qword [0x140072068]
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov dword [0x140071ffc], eax
mov rsi, qword [0x140071fa0]
mov rdi, qword [0x140072070]
add rdi, qword [0x140071e10]
xorps xmm9, xmm9
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x38], r12d
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x20], r12
mov r9d, 0xc
lea r8, [rsp + 0x30]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rbx
movsd xmm0, qword [rsp + 0x30]
movsd qword [0x140071fec], xmm0
mov eax, dword [rsp + 0x38]
mov dword [0x140071ff4], eax
mov rdx, qword [0x140071db0]
mov rax, qword [0x140071fb0]
add rax, 0xfffffffffffffff8
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002adf0
mov byte [0x140071ff8], al
mov byte [0x140071fe8], 1
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x58], xmm1
mov qword [rbp - 0x48], r12
xor edx, edx
mov r8d, 0xb0
lea rcx, [rbp]
call fcn.140054fe0
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], r12
mov qword [rbp + 0x50], 0xf
mov byte [rbp + 0x38], r12b
mov qword [rbp + 0x58], r12
movaps xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], r12
mov ecx, 0x50
call fcn.14002dfe8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r12
mov qword [rbp + 0xa8], 0xf
mov byte [rbp + 0x90], r12b
mov r15d, 1
mov rdx, qword [0x140072060]
add rdx, 0x10
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rcx, rax
test rax, rax
je 0x14002a6bd
mov r13d, 7
movss xmm13, dword [0x14006760c]
movss xmm11, dword [0x140067618]
movss xmm12, dword [0x1400675d8]
movss xmm10, dword [0x1400675d4]
nop word [rax + rax]
mov eax, r15d
and eax, 0x1ff
imul edx, eax, 0x78
add rdx, rcx
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [rbp], rax
test rax, rax
je 0x14002a685
mov rdx, qword [0x140071dd0]
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov dword [rbp + 8], eax
cmp byte [0x1400748ec], 0
je 0x140029d95
cmp eax, dword [0x140071ffc]
je 0x14002a685
mov rdx, qword [rbp]
add rdx, qword [0x140071e00]
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov ebx, eax
mov edx, eax
shr rdx, 9
and edx, 0x3f
mov rax, qword [0x140072060]
add rax, 0x10
lea rdx, [rax + rdx*8]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
test rax, rax
je 0x14002a685
and ebx, 0x1ff
imul rdx, rbx, 0x78
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14002a685
mov rdx, qword [0x140071e08]
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov dword [rbp + 0x30], eax
mov rdx, qword [rbp + 0x10]
add rdx, qword [0x140071e38]
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov dword [rbp + 0x34], eax
mov eax, dword [rbp + 0x30]
dec eax
cmp eax, 0x63
ja 0x14002a685
cmp byte [0x1400748ec], 0
je 0x140029e5c
mov rax, qword [0x140072068]
cmp qword [rbp + 0x10], rax
je 0x14002a685
mov rdx, qword [rbp]
add rdx, qword [0x140071df0]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rdi, rax
mov rsi, qword [0x140071fa0]
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
mov r9d, pe_nt_image_headers64
lea r8, [rbp + 0xc0]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rbx
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
lea rax, [rbp + 0xc0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140029f00
lea rdx, [rbp + 0xc0]
lea rcx, [rbp - 0x40]
call fcn.1400048a0
nop
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 0xf
cmova rdx, qword [rbp - 0x40]
mov r8, qword [rbp - 0x30]
lea rcx, [rbp + 0x38]
call fcn.140022c60
mov rdx, qword [rbp + 0x10]
add rdx, qword [0x140071d90]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [rbp + 0x18], rax
mov rsi, qword [0x140071fa0]
mov rdi, qword [0x140071e10]
add rdi, qword [rbp + 0x10]
mov qword [rsp + 0x3c], 0
mov dword [rsp + 0x44], 0
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x20], r12
mov r9d, 0xc
lea r8, [rsp + 0x3c]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rbx
movsd xmm0, qword [rsp + 0x3c]
movsd qword [rbp + 0x58], xmm0
mov eax, dword [rsp + 0x44]
mov dword [rbp + 0x60], eax
movd xmm3, eax
movaps xmm0, xmm3
addss xmm0, xmm13
movss xmm7, dword [rsp + 0x3c]
movss dword [rbp + 0x64], xmm7
movss xmm6, dword [rsp + 0x40]
movss dword [rbp + 0x68], xmm6
movss dword [rbp + 0x6c], xmm0
movss xmm2, dword [0x140071ff0]
movss xmm1, dword [0x140071fec]
ucomiss xmm7, xmm1
jp 0x14002a030
jne 0x14002a030
ucomiss xmm6, xmm2
jp 0x14002a030
jne 0x14002a030
ucomiss xmm3, dword [0x140071ff4]
jp 0x14002a030
je 0x14002a64a
movss xmm8, dword [0x140071e88]
ucomiss xmm8, xmm11
jp 0x14002a041
je 0x14002a078
subss xmm2, xmm6
subss xmm1, xmm7
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14002a066
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14002a06e
movaps xmm0, xmm1
call fcn.140054770
comiss xmm0, xmm8
ja 0x14002a64a
ucomiss xmm7, xmm9
jp 0x14002a08c
jne 0x14002a08c
ucomiss xmm6, xmm9
jp 0x14002a08c
je 0x14002a64a
cmp byte [0x1400748e8], 0
je 0x14002a2c8
mov rdx, qword [rbp + 0x10]
add rdx, 0x308
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [rbp + 0x18], rax
lea rdx, [rax + 0x1f0]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rdx, rax
mov qword [rbp + 0x20], rax
mov rcx, qword [0x140074960]
mov rcx, qword [rcx]
mov qword [rbp - 0x60], rcx
cmp byte [rcx + 0x19], 0
jne 0x14002a2c8
nop word [rax + rax]
lea r14, [rcx + 0x20]
mov ecx, dword [r14 + 0x20]
mov dword [0x140074928], ecx
shl ecx, 5
movsxd rsi, ecx
add rsi, rdx
mov qword [0x140074940], rsi
mov rdi, qword [0x140071fa0]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x38], 0
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x20], r12
mov r9d, 0xc
lea r8, [rsp + 0x30]
mov rdx, rsi
mov rcx, qword [rdi + 8]
call rbx
movsd xmm0, qword [rsp + 0x30]
movsd qword [0x140074930], xmm0
mov eax, dword [rsp + 0x38]
mov dword [0x140074938], eax
movss xmm5, dword [rsp + 0x34]
movaps xmm8, xmm5
mulss xmm8, dword [0x140072054]
movss xmm4, dword [rsp + 0x30]
movaps xmm0, xmm4
mulss xmm0, dword [0x140072050]
addss xmm8, xmm0
movd xmm3, eax
movaps xmm1, xmm3
mulss xmm1, dword [0x140072058]
addss xmm8, xmm1
addss xmm8, dword [0x14007205c]
movaps xmm2, xmm12
divss xmm2, xmm8
movaps xmm7, xmm5
mulss xmm7, dword [0x140072024]
movaps xmm0, xmm4
mulss xmm0, dword [0x140072020]
addss xmm7, xmm0
movaps xmm1, xmm3
mulss xmm1, dword [0x140072028]
addss xmm7, xmm1
addss xmm7, dword [0x14007202c]
mulss xmm7, xmm2
mulss xmm5, dword [0x140072034]
mulss xmm4, dword [0x140072030]
addss xmm5, xmm4
mulss xmm3, dword [0x140072038]
addss xmm5, xmm3
addss xmm5, dword [0x14007203c]
mulss xmm5, xmm2
movd xmm0, dword [0x140071fd8]
cvtdq2ps xmm0, xmm0
mulss xmm7, xmm10
mulss xmm7, xmm0
addss xmm7, xmm10
mulss xmm0, xmm10
addss xmm7, xmm0
movd xmm0, dword [0x140071fdc]
cvtdq2ps xmm0, xmm0
movaps xmm6, xmm0
mulss xmm6, xmm10
mulss xmm5, xmm10
mulss xmm5, xmm0
addss xmm5, xmm10
subss xmm6, xmm5
mov r8, r14
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x70]
call fcn.1400284f0
mov rcx, qword [rax]
unpcklps xmm7, xmm6
movsd qword [rcx + 0x40], xmm7
movss dword [rcx + 0x48], xmm8
lea rcx, [rbp - 0x60]
call fcn.14002ac20
mov rcx, qword [rbp - 0x60]
cmp byte [rcx + 0x19], 0
jne 0x14002a2c8
mov rdx, qword [rbp + 0x20]
jmp 0x14002a0f0
cmp byte [0x1400748e9], 0
je 0x14002a315
cmp byte [0x1400748e8], 0
jne 0x14002a315
mov rdx, qword [rbp + 0x10]
add rdx, 0x308
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [rbp + 0x18], rax
lea rdx, [rax + 0x1f0]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov qword [rbp + 0x20], rax
lea rcx, [rbp]
call fcn.14002a820
cmp byte [0x1400748eb], 0
je 0x14002a619
mov rdx, qword [rbp + 0x10]
add rdx, qword [0x140071dc8]
mov rcx, qword [0x140071fa0]
call fcn.14002adf0
mov byte [rbp + 0x80], al
mov rdx, qword [rbp]
add rdx, qword [0x140071dc0]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rdx, qword [0x140071dd8]
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ad40
mov dword [rbp + 0x84], eax
mov rsi, qword [0x140071fa0]
mov rdi, qword [0x140071de0]
add rdi, qword [rbp + 0x10]
mov dword [rbp - 0x60], 0
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp - 0x60]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rbx
movss xmm0, dword [rbp - 0x60]
movss dword [rbp + 0x88], xmm0
mov rdx, qword [rbp + 0x10]
add rdx, qword [0x140071db8]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
lea rdx, [rax + 0x360]
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rdx, qword [0x140071df8]
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rdi, rax
mov rsi, qword [0x140071fa0]
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtReadVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtWriteVirtualMemory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rax, [rbp + 0xb8]
mov qword [rsp + 0x20], rax
mov r9d, 0x104
lea r8, [rbp + 0x1c0]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rbx
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r12
mov qword [rbp - 8], r12
lea rax, [rbp + 0x1c0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14002a4b3
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp - 0x20]
call fcn.1400048a0
nop
mov r14, r13
mov rbx, qword [rbp - 0x10]
cmp rbx, r13
cmovb r14, rbx
lea rcx, [rbp - 0x20]
mov rdi, qword [rbp - 0x20]
mov rsi, qword [rbp - 8]
cmp rsi, 0xf
cmova rcx, rdi
mov r8, r14
cmp r14, 7
cmova r8, r13
lea rdx, str.weapon_
call fcn.140055380
test eax, eax
jne 0x14002a511
cmp r14, 7
je 0x14002a52f
mov r8d, 0x13
lea rdx, str.Invalid_Weapon_Name
lea rcx, [rbp + 0x90]
call fcn.140022c60
jmp 0x14002a5e2
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
cmp rbx, 7
jb 0x14002a818
lea rax, [rbx - 7]
cmp rax, rbx
cmovb rbx, rax
lea rdx, [rbp - 0x20]
cmp rsi, 0xf
cmova rdx, rdi
add rdx, 7
mov r8, rbx
lea rcx, [rsp + 0x50]
call fcn.1400048a0
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0xf
jbe 0x14002a5b4
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a5af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a80c
call fcn.14002dfe0
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rbp + 0x90], xmm0
movups xmm1, xmmword [rsp + 0x60]
movaps xmmword [rbp + 0xa0], xmm1
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], 0
mov rsi, qword [rbp - 8]
mov rdi, qword [rbp - 0x20]
cmp rsi, 0xf
jbe 0x14002a619
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002a611
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a812
mov rcx, rdi
call fcn.14002dfe0
mov rax, qword [rbp - 0x50]
cmp rax, qword [rbp - 0x48]
je 0x14002a639
lea rdx, [rbp]
mov rcx, rax
call fcn.14002bf80
add qword [rbp - 0x50], 0xb0
jmp 0x14002a64a
lea r8, [rbp]
mov rdx, rax
lea rcx, [rbp - 0x58]
call fcn.14002b150
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x14002a685
inc rdx
mov rcx, qword [rbp - 0x40]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14002a680
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a800
call fcn.14002dfe0
inc r15d
mov edx, r15d
and edx, 0x7fff
shl edx, 3
sar edx, 9
mov rax, qword [0x140072060]
add rax, 0x10
add rdx, rax
mov rcx, qword [0x140071fa0]
call fcn.14002ac90
mov rcx, rax
test rax, rax
jne 0x140029d40
mov rbx, qword [0x140072008]
mov rdi, qword [0x140072010]
cmp rbx, rdi
je 0x14002a6f2
mov rcx, rbx
call fcn.140028af0
add rbx, 0xb0
cmp rbx, rdi
jne 0x14002a6d0
mov rax, qword [0x140072008]
mov qword [0x140072010], rax
mov rcx, qword [rbp - 0x50]
sub rcx, qword [rbp - 0x58]
movabs rsi, 0x2e8ba2e8ba2e8ba3
mov rax, rsi
imul rcx
sar rdx, 5
mov r8, rdx
shr r8, 0x3f
add r8, rdx
mov rdx, qword [rbp - 0x58]
lea rcx, [0x140072008]
call fcn.14002aed0
nop
lea rcx, [rbp]
call fcn.140028af0
nop
mov rbx, qword [rbp - 0x58]
test rbx, rbx
je 0x14002a7a8
mov rdi, qword [rbp - 0x50]
cmp rbx, rdi
je 0x14002a75d
mov rcx, rbx
call fcn.140028af0
add rbx, 0xb0
cmp rbx, rdi
jne 0x14002a745
mov rbx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x48]
sub rcx, rbx
mov rax, rsi
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0xb0
mov rax, rbx
cmp rdx, 0x1000
jb 0x14002a7a0
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a806
mov rcx, rbx
call fcn.14002dfe0
mov rcx, qword [rbp + 0x2d0]
xor rcx, rsp
call fcn.14002dfc0
lea r11, [rsp + 0x460]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14003c678
nop
call fcn.14003c678
nop
call fcn.14003c678
nop
call fcn.14003c678
nop
call fcn.14000ceb0
int3