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

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 - 0x288]
sub rsp, 0x360
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
mov rax, qword [0x14014c040]
xor rax, rsp
mov qword [rbp + 0x200], rax
xor r12d, r12d
lea rcx, [rbp + 0x90]
call fcn.140001390
mov rax, qword [0x1401e4880]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140054d20
mov r13, rax
xorps xmm8, xmm8
movss xmm10, dword [0x14013a330]
cmp byte [0x1401e47ca], r12b
je 0x14001fb83
cmp byte [0x1401e4838], r12b
je 0x14001fb83
movss xmm0, dword [0x14014c104]
mulss xmm0, dword [0x14013a2d4]
movss xmm6, dword [0x1401e4b10]
mulss xmm6, xmm10
mulss xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm7, xmm0
mulss xmm7, dword [0x14013a384]
mulss xmm7, xmm6
lea rcx, [0x14014c0f0]
call fcn.140050860
mov ebx, eax
movss xmm0, dword [0x1401e4b14]
mulss xmm0, xmm10
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm0
test eax, 0xff000000
je 0x14001fb83
comiss xmm7, xmm10
jb 0x14001fb83
mov dword [rsp + 0x28], 0x3f
movss xmm0, dword [0x14013a3c0]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movaps xmm2, xmm7
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.14006e270
mov r9d, ebx
mov r8d, dword [r13 + 0x78]
mov rdx, qword [r13 + 0x80]
mov rcx, r13
call fcn.14006d7e0
mov dword [r13 + 0x78], r12d
lea r8, [0x1401e49d0]
lea rdx, [rbp + 0x198]
lea rcx, [0x1401e4960]
call fcn.14000ed00
mov r15, qword [rax]
mov qword [rbp - 0x58], r15
mov rbx, qword [0x1401e4960]
mov rbx, qword [rbx]
movss xmm9, dword [0x14013a36c]
movss xmm7, dword [0x14013a3d4]
cmp byte [rbx + 0x19], r12b
jne 0x140020449
movabs r14, 0x6666666666666667
movss xmm6, dword [0x14013a3d8]
lea rsi, [0x14010f608]
lea rdi, str.:.1f
cmp byte [rbx + 0x29], 0
jne 0x1400203e9
cmp byte [rbx + 0x28], 0
je 0x1400203e9
cmp byte [0x14014c0d0], 0
je 0x14001fc14
movzx eax, byte [r15 + 0x30]
cmp byte [rbx + 0x30], al
je 0x1400203e9
cmp byte [0x1401e4766], 0
je 0x14001fc4a
lea rcx, [0x14014c0b8]
call fcn.140050860
mov r9d, eax
lea r8, [rbx + 0x48]
lea rdx, [rbx + 0x40]
movss dword [rsp + 0x30], xmm9
movss dword [rsp + 0x20], xmm8
mov rcx, r13
call fcn.14006ed30
cmp byte [0x1401e4768], 0
je 0x14001fc9f
lea rdi, [rbx + 0x50]
lea rsi, [rdi + 0x110]
cmp rdi, rsi
je 0x14001fc91
lea rcx, [0x14014c0a8]
call fcn.140050860
mov r9d, eax
lea r8, [rdi + 8]
movss dword [rsp + 0x20], xmm9
mov rdx, rdi
mov rcx, r13
call fcn.14006ebd0
add rdi, 0x10
cmp rdi, rsi
jne 0x14001fc63
lea rsi, [0x14010f608]
lea rdi, str.:.1f
cmp byte [0x1401e4838], 1
jne 0x1400203e9
cmp byte [0x1401e4761], 0
je 0x14001fd03
lea rcx, [0x14014c098]
call fcn.140050860
mov rcx, qword [0x1401e4880]
movss xmm1, dword [rcx + 0x14]
mulss xmm1, xmm10
movss xmm0, dword [rcx + 0x10]
mulss xmm0, xmm10
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm1
lea r8, [rbx + 0x38]
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.14006ebd0
xorps xmm0, xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1a8], xmm1
mov qword [rbp + 0x1b8], r12
cmp byte [0x1401e4762], 0
je 0x14001fddc
movups xmmword [rbp + 0xb8], xmm0
mov qword [rbp + 0xc8], r12
mov qword [rbp + 0xd0], r12
mov r8d, 0x13
lea rdx, str.Montserrat_Semibold
lea rcx, [rbp + 0xb8]
call fcn.140002b40
mov r8d, 0xa
lea rdx, [rbp + 0xb8]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov qword [rbp - 0x50], rax
lea rdx, [rbx + 0x170]
lea rcx, [rbp - 0x48]
call fcn.14000be00
nop
mov rdx, qword [rbp + 0x1b0]
cmp rdx, qword [rbp + 0x1b8]
je 0x14001fdc2
mov rax, qword [rbp - 0x50]
mov qword [rdx], rax
movups xmm0, xmmword [rbp - 0x48]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rbp - 0x38]
movups xmmword [rdx + 0x18], xmm1
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], 0xf
mov byte [rbp - 0x48], 0
add qword [rbp + 0x1b0], 0x28
jmp 0x14001fdd3
lea r8, [rbp - 0x50]
lea rcx, [rbp + 0x1a8]
call fcn.140023a80
nop
lea rcx, [rbp - 0x48]
call fcn.14000d460
cmp byte [0x1401e4763], 0
je 0x14001ff64
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], 6
movss xmm0, dword [rbx + 0x2c]
movss dword [rbp - 0x68], xmm0
movabs rax, 0x7000000000000000
mov qword [rbp - 0x70], rax
mov qword [rbp + 0x30], 1
lea rax, [rbp - 0x70]
mov qword [rbp + 0x38], rax
movaps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp - 0x20], xmm0
movaps xmm1, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x10], xmm1
lea r8, [rbp - 0x20]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x158]
call fcn.1400238b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r12
mov qword [rbp + 8], r12
mov r8d, 0x14
lea rdx, [0x140135158]
lea rcx, [rbp - 0x10]
call fcn.140002b40
nop
lea r9, [rbp + 0x158]
lea r8, [rbp - 0x10]
lea rcx, [rsp + 0x60]
call fcn.140011290
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], r12
mov qword [rbp + 0xf0], r12
mov r8d, 0x13
lea rdx, str.Montserrat_Semibold
lea rcx, [rbp + 0xd8]
call fcn.140002b40
mov r8d, 0xa
lea rdx, [rbp + 0xd8]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov qword [rbp - 0x50], rax
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp - 0x48], xmm1
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rbp - 0x38], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
mov rdx, qword [rbp + 0x1b0]
cmp rdx, qword [rbp + 0x1b8]
je 0x14001ff28
mov qword [rdx], rax
movups xmmword [rdx + 8], xmm1
movups xmmword [rdx + 0x18], xmm0
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], 0xf
mov byte [rbp - 0x48], 0
add qword [rbp + 0x1b0], 0x28
jmp 0x14001ff39
lea r8, [rbp - 0x50]
lea rcx, [rbp + 0x1a8]
call fcn.140023a80
nop
lea rcx, [rbp - 0x48]
call fcn.14000d460
nop
lea rcx, [rsp + 0x60]
call fcn.14000d460
nop
lea rcx, [rbp - 0x10]
call fcn.14000d460
nop
lea rcx, [rbp + 0x158]
call fcn.14000d460
cmp byte [0x1401e4767], 0
je 0x1400200e8
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x68], 2
mov eax, dword [rbx + 0x34]
mov dword [rbp + 0x48], eax
movabs rax, 0x1000000000000000
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x50], 1
lea rax, [rbp + 0x40]
mov qword [rbp + 0x58], rax
movaps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp - 0x20], xmm0
movaps xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x10], xmm1
lea r8, [rbp - 0x20]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x178]
call fcn.1400238b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r12
mov qword [rbp + 8], r12
mov r8d, 6
lea rdx, [0x140135170]
lea rcx, [rbp - 0x10]
call fcn.140002b40
nop
lea r9, [rbp + 0x178]
lea r8, [rbp - 0x10]
lea rcx, [rsp + 0x60]
call fcn.140011290
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x108], r12
mov qword [rbp + 0x110], r12
mov r8d, 0x13
lea rdx, str.Montserrat_Semibold
lea rcx, [rbp + 0xf8]
call fcn.140002b40
mov r8d, 0xa
lea rdx, [rbp + 0xf8]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov qword [rbp - 0x50], rax
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp - 0x48], xmm1
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rbp - 0x38], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
mov rdx, qword [rbp + 0x1b0]
cmp rdx, qword [rbp + 0x1b8]
je 0x1400200ac
mov qword [rdx], rax
movups xmmword [rdx + 8], xmm1
movups xmmword [rdx + 0x18], xmm0
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], 0xf
mov byte [rbp - 0x48], 0
add qword [rbp + 0x1b0], 0x28
jmp 0x1400200bd
lea r8, [rbp - 0x50]
lea rcx, [rbp + 0x1a8]
call fcn.140023a80
nop
lea rcx, [rbp - 0x48]
call fcn.14000d460
nop
lea rcx, [rsp + 0x60]
call fcn.14000d460
nop
lea rcx, [rbp - 0x10]
call fcn.14000d460
nop
lea rcx, [rbp + 0x178]
call fcn.14000d460
cmp byte [0x1401e4760], 0
je 0x1400201ea
lea rdx, [rbx + 0x190]
lea rcx, [rbp - 0x50]
call fcn.14000be00
mov rcx, rax
call fcn.14001f2d0
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], r12
mov qword [rbp + 0x88], r12
mov r8d, 8
lea rdx, str.GunIcons
lea rcx, [rbp + 0x70]
call fcn.140002b40
mov r8d, 0x10
lea rdx, [rbp + 0x70]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdi + r8], 0
jne 0x140020170
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.140002b40
nop
mov rdx, qword [rbp + 0x1b0]
cmp rdx, qword [rbp + 0x1b8]
je 0x1400201ce
mov rax, qword [rsp + 0x60]
mov qword [rdx], rax
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rdx + 0x18], xmm1
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 0xf
mov byte [rsp + 0x68], 0
add qword [rbp + 0x1b0], 0x28
jmp 0x1400201e0
lea r8, [rsp + 0x60]
lea rcx, [rbp + 0x1a8]
call fcn.140023a80
nop
lea rcx, [rsp + 0x68]
call fcn.14000d460
xor r15b, r15b
mov rdi, qword [rbp + 0x1b0]
mov rcx, rdi
mov rsi, qword [rbp + 0x1a8]
sub rcx, rsi
mov rax, r14
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x140020359
mov r14, r12
movabs r12, 0x6666666666666667
nop dword [rax + rax]
lea rdi, [r14 + r14*4]
mov rcx, qword [rsi + rdi*8]
call fcn.14005da00
mov rax, qword [rbp + 0x1a8]
lea r8, [rax + 8]
lea r8, [r8 + rdi*8]
cmp qword [r8 + 0x18], 0xf
jbe 0x140020256
mov r8, qword [r8]
mov rcx, qword [rbp + 0x1b0]
sub rcx, rax
mov rax, r12
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movzx eax, r15b
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lea rax, [rdx - 1]
cmp r14, rax
jne 0x14002028e
mulss xmm1, xmm6
jmp 0x140020292
mulss xmm1, xmm7
addss xmm1, dword [rbx + 0x44]
movss xmm0, dword [rbx + 0x48]
addss xmm0, xmm7
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1400202b1
add rcx, r8
cmp r8, rcx
je 0x14002030f
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x20], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rbp - 0x20]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0xffffffff
lea r9, [rbp - 0x60]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.140072500
call fcn.14005daa0
inc r15b
mov rdi, qword [rbp + 0x1b0]
mov rcx, rdi
mov rsi, qword [rbp + 0x1a8]
sub rcx, rsi
mov rax, r12
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movzx r14d, r15b
cmp r14, rdx
jb 0x140020230
xor r12d, r12d
movabs r14, 0x6666666666666667
test rsi, rsi
je 0x1400203e5
cmp rsi, rdi
je 0x140020380
lea rcx, [rsi + 8]
call fcn.14000d460
add rsi, 0x28
cmp rsi, rdi
jne 0x140020367
mov rsi, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x1b8]
sub rcx, rsi
mov rax, r14
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*4]
shl rdx, 3
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400203cb
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400204f9
mov rcx, rsi
call fcn.1400eba8c
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1a8], xmm0
mov qword [rbp + 0x1b8], r12
mov r15, qword [rbp - 0x58]
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140020418
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140020413
nop dword [rax]
cmp rbx, qword [rax + 0x10]
jne 0x140020413
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140020400
mov rbx, rax
jmp 0x14002043f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x14002043f
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x140020430
cmp byte [rbx + 0x19], 0
je 0x14001fbdb
cmp byte [0x1401e4838], 1
jne 0x140020ee7
mov rbx, qword [0x1401e4970]
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne 0x140020ca9
movss xmm6, dword [0x14013a3b4]
cmp byte [rbx + 0x28], 0
je 0x140020c53
cmp qword [rbx + 0x58], 0
je 0x140020c53
cmp byte [0x1401e4764], 0
je 0x14002089f
lea r14, [rbx + 0x48]
cmp qword [rbx + 0x60], 0xf
jbe 0x1400204a3
mov r14, qword [rbx + 0x48]
mov rax, qword [rbx + 0x58]
cmp rax, 6
jb 0x14002089f
lea rdi, [rax + r14]
lea r8, [rdi - 5]
sub r8, r14
mov edx, 0x77
mov rcx, r14
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14002089f
mov rdx, r12
lea r8, str.weapon
nop dword [rax]
movzx ecx, byte [rax + rdx]
inc rdx
cmp cl, byte [r8 + rdx - 1]
jne 0x140020500
cmp rdx, 6
jne 0x1400204e0
mov ecx, r12d
jmp 0x140020505
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x14002052a
inc rax
lea r8, [rdi - 5]
sub r8, rax
mov edx, 0x77
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x1400204d2
jmp 0x14002089f
sub rax, r14
cmp rax, 0xffffffffffffffff
je 0x14002089f
cmp dword [rbx + 0x68], 0xffffffff
jne 0x14002089f
lea rdx, [rbx + 0x48]
lea rcx, [rbp + 0x1e0]
call fcn.14000be00
nop
lea rsi, [rbp + 0x1e0]
cmp qword [rbp + 0x1f8], 0xf
seta cl
mov rdi, qword [rbp + 0x1e0]
cmova rsi, rdi
lea rdx, [rbp + 0x1e0]
mov r14, qword [rbp + 0x1f0]
test cl, cl
je 0x140020586
add r14, rdi
jmp 0x140020590
add r14, rdx
lea rdi, [rbp + 0x1e0]
cmp rdi, r14
je 0x1400205b4
sub rsi, rdi
nop dword [rax + rax]
movsx ecx, byte [rdi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [rsi + rdi], al
inc rdi
cmp rdi, r14
jne 0x1400205a0
lea rcx, [0x14014c0b8]
call fcn.140050860
mov r9d, eax
lea rdx, [rbx + 0x38]
movss dword [rsp + 0x30], xmm9
movss dword [rsp + 0x20], xmm8
lea r8, [rbx + 0x40]
mov rcx, r13
call fcn.14006ed30
lea rcx, [0x14014c098]
call fcn.140050860
mov rcx, qword [0x1401e4880]
movss xmm1, dword [rcx + 0x14]
mulss xmm1, xmm10
movss xmm0, dword [rcx + 0x10]
mulss xmm0, xmm10
movss dword [rbp - 0x58], xmm0
movss dword [rbp - 0x54], xmm1
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea r8, [rbx + 0x40]
lea rdx, [rbp - 0x58]
mov rcx, r13
call fcn.14006ebd0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov r8d, 0x13
lea rdx, str.Montserrat_Semibold
lea rcx, [rsp + 0x60]
call fcn.140002b40
mov r8d, 0xc
lea rdx, [rsp + 0x60]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov rcx, rax
call fcn.14005da00
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb0], r12
mov rax, qword [rbp + 0x1f0]
cmp rax, 7
jb 0x140020f61
add rax, 0xfffffffffffffff9
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0x1e0]
cmp qword [rbp + 0x1f8], 0xf
cmova rdx, qword [rbp + 0x1e0]
add rdx, 7
lea rcx, [rbp + 0x98]
call fcn.140002b40
nop
lea rdx, [rbp + 0x98]
cmp qword [rbp + 0xb0], 0xf
cmova rdx, qword [rbp + 0x98]
movss xmm1, dword [rbx + 0x3c]
movss xmm0, dword [rbx + 0x40]
addss xmm0, xmm6
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140020710
add rcx, rdx
cmp rdx, rcx
je 0x14002076e
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x70], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rbp - 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0xffffffff
lea r9, [rbp - 0x60]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.140072500
nop
lea rcx, [rbp + 0x98]
call fcn.14000d460
lea rax, str.:.1f_.
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 0xa
movss xmm0, dword [rbx + 0x2c]
movss dword [rbp + 0x68], xmm0
movabs rax, 0x7000000000000000
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x50], 1
lea rax, [rbp + 0x60]
mov qword [rbp + 0x58], rax
movaps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp - 0x70], xmm0
movaps xmm1, xmmword [rbp + 0x40]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rbp - 0x70]
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x118]
call fcn.1400238b0
nop
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 0xf
cmova rdx, qword [rbp + 0x118]
movss xmm1, dword [rbx + 0x3c]
addss xmm1, xmm7
movss xmm0, dword [rbx + 0x40]
addss xmm0, xmm6
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm1
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140020820
add rcx, rdx
cmp rdx, rcx
je 0x140020881
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0xffffffff
lea r9, [rsp + 0x50]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.140072500
nop
lea rcx, [rbp + 0x118]
call fcn.14000d460
call fcn.14005daa0
nop
lea rcx, [rbp + 0x1e0]
call fcn.14000d460
cmp byte [0x1401e4765], 0
je 0x140020c53
lea r14, [rbx + 0x48]
cmp qword [rbx + 0x60], 0xf
jbe 0x1400208bb
mov r14, qword [rbx + 0x48]
mov rcx, qword [rbx + 0x58]
cmp rcx, 0xa
jb 0x140020928
lea rsi, [rcx + r14]
lea r8, [rsi - 9]
sub r8, r14
mov edx, 0x70
mov rcx, r14
call sub.VCRUNTIME140.dll_memchr
mov rdi, rax
test rax, rax
je 0x140020928
nop word [rax + rax]
mov r8d, 0xa
lea rdx, str.projectile
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002097e
inc rdi
lea r8, [rsi - 9]
sub r8, rdi
mov edx, 0x70
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rdi, rax
test rax, rax
jne 0x1400208f0
mov rdi, 0xffffffffffffffff
cmp rdi, 0xffffffffffffffff
je 0x140020c53
lea rdx, [rbx + 0x48]
lea rcx, [rbp + 0x1c0]
call fcn.14000be00
nop
lea rsi, [rbp + 0x1c0]
cmp qword [rbp + 0x1d8], 0xf
seta cl
mov rdi, qword [rbp + 0x1c0]
cmova rsi, rdi
lea rdx, [rbp + 0x1c0]
mov r14, qword [rbp + 0x1d0]
test cl, cl
je 0x140020983
add r14, rdi
jmp 0x14002098d
sub rdi, r14
jmp 0x14002092f
add r14, rdx
lea rdi, [rbp + 0x1c0]
cmp rdi, r14
je 0x1400209a9
sub rsi, rdi
movsx ecx, byte [rdi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [rsi + rdi], al
inc rdi
cmp rdi, r14
jne 0x140020995
lea rcx, [0x14014c0b8]
call fcn.140050860
mov r9d, eax
lea rdx, [rbx + 0x38]
movss dword [rsp + 0x30], xmm9
movss dword [rsp + 0x20], xmm8
lea r8, [rbx + 0x40]
mov rcx, r13
call fcn.14006ed30
lea rcx, [0x14014c098]
call fcn.140050860
mov rcx, qword [0x1401e4880]
movss xmm1, dword [rcx + 0x14]
mulss xmm1, xmm10
movss xmm0, dword [rcx + 0x10]
mulss xmm0, xmm10
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x24], xmm1
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea r8, [rbx + 0x40]
lea rdx, [rbp + 0x20]
mov rcx, r13
call fcn.14006ebd0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov r8d, 0x13
lea rdx, str.Montserrat_Semibold
lea rcx, [rsp + 0x60]
call fcn.140002b40
mov r8d, 0xa
lea rdx, [rsp + 0x60]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov rcx, rax
call fcn.14005da00
mov rax, qword [rbp + 0x1d0]
lea rcx, [rax - 0xb]
cmp rax, rcx
jb 0x140020f5b
mov qword [rbp + 0x1d0], rcx
lea rax, [rbp + 0x1c0]
cmp qword [rbp + 0x1d8], 0xf
cmova rax, qword [rbp + 0x1c0]
mov byte [rax + rcx], 0
lea rdx, [rbp + 0x1c0]
cmp qword [rbp + 0x1d8], 0xf
cmova rdx, qword [rbp + 0x1c0]
movss xmm1, dword [rbx + 0x3c]
movss xmm0, dword [rbx + 0x40]
addss xmm0, xmm6
movss dword [rbp + 0x30], xmm0
movss dword [rbp + 0x34], xmm1
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140020ad5
add rcx, rdx
cmp rdx, rcx
je 0x140020b34
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0xffffffff
lea r9, [rbp + 0x30]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.140072500
lea rax, str.:.1f_.
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], 0xa
movss xmm0, dword [rbx + 0x2c]
movss dword [rbp - 8], xmm0
movabs rax, 0x7000000000000000
mov qword [rbp - 0x10], rax
mov qword [rbp + 0x10], 1
lea rax, [rbp - 0x10]
mov qword [rbp + 0x18], rax
movaps xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x138]
call fcn.1400238b0
nop
lea rdx, [rbp + 0x138]
cmp qword [rbp + 0x150], 0xf
cmova rdx, qword [rbp + 0x138]
movss xmm1, dword [rbx + 0x3c]
addss xmm1, xmm7
movss xmm0, dword [rbx + 0x40]
addss xmm0, xmm6
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm1
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140020bd4
add rcx, rdx
cmp rdx, rcx
je 0x140020c35
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0xffffffff
lea r9, [rsp + 0x58]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.140072500
nop
lea rcx, [rbp + 0x138]
call fcn.14000d460
call fcn.14005daa0
nop
lea rcx, [rbp + 0x1c0]
call fcn.14000d460
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140020c7f
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140020c7a
cmp rbx, qword [rax + 0x10]
jne 0x140020c7a
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140020c67
mov rbx, rax
jmp 0x140020c9f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x140020c9f
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x140020c90
cmp byte [rbx + 0x19], 0
je 0x140020472
cmp byte [0x1401e484c], 0
je 0x140020ee7
mov rax, qword [0x1401e4880]
or dword [rax + 0x4a00], 0x10
movaps xmm0, xmmword [0x14013a810]
movups xmmword [rax + 0x4a40], xmm0
mov qword [rax + 0x4a50], r12
mov qword [rax + 0x4a58], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], r12
mov qword [rbp + 0x88], r12
mov r8d, 0x13
lea rdx, str.Montserrat_Semibold
lea rcx, [rbp + 0x70]
call fcn.140002b40
mov r8d, 0xa
lea rdx, [rbp + 0x70]
lea rcx, [0x1401e4a80]
call fcn.14003ed20
mov rcx, rax
call fcn.14005da00
mov rbx, qword [0x1401e4880]
mov dword [rbp - 0x70], r12d
movss xmm0, dword [rbx + 0x38e8]
movss dword [rbp - 0x6c], xmm0
lea rcx, [rbx + 0x4a88]
lea rdx, [rbp - 0x70]
call fcn.140069b80
mov dword [rbx + 0x38e8], 0x3f266666
mov edx, 0xff3f3faf
mov ecx, 0xa
call fcn.140050d70
mov edx, 0xff3f3faf
mov ecx, 0xb
call fcn.140050d70
mov edx, 0xff3f3faf
mov ecx, 0xc
call fcn.140050d70
xor edx, edx
mov r8d, 0x2162
lea rcx, [0x140135198]
call fcn.14005af60
test al, al
je 0x140020e83
cmp qword [r15 + 0x168], 0
jbe 0x140020e7e
mov dword [rsp + 0x50], r12d
lea rdx, [rsp + 0x50]
lea rcx, [r15 + 0x160]
call fcn.14000a830
mov rdi, rax
cmp byte [rax], 0
je 0x140020e6b
mov rcx, qword [0x1401e4880]
mov rbx, qword [rcx + 0x4000]
xor edx, edx
mov rcx, rbx
call fcn.1400543c0
mov esi, eax
add rbx, 0x100
mov ecx, dword [rbx]
mov r8d, dword [rbx + 4]
cmp ecx, r8d
jne 0x140020e28
inc ecx
test r8d, r8d
je 0x140020e14
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x140020e19
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.14006a970
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*4], esi
inc dword [rbx]
mov qword [rsp + 0x58], 0
lea rcx, [rdi + 8]
cmp qword [rcx + 0x18], 0xf
jbe 0x140020e4b
mov rcx, qword [rcx]
lea r9, [rsp + 0x58]
xor edx, edx
call fcn.140088810
mov rax, qword [0x1401e4880]
mov rcx, qword [rax + 0x4000]
dec dword [rcx + 0x100]
inc r12d
movsxd rax, r12d
cmp rax, qword [r15 + 0x168]
jb 0x140020db2
call fcn.14005d340
mov ecx, 3
mov r9, qword [0x1401e4880]
mov eax, dword [r9 + 0x4a78]
cmp eax, ecx
jge 0x140020ea0
mov ecx, eax
test eax, eax
jle 0x140020ed8
cdqe
lea r8, [rax + rax*4]
mov rdx, qword [r9 + 0x4a80]
movsxd rax, dword [rdx + r8*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rdx + r8*4 - 0x10]
movups xmmword [r9 + rax*8 + 0x39cc], xmm0
dec dword [r9 + 0x4a78]
mov eax, dword [r9 + 0x4a78]
dec ecx
test ecx, ecx
jg 0x140020ea0
mov ecx, 1
call fcn.140051040
call fcn.14005daa0
lea rcx, [rbp - 0x70]
call fcn.140001390
mov rcx, qword [rax]
sub rcx, qword [rbp + 0x90]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, dword [0x14013a2b0]
movss dword [0x1401e4848], xmm0
mov rcx, qword [rbp + 0x200]
xor rcx, rsp
call fcn.1400eb600
lea r11, [rsp + 0x360]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14000dda0
nop
call fcn.14000dda0
int3