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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe0
mov rbp, qword [rcx + 8]
mov r13, rcx
mov rcx, qword [rbp + 0x48]
call fcn.1402971f0
mov edx, 0x300
mov rcx, rax
mov qword [r13 + 0x257b8], rax
call fcn.140293aa0
mov rcx, qword [r13 + 0x257b8]
mov edx, 0xf03
call fcn.140294780
mov rcx, qword [rbp + 0x40]
lea rdi, [r13 + 0x257c0]
call fcn.140293f50
mov rcx, qword [r13 + 0x257b8]
lea rdx, [r13 + 0x3e058]
mov dword [rdx], 0x100
mov qword [rdi], rax
mov qword [r13 + 0x3e060], r13
mov dword [r13 + 0x3e068], 0
call fcn.1402945f0
mov r8, qword [rdi]
mov rdx, qword [r13 + 0x257b8]
lea rcx, [r13 + 0x239c0]
xor r9d, r9d
mov dword [rsp + 0x20], 0x100
call fcn.140199c30
lea rcx, [r13 + 0x239c0]
mov edx, 0xf03
call fcn.140199f10
mov r8, qword [r13 + 0x257b8]
mov dword [rsp + 0x38], 1
mov qword [rsp + 0x30], rdi
lea rcx, [r13 + 0x23c50]
mov r9d, 0x100
mov rdx, rbp
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0x100
call fcn.14019a710
lea rcx, [r13 + 0x23c50]
mov edx, 0xf03
call fcn.14019a9e0
mov eax, dword [r13 + 0x22f44]
xor r14d, r14d
add eax, eax
test eax, eax
jle 0x1401a9e41
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0xb0], xmm8
movsd xmm8, qword [0x140339420]
lea rbx, [r13 + 0x2adf0]
movaps xmmword [rsp + 0xa0], xmm9
movaps xmmword [rsp + 0x90], xmm10
movss xmm10, dword [0x140339450]
movsd xmm9, qword [0x140339268]
nop dword [rax]
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
mov qword [rbx - 0xb0], rax
cmp dword [r13 + 0x30], 0
jne 0x1401a9dac
mov rcx, qword [r13 + 0x257b8]
call fcn.1402971f0
mov edx, 0x200
mov rcx, rax
mov qword [rbx - 0xa8], rax
call fcn.140293aa0
mov rcx, qword [rbx - 0xa8]
mov edx, 0xf02
call fcn.140294780
mov rcx, qword [rbx - 0xa8]
movsxd rax, r14d
imul rax, rax, 0x908
lea rdx, [rax + r13 + 0x2ade8]
mov dword [rbx - 8], 0x200
mov qword [rbx], r13
mov dword [rbx + 8], r14d
call fcn.1402945f0
mov r11, qword [rbx - 0x8d0]
xor r12d, r12d
lea rsi, [rbx - 0x98]
movss xmm6, dword [r11 + 0x38]
movss xmm7, dword [r11 + 0x3c]
mov dword [rbx - 0xa0], 0xc
nop
movd xmm1, dword [rbx - 0xa0]
movapd xmm0, xmm8
cvtdq2pd xmm1, xmm1
divsd xmm0, xmm1
call sub.MSVCR90.dll_sin
mov rcx, qword [rbx - 0xa8]
unpcklps xmm6, xmm6
movaps xmm2, xmm10
cvtps2pd xmm1, xmm6
mulsd xmm0, xmm9
mulsd xmm0, xmm1
movaps xmm1, xmm7
cvtsd2ss xmm3, xmm0
call fcn.14029c480
mov edx, 0x200
mov rcx, rax
mov qword [rsi], rax
call fcn.140293aa0
mov rcx, qword [rsi]
mov edx, 0xf02
call fcn.140294780
mov rdx, qword [rbx - 0xb0]
mov rcx, qword [rsi]
call fcn.140294c80
inc r12d
add rsi, 8
cmp r12d, dword [rbx - 0xa0]
jl 0x1401a9d30
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
movsxd rcx, eax
imul rcx, rcx, 0x348
mov eax, dword [rcx + r13 + 0x22f48]
test eax, eax
je 0x1401a9dcf
cmp eax, 3
jne 0x1401a9deb
cmp dword [rcx + r13 + 0x22f4c], 0
je 0x1401a9deb
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.1402942e0
mov qword [rbx - 0x18], rax
jmp 0x1401a9dfa
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.140294280
mov qword [rbx - 0x18], rax
mov eax, dword [r13 + 0x22f44]
inc r14d
add rbx, 0x908
add eax, eax
cmp r14d, eax
jl 0x1401a9c90
movaps xmm10, xmmword [rsp + 0x90]
movaps xmm9, xmmword [rsp + 0xa0]
movaps xmm8, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm6, xmmword [rsp + 0xd0]
xor r15d, r15d
cmp dword [r13 + 0x22f44], r15d
jle 0x1401aa1ad
lea r14, [r13 + 0x231e4]
lea r12, [r13 + 0x26528]
nop
mov ecx, dword [r14 - 0x29c]
test ecx, ecx
je 0x1401aa0d0
sub ecx, 1
je 0x1401a9fa7
cmp ecx, 1
jne 0x1401aa18f
mov rbx, r12
lea esi, [rcx + 1]
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [rbx + 4]
movss xmm3, dword [rbx]
movss xmm2, dword [rbx - 4]
mov qword [rbx + 0x28], rax
movss xmm1, dword [rbx - 8]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [rbx + 0x28]
lea rdx, [rsp + 0x40]
call fcn.140292d20
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [rbx + 0x14]
movss xmm3, dword [rbx + 0x10]
movss xmm2, dword [rbx + 0xc]
mov qword [rbx + 0x30], rax
movss xmm1, dword [rbx + 8]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [rbx + 0x30]
lea rdx, [rsp + 0x40]
call fcn.140292d20
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [rbx + 0x24]
movss xmm3, dword [rbx + 0x20]
movss xmm2, dword [rbx + 0x1c]
mov qword [rbx + 0x38], rax
movss xmm1, dword [rbx + 0x18]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [rbx + 0x38]
lea rdx, [rsp + 0x40]
call fcn.140292d20
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.140294280
xor edx, edx
mov qword [rbx + 0x60], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294270
xor edx, edx
mov qword [rbx + 0x68], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294270
xor edx, edx
mov qword [rbx + 0x70], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294290
xor edx, edx
mov qword [rbx + 0x78], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294300
add rbx, 0x590
sub rsi, 1
mov qword [rbx - 0x510], rax
jne 0x1401a9e87
jmp 0x1401aa18f
mov rbx, r12
mov esi, 2
nop
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [rbx + 4]
movss xmm3, dword [rbx]
movss xmm2, dword [rbx - 4]
mov qword [rbx + 0x28], rax
movss xmm1, dword [rbx - 8]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [rbx + 0x28]
lea rdx, [rsp + 0x40]
call fcn.140292d20
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [rbx + 0x14]
movss xmm3, dword [rbx + 0x10]
movss xmm2, dword [rbx + 0xc]
mov qword [rbx + 0x30], rax
movss xmm1, dword [rbx + 8]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [rbx + 0x30]
lea rdx, [rsp + 0x40]
call fcn.140292d20
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [rbx + 0x24]
movss xmm3, dword [rbx + 0x20]
movss xmm2, dword [rbx + 0x1c]
mov qword [rbx + 0x38], rax
movss xmm1, dword [rbx + 0x18]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [rbx + 0x38]
lea rdx, [rsp + 0x40]
call fcn.140292d20
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.140294280
xor edx, edx
mov qword [rbx + 0x60], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294270
xor edx, edx
mov qword [rbx + 0x68], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294280
xor edx, edx
mov qword [rbx + 0x70], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294270
xor edx, edx
mov qword [rbx + 0x78], rax
mov rcx, qword [rbp + 0x40]
call fcn.140294300
add rbx, 0x590
sub rsi, 1
mov qword [rbx - 0x510], rax
jne 0x1401a9fb0
jmp 0x1401aa18f
mov rcx, qword [rbp + 0x40]
call fcn.140293f50
lea rcx, [rsp + 0x40]
movss xmm0, dword [r12 + 0xd64]
movss xmm3, dword [r12 + 0xd60]
movss xmm2, dword [r12 + 0xd5c]
mov qword [r12 + 0xd68], rax
movss xmm1, dword [r12 + 0xd58]
movss dword [rsp + 0x20], xmm0
call fcn.140296350
mov rcx, qword [r12 + 0xd68]
lea rdx, [rsp + 0x40]
call fcn.140292d20
xor esi, esi
cmp dword [r14], esi
jle 0x1401aa160
lea rbx, [r12 + 0xa58]
nop word [rax + rax]
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.140294300
inc esi
add rbx, 0x90
mov qword [rbx - 0x90], rax
cmp esi, dword [r14]
jl 0x1401aa140
lea rbx, [r12 + 0x88]
mov esi, 2
nop dword [rax]
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.140294300
add rbx, 0x590
sub rsi, 1
mov qword [rbx - 0x590], rax
jne 0x1401aa170
inc r15d
add r14, 0x348
add r12, 0x1928
cmp r15d, dword [r13 + 0x22f44]
jl 0x1401a9e60
cmp dword [r13 + 0x22f44], 0
mov dword [rsp + 0x110], 0
jle 0x1401aa41d
lea rsi, [r13 + 0x27290]
lea r15, [r13 + 0x2add8]
lea r12, [r13 + 0x231e4]
nop dword [rax + rax]
mov ecx, dword [r12 - 0x29c]
test ecx, ecx
je 0x1401aa35d
sub ecx, 1
je 0x1401aa2cd
sub ecx, 1
je 0x1401aa234
cmp ecx, 1
jne 0x1401aa3eb
mov rbx, r15
lea ebp, [rcx + 1]
nop dword [rax]
mov r8, qword [rbx - 0x98]
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.140293820
add rbx, 0x908
sub rbp, 1
jne 0x1401aa210
jmp 0x1401aa3eb
mov rbp, r15
lea rbx, [rsi - 0xd38]
mov r14d, 2
nop word [rax + rax]
mov r8, qword [rbx]
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x30]
call fcn.140293820
mov r8, qword [rbx - 8]
mov rdx, qword [rbx]
mov rcx, qword [rbx + 0x38]
call fcn.140293820
mov r8, qword [rbx + 8]
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x40]
call fcn.140293820
mov r8, qword [rbx - 8]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx + 0x48]
call fcn.140293820
mov r8, qword [rbx - 8]
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x50]
call fcn.140293820
mov r8, qword [rbp - 0x98]
mov rdx, qword [rbx - 8]
mov rcx, qword [rbp]
call fcn.140293820
add rbp, 0x908
add rbx, 0x590
sub r14, 1
jne 0x1401aa250
jmp 0x1401aa3eb
mov rbp, r15
lea rbx, [rsi - 0xd38]
mov r14d, 2
nop dword [rax]
mov r8, qword [rbx]
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x30]
call fcn.140293820
mov r8, qword [rbx - 8]
mov rdx, qword [rbx]
mov rcx, qword [rbx + 0x38]
call fcn.140293820
mov r8, qword [rbx + 8]
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x40]
call fcn.140293820
mov r8, qword [rbx - 8]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx + 0x48]
call fcn.140293820
mov r8, qword [rbx - 8]
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x50]
call fcn.140293820
mov r8, qword [rbp - 0x98]
mov rdx, qword [rbx - 8]
mov rcx, qword [rbp]
call fcn.140293820
add rbp, 0x908
add rbx, 0x590
sub r14, 1
jne 0x1401aa2e0
jmp 0x1401aa3eb
xor ebp, ebp
cmp dword [r12], ebp
jle 0x1401aa38d
lea rbx, [rsi - 0x310]
nop dword [rax]
mov r8, qword [rsi]
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.140293820
inc ebp
add rbx, 0x90
cmp ebp, dword [r12]
jl 0x1401aa370
mov rbx, r15
mov ebp, 2
nop word [rax + rax]
mov r8, qword [rbx - 0x98]
mov rdx, qword [rsi]
mov rcx, qword [rbx]
call fcn.140293820
add rbx, 0x908
sub rbp, 1
jne 0x1401aa3a0
lea rbx, [rsi - 0xce0]
mov ebp, 2
nop dword [rax + rax]
mov r8, qword [rsi]
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.140293820
add rbx, 0x590
sub rbp, 1
jne 0x1401aa3d0
mov eax, dword [rsp + 0x110]
add r12, 0x348
add r15, 0x1210
inc eax
add rsi, 0x1928
cmp eax, dword [r13 + 0x22f44]
mov dword [rsp + 0x110], eax
jl 0x1401aa1e0
lea r11, [rsp + 0xe0]
xor eax, eax
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret