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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r10d, dword [rsp + 0xa0]
mov esi, edx
mov rbx, qword [0x1800aa9c8]
mov r9d, r10d
or r9d, 1
movaps xmmword [rsp + 0x30], xmm6
test r10b, 7
mov rax, qword [rbx + 0x3ed0]
cmovne r9d, r10d
mov r14d, r9d
or r14d, 0x20
test r9d, 0x3f0
mov byte [rax + 0xb8], 1
mov r15, qword [rbx + 0x3ed0]
cmovne r14d, r9d
mov rbp, qword [rbx + 0x3ed8]
mov qword [rsp + 0x20], r15
bt r14d, 0xb
jae 0x18004f89c
test rbp, rbp
je 0x18004f89c
cmp qword [rbp + 0x378], r15
jne 0x18004f89c
mov dil, 1
mov qword [rbx + 0x3ed8], r15
jmp 0x18004f89f
xor dil, dil
xor r13b, r13b
call fcn.1800269b0
xor r12d, r12d
mov dword [rsp + 0xa0], eax
test al, al
je 0x18004f8dd
cmp byte [rbx + 0x4a54], r12b
je 0x18004fa56
cmp dword [rbx + 0x4a74], esi
jne 0x18004f8ea
test byte [rbx + 0x4a58], 2
jne 0x18004f8ea
mov byte [rsp + 0xa0], r12b
jmp 0x18004f8ea
cmp byte [rbx + 0x4a54], r12b
je 0x18004fa56
bt r14d, 9
jae 0x18004fa56
test byte [rbx + 0x4a58], 4
jne 0x18004fa56
mov r9, qword [0x1800aa9c8]
mov r8, qword [r9 + 0x3ed0]
cmp byte [r9 + 0x48ef], r12b
je 0x18004f951
cmp byte [r9 + 0x48ee], r12b
jne 0x18004f951
test byte [r9 + 0x4770], 4
jne 0x18004fa5d
mov eax, dword [r9 + 0x48b8]
cmp eax, dword [r9 + 0x476c]
jne 0x18004fa5d
test eax, eax
jne 0x18004f9f8
jmp 0x18004fa5d
mov eax, dword [r9 + 0x4774]
test al, 1
je 0x18004fa5d
cmp qword [r9 + 0x3ed8], r8
je 0x18004f971
test al, al
jns 0x18004fa5d
mov rcx, qword [r9 + 0x48b0]
test rcx, rcx
je 0x18004f9d8
mov rcx, qword [rcx + 0x378]
test rcx, rcx
je 0x18004f9d8
cmp byte [rcx + 0xb7], r12b
je 0x18004f9d8
mov rax, qword [r8 + 0x378]
cmp rcx, rax
je 0x18004f9d8
mov edx, dword [rcx + 0x14]
bt edx, 0x1b
jb 0x18004f9ad
bt edx, 0x1a
jae 0x18004f9d8
cmp qword [rax + 0x378], rcx
je 0x18004f9d8
cmp rax, rcx
je 0x18004f9d8
mov rax, qword [rax + 0x370]
test rax, rax
jne 0x18004f9b6
test dword [r9 + 0x4770], 0x100
je 0x18004fa5d
test byte [r9 + 0x4770], 4
jne 0x18004fa5d
mov eax, dword [r8 + 0x7c]
cmp dword [r9 + 0x476c], eax
jne 0x18004f9f8
cmp byte [r8 + 0xb8], r12b
jne 0x18004fa5d
mov dword [r9 + 0x3f1c], esi
mov dl, 1
mov dword [rsp + 0xa0], edx
mov byte [r9 + 0x3f24], r12b
test esi, esi
je 0x18004fa23
cmp dword [r9 + 0x3f20], esi
je 0x18004fa23
mov qword [r9 + 0x3f28], r12
movss xmm1, dword [rbx + 0x3f28]
movss xmm2, dword [0x18009b870]
movaps xmm0, xmm1
subss xmm0, dword [rbx + 0x18]
comiss xmm2, xmm0
jb 0x18004fa64
comiss xmm1, xmm2
jb 0x18004fa64
mov rcx, r15
mov dword [rbx + 0x4ad0], esi
mov r13b, 1
call fcn.18002ec60
mov r9, qword [0x1800aa9c8]
mov edx, dword [rsp + 0xa0]
test dil, dil
je 0x18004fa70
mov qword [rbx + 0x3ed8], rbp
mov r10d, 1
xorps xmm6, xmm6
test dl, dl
je 0x18004faac
bt r14d, 0xc
jae 0x18004faac
mov eax, dword [rbx + 0x3f20]
cmp eax, esi
je 0x18004faac
test eax, eax
je 0x18004faac
xor dl, dl
mov r15d, esi
bt r14d, 0x15
mov dword [rsp + 0xa0], edx
cmovb r15d, r12d
jmp 0x18004fdb8
bt r14d, 0x15
mov r15d, esi
cmovb r15d, r12d
test dl, dl
je 0x18004fdb8
mov edi, 0xffffffff
mov ebp, edi
test r10b, r14b
je 0x18004fb19
cmp byte [r9 + 0xe10], r12b
je 0x18004fafd
movss xmm0, dword [r9 + 0x3778]
comiss xmm6, xmm0
ja 0x18004fafd
ucomiss xmm0, xmm6
jp 0x18004fafd
jne 0x18004fafd
mov edx, r15d
mov ecx, 0x281
call fcn.1800317b0
test al, al
cmovne edi, r12d
cmp byte [r9 + 0x3766], r12b
je 0x18004fb19
mov edx, r15d
mov ecx, 0x281
call fcn.1800317b0
test al, al
cmovne ebp, r12d
test r14b, 2
je 0x18004fb76
cmp byte [r9 + 0xe11], r12b
je 0x18004fb55
movss xmm0, dword [r9 + 0x377c]
comiss xmm6, xmm0
ja 0x18004fb55
ucomiss xmm0, xmm6
jp 0x18004fb55
jne 0x18004fb55
mov edx, r15d
mov ecx, 0x282
call fcn.1800317b0
test al, al
je 0x18004fb55
cmp edi, 0xffffffff
cmove edi, r10d
cmp byte [r9 + 0x3767], r12b
je 0x18004fb76
mov edx, r15d
mov ecx, 0x282
call fcn.1800317b0
test al, al
je 0x18004fb76
cmp ebp, 0xffffffff
cmove ebp, r10d
test r14b, 4
je 0x18004fbd9
mov r10d, 2
cmp byte [r9 + 0xe12], r12b
je 0x18004fbb8
movss xmm0, dword [r9 + 0x3780]
comiss xmm6, xmm0
ja 0x18004fbb8
ucomiss xmm0, xmm6
jp 0x18004fbb8
jne 0x18004fbb8
mov edx, r15d
mov ecx, 0x283
call fcn.1800317b0
test al, al
je 0x18004fbb8
cmp edi, 0xffffffff
cmove edi, r10d
cmp byte [r9 + 0x3768], r12b
je 0x18004fbd9
mov edx, r15d
mov ecx, 0x283
call fcn.1800317b0
test al, al
je 0x18004fbd9
cmp ebp, 0xffffffff
cmove ebp, r10d
bt r14d, 0x10
jae 0x18004fc07
cmp byte [rbx + 0xe24], r12b
jne 0x18004fd9f
cmp byte [rbx + 0xe25], r12b
jne 0x18004fd9f
cmp byte [rbx + 0xe26], r12b
jne 0x18004fd9f
cmp edi, 0xffffffff
je 0x18004fcde
cmp dword [rbx + 0x3f30], esi
je 0x18004fcde
bt r14d, 0x14
jb 0x18004fc3b
lea edx, [rdi + 0x281]
mov rcx, r9
call fcn.180021b20
mov dword [rax + 4], esi
mov dword [rax], esi
mov word [rax + 8], r12w
test r14b, 0x60
je 0x18004fc77
mov rdx, qword [rsp + 0x20]
mov ecx, esi
call fcn.180026750
mov dword [rbx + 0x3f5c], edi
bt r14d, 0x12
jb 0x18004fc66
mov rdx, qword [rsp + 0x20]
mov ecx, esi
call fcn.180033aa0
mov rcx, qword [rsp + 0x20]
call fcn.18002ec60
mov r9, qword [0x1800aa9c8]
test r14b, 0x10
jne 0x18004fc92
bt r14d, 8
jae 0x18004fcde
movsxd rax, edi
cmp word [rbx + rax*2 + 0x3752], 2
jne 0x18004fcde
mov r13b, 1
bt r14d, 0x11
jae 0x18004fca3
call fcn.1800268b0
jmp 0x18004fcaf
mov rdx, qword [rsp + 0x20]
mov ecx, esi
call fcn.180026750
bt r14d, 0x12
jb 0x18004fcc2
mov rdx, qword [rsp + 0x20]
mov ecx, esi
call fcn.180033aa0
mov dword [rbx + 0x3f5c], edi
mov rdi, qword [rsp + 0x20]
mov rcx, rdi
call fcn.18002ec60
mov r9, qword [0x1800aa9c8]
jmp 0x18004fce3
mov rdi, qword [rsp + 0x20]
test r14b, r14b
jns 0x18004fd26
cmp ebp, 0xffffffff
je 0x18004fd26
bt r14d, 0xa
jae 0x18004fd06
movsxd rax, ebp
movss xmm0, dword [rbx + rax*4 + 0x378c]
comiss xmm0, dword [rbx + 0x3c]
jae 0x18004fd09
mov r13b, 1
bt r14d, 0x12
jb 0x18004fd1a
mov rdx, rdi
mov ecx, esi
call fcn.180033aa0
call fcn.1800268b0
mov r9, qword [0x1800aa9c8]
cmp dword [rbx + 0x3f30], esi
jne 0x18004fd9f
bt r14d, 0xa
jae 0x18004fd9f
movsxd rdx, dword [rbx + 0x3f5c]
movss xmm0, dword [rbx + rdx*4 + 0x3778]
comiss xmm0, xmm6
jbe 0x18004fd9f
cmp byte [rdx + r9 + 0xe10], r12b
je 0x18004fd9f
movss xmm1, dword [r9 + rdx*4 + 0x3778]
comiss xmm6, xmm1
ja 0x18004fd9f
ucomiss xmm1, xmm6
jp 0x18004fd6e
je 0x18004fe8d
movss xmm2, dword [r9 + 0x3c]
comiss xmm1, xmm2
jbe 0x18004fd9f
movss xmm3, dword [r9 + 0x40]
movaps xmm0, xmm1
subss xmm0, dword [r9 + 0x18]
comiss xmm0, xmm1
jae 0x18004fd9f
comiss xmm6, xmm3
jb 0x18004fe5f
comiss xmm2, xmm0
ja 0x18004fe8d
test r13b, r13b
je 0x18004fdab
mov byte [rbx + 0x48ee], 1
mov edx, dword [rsp + 0xa0]
mov r10d, 1
cmp dword [rbx + 0x48b8], esi
jne 0x18004fdfd
cmp byte [rbx + 0x48ee], r12b
jne 0x18004fdfd
cmp byte [rbx + 0x48ef], r12b
je 0x18004fdfd
mov eax, dword [rbx + 0x3f30]
test eax, eax
je 0x18004fdea
cmp eax, esi
je 0x18004fdea
mov rcx, qword [rsp + 0x20]
cmp eax, dword [rcx + 0x7c]
jne 0x18004fdfd
bt r14d, 0x13
movzx edx, dl
cmovae edx, r10d
mov dword [rsp + 0xa0], edx
cmp dword [rbx + 0x48c4], esi
jne 0x18004ff41
cmp dword [rbx + 0x48c8], esi
sete cl
je 0x18004feff
bt r14d, 0xa
jae 0x18004feff
movss xmm0, dword [r9 + 0x2ef0]
maxss xmm0, dword [r9 + 0x2f00]
movss xmm3, dword [rbx + 0x40]
movss xmm2, dword [rbx + 0x3c]
maxss xmm0, dword [r9 + 0x3510]
ucomiss xmm0, xmm6
movaps xmm1, xmm0
subss xmm1, dword [rbx + 0x18]
jp 0x18004feab
jne 0x18004feab
mov r12d, r10d
jmp 0x18004fef9
comiss xmm2, xmm0
jbe 0x18004fe6b
mov ecx, 0xffffffff
jmp 0x18004fe77
subss xmm0, xmm2
divss xmm0, xmm3
cvttss2si ecx, xmm0
subss xmm1, xmm2
divss xmm1, xmm3
cvttss2si eax, xmm1
sub eax, ecx
test eax, eax
jle 0x18004fd9f
lea ecx, [rdx + 0x281]
mov edx, r15d
call fcn.1800317b0
test al, al
je 0x18004fd9f
mov r13b, 1
jmp 0x18004fda4
comiss xmm1, xmm0
jae 0x18004fef9
comiss xmm6, xmm3
jb 0x18004fec4
comiss xmm2, xmm1
jbe 0x18004fef9
comiss xmm0, xmm2
jb 0x18004fef9
mov r12d, r10d
jmp 0x18004fef9
comiss xmm2, xmm1
jbe 0x18004fed0
mov eax, 0xffffffff
jmp 0x18004fedc
subss xmm1, xmm2
divss xmm1, xmm3
cvttss2si eax, xmm1
comiss xmm2, xmm0
jbe 0x18004fee9
mov r12d, 0xffffffff
jmp 0x18004fef6
subss xmm0, xmm2
divss xmm0, xmm3
cvttss2si r12d, xmm0
sub r12d, eax
test r12d, r12d
setg cl
cmp dword [rbx + 0x48c0], esi
je 0x18004ff0b
test cl, cl
je 0x18004ff41
mov rdi, qword [rsp + 0x20]
mov ecx, esi
mov rdx, rdi
mov r13b, 1
call fcn.180026750
mov eax, dword [rbx + 0x48e4]
mov dword [rbx + 0x3f58], eax
bt r14d, 0x12
jb 0x18004ff3a
mov rdx, rdi
mov ecx, esi
call fcn.180033aa0
mov r9, qword [0x1800aa9c8]
xor dil, dil
cmp dword [rbx + 0x3f30], esi
jne 0x1800500ad
mov eax, dword [rbx + 0x3f58]
cmp eax, 1
jne 0x180050083
cmp byte [rbx + 0x3f3c], dil
je 0x18004ff99
movss xmm1, dword [rbx + 0xe08]
movss xmm0, dword [rbx + 0xe0c]
mov rax, qword [rsp + 0x80]
subss xmm1, dword [rax]
subss xmm0, dword [rax + 4]
movss dword [rbx + 0x3f44], xmm1
movss dword [rbx + 0x3f48], xmm0
movsxd r10, dword [rbx + 0x3f5c]
cmp r10d, 0xffffffff
jne 0x18004ffb7
call fcn.1800268b0
mov esi, dword [rsp + 0xa0]
jmp 0x180050073
cmp byte [r10 + r9 + 0xe10], dil
je 0x18004ffe3
lea ecx, [r10 + 0x281]
mov edx, r15d
call fcn.1800317b0
test al, al
je 0x18004ffe3
mov esi, dword [rsp + 0xa0]
mov dil, 1
jmp 0x180050073
mov esi, dword [rsp + 0xa0]
test sil, sil
je 0x18004fff5
test r14b, 0x20
jne 0x18004ffff
mov eax, r14d
shr eax, 6
test al, 1
je 0x18005006e
cmp byte [rbx + 0x4a54], dil
jne 0x18005006e
bt r14d, 8
jae 0x180050029
cmp byte [r10 + rbx + 0x3766], dil
je 0x180050029
cmp word [rbx + r10*2 + 0x375c], 2
jne 0x180050029
mov cl, 1
jmp 0x18005002b
xor cl, cl
bt r14d, 0xa
jae 0x180050046
movss xmm0, dword [rbx + r10*4 + 0x378c]
comiss xmm0, dword [rbx + 0x3c]
jb 0x180050046
mov al, 1
jmp 0x180050048
xor al, al
test cl, cl
jne 0x18005006e
test al, al
jne 0x18005006e
lea ecx, [r10 + 0x281]
mov edx, r15d
call fcn.1800317b0
test al, al
movzx r13d, r13b
mov eax, 1
cmovne r13d, eax
call fcn.1800268b0
bt r14d, 0x12
jb 0x18005009f
mov byte [rbx + 0x48ee], 1
jmp 0x18005009f
add eax, 0xfffffffe
cmp eax, 1
ja 0x180050098
cmp dword [rbx + 0x48c4], esi
je 0x180050098
call fcn.1800268b0
mov esi, dword [rsp + 0xa0]
test r13b, r13b
je 0x1800500b4
mov byte [rbx + 0x3f3f], 1
jmp 0x1800500b4
mov esi, dword [rsp + 0xa0]
mov rax, qword [rsp + 0x90]
test rax, rax
je 0x1800500c4
mov byte [rax], sil
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x1800500d4
mov byte [rax], dil
mov rbx, qword [rsp + 0x88]
movzx eax, r13b
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret