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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbp
sub rsp, 0xa0
mov r10d, dword [rsp + 0xd0]
mov r8d, r10d
mov qword [rax - 0x10], rbx
or r8d, 1
mov rbx, qword [0x140196030]
test r10b, 7
mov qword [rax - 0x18], rsi
mov qword [rax - 0x20], rdi
cmovne r8d, r10d
mov qword [rax - 0x30], r13
mov esi, r8d
mov qword [rax - 0x38], r14
or esi, 0x20
mov qword [rax - 0x40], r15
test r8d, 0x3f0
movaps xmmword [rax - 0x58], xmm6
mov edi, edx
mov rax, qword [rbx + 0x3ed0]
cmovne esi, r8d
mov qword [rsp + 0x40], rbx
mov byte [rax + 0xb0], 1
mov r13, qword [rbx + 0x3ed0]
mov rbp, qword [rbx + 0x3ed8]
mov qword [rsp + 0x38], r13
bt esi, 0xb
jae 0x14003e9bd
test rbp, rbp
je 0x14003e9bd
cmp qword [rbp + 0x370], r13
jne 0x14003e9bd
mov r14b, 1
mov qword [rbx + 0x3ed8], r13
jmp 0x14003e9c0
xor r14b, r14b
mov byte [rsp + 0x24], 0
call fcn.140012c60
xor r10d, r10d
movzx r15d, al
mov dword [rsp + 0x20], r15d
test al, al
je 0x14003ea0a
cmp byte [rbx + 0x4a5c], r10b
je 0x14003ea0a
cmp dword [rbx + 0x4a7c], edi
jne 0x14003ea0a
test byte [rbx + 0x4a60], 2
jne 0x14003ea0a
xor r15b, r15b
lea rax, [rbx + 0x4a5c]
mov dword [rsp + 0x20], r15d
mov qword [rsp + 0x30], rax
jmp 0x14003ea1b
lea rax, [rbx + 0x4a5c]
mov qword [rsp + 0x30], rax
cmp byte [rax], r10b
je 0x14003ea9a
bt esi, 9
jae 0x14003ea9a
test byte [rbx + 0x4a60], 4
jne 0x14003ea9a
call fcn.140012b60
test al, al
je 0x14003ea9a
mov rax, qword [0x140196030]
mov r15b, 1
mov dword [rsp + 0x20], r15d
mov dword [rax + 0x3f1c], edi
mov byte [rax + 0x3f24], r10b
test edi, edi
je 0x14003ea62
cmp dword [rax + 0x3f20], edi
je 0x14003ea62
mov qword [rax + 0x3f28], r10
movss xmm1, dword [rbx + 0x3f28]
movss xmm2, dword [0x1400d0bec]
movaps xmm0, xmm1
subss xmm0, dword [rbx + 0x18]
comiss xmm2, xmm0
jb 0x14003ea9a
comiss xmm1, xmm2
jb 0x14003ea9a
mov rcx, r13
mov byte [rsp + 0x24], 1
mov dword [rbx + 0x4ad8], edi
call fcn.14001b640
xor r10d, r10d
test r14b, r14b
je 0x14003eaa6
mov qword [rbx + 0x3ed8], rbp
mov qword [rsp + 0x80], r12
mov edx, 0xffffffff
xorps xmm6, xmm6
lea r8d, [rdx + 2]
test r15b, r15b
je 0x14003eae6
bt esi, 0xc
jae 0x14003eae6
mov eax, dword [rbx + 0x3f20]
cmp eax, edi
je 0x14003eae6
test eax, eax
je 0x14003eae6
xor r15b, r15b
mov r14d, edi
bt esi, 0x15
cmovb r14d, r10d
jmp 0x14003ed8f
bt esi, 0x15
mov r14d, edi
cmovb r14d, r10d
test r15b, r15b
je 0x14003ed8f
mov edi, dword [rsp + 0x20]
mov r9d, r10d
mov rax, qword [rsp + 0x30]
mov r11, r10
mov r10d, r8d
mov dword [rsp + 0x28], edx
mov r13d, edx
mov r12d, 0x3768
mov ebx, r14d
nop dword [rax]
mov rbp, rax
movzx r15d, dil
test r10d, esi
je 0x14003ebb6
mov rax, qword [0x140196030]
cmp byte [rax + r11 + 0xe04], 0
je 0x14003eb6e
movss xmm0, dword [r12 + rax]
comiss xmm6, xmm0
ja 0x14003eb6e
ucomiss xmm0, xmm6
jp 0x14003eb6e
jne 0x14003eb6e
lea ecx, [r9 + 0x281]
mov edx, ebx
call fcn.14001e190
test al, al
je 0x14003eb6e
cmp r13d, 0xffffffff
cmove r13d, r9d
mov rax, qword [0x140196030]
cmp byte [rax + r11 + 0x3756], 0
je 0x14003ebb1
lea ecx, [r9 + 0x281]
mov edx, ebx
call fcn.14001e190
test al, al
je 0x14003ebb1
cmp dword [rsp + 0x28], 0xffffffff
mov rax, rbp
mov qword [rsp + 0x30], rax
jne 0x14003ebb6
mov dword [rsp + 0x28], r9d
movzx edi, r15b
mov qword [rsp + 0x30], rax
jmp 0x14003ebb6
mov rax, qword [rsp + 0x30]
inc r9d
rol r10d, 1
inc r11
add r12, 4
cmp r9d, 3
jl 0x14003eb20
mov dword [rsp + 0x20], edi
mov edi, dword [rsp + 0xb8]
mov dword [rsp + 0xd0], ebx
mov rbx, qword [rsp + 0x40]
bt esi, 0x10
jae 0x14003ec11
cmp byte [rbx + 0xe14], 0
jne 0x14003ed62
cmp byte [rbx + 0xe15], 0
jne 0x14003ed62
cmp byte [rbx + 0xe16], 0
jne 0x14003ed62
cmp r13d, 0xffffffff
je 0x14003ecdb
cmp dword [rbx + 0x3f30], edi
je 0x14003ecdb
bt esi, 0x14
jb 0x14003ec44
lea ecx, [r13 + 0x281]
call fcn.14000e6a0
mov dword [rax + 4], edi
mov dword [rax], edi
mov word [rax + 8], 0
mov r14, qword [rsp + 0x38]
test sil, 0x60
je 0x14003ec7e
mov rdx, r14
mov ecx, edi
call fcn.140012920
mov ebp, esi
mov dword [rbx + 0x3f5c], r13d
and ebp, 0x40000
jne 0x14003ec74
mov rdx, r14
mov ecx, edi
call fcn.140020050
mov rcx, r14
call fcn.14001b640
jmp 0x14003ec86
mov ebp, esi
and ebp, 0x40000
test sil, 0x10
jne 0x14003eca0
bt esi, 8
jae 0x14003ece0
movsxd rax, r13d
cmp word [rbx + rax*2 + 0x3742], 2
jne 0x14003ece0
mov byte [rsp + 0x24], 1
bt esi, 0x11
jae 0x14003ecb2
call fcn.140012a70
jmp 0x14003ecbc
mov rdx, r14
mov ecx, edi
call fcn.140012920
test ebp, ebp
jne 0x14003ecca
mov rdx, r14
mov ecx, edi
call fcn.140020050
mov rcx, r14
mov dword [rbx + 0x3f5c], r13d
call fcn.14001b640
jmp 0x14003ece0
mov r14, qword [rsp + 0x38]
test sil, sil
jns 0x14003ed1e
movsxd rax, dword [rsp + 0x28]
cmp eax, 0xffffffff
je 0x14003ed1e
bt esi, 0xa
jae 0x14003ed04
movss xmm0, dword [rbx + rax*4 + 0x377c]
comiss xmm0, dword [rbx + 0x3c]
jae 0x14003ed09
mov byte [rsp + 0x24], 1
bt esi, 0x12
jb 0x14003ed19
mov rdx, r14
mov ecx, edi
call fcn.140020050
call fcn.140012a70
cmp dword [rbx + 0x3f30], edi
jne 0x14003ed62
bt esi, 0xa
jae 0x14003ed62
movsxd rcx, dword [rbx + 0x3f5c]
mov r14d, dword [rsp + 0xd0]
movss xmm0, dword [rbx + rcx*4 + 0x3768]
comiss xmm0, xmm6
jbe 0x14003ed6a
mov r8d, 1
mov edx, r14d
call fcn.14001c4c0
test al, al
je 0x14003ed6a
mov byte [rsp + 0x24], 1
jmp 0x14003ed71
mov r14d, dword [rsp + 0xd0]
cmp byte [rsp + 0x24], 0
je 0x14003ed78
mov byte [rbx + 0x48f2], 1
mov r13, qword [rsp + 0x38]
mov r8d, 1
mov r15d, dword [rsp + 0x20]
xor r10d, r10d
lea edx, [r8 - 2]
cmp dword [rbx + 0x48b8], edi
jne 0x14003edc9
cmp byte [rbx + 0x48f2], 0
jne 0x14003edc9
cmp byte [rbx + 0x48f3], 0
je 0x14003edc9
mov eax, dword [rbx + 0x3f30]
test eax, eax
je 0x14003edbd
cmp eax, edi
je 0x14003edbd
cmp eax, dword [r13 + 0x74]
jne 0x14003edc9
bt esi, 0x13
movzx r15d, r15b
cmovae r15d, r8d
cmp dword [rbx + 0x48c4], edi
jne 0x14003eeae
cmp dword [rbx + 0x48c8], edi
sete cl
je 0x14003ee79
bt esi, 0xa
jae 0x14003ee79
mov rax, qword [0x140196030]
movss xmm3, dword [rbx + 0x40]
movss xmm2, dword [rbx + 0x3c]
movss xmm0, dword [rax + 0x2ee0]
maxss xmm0, dword [rax + 0x3500]
ucomiss xmm0, xmm6
movaps xmm1, xmm0
subss xmm1, dword [rbx + 0x18]
jp 0x14003ee23
jne 0x14003ee23
mov eax, r8d
jmp 0x14003ee74
comiss xmm1, xmm0
jb 0x14003ee2c
xor eax, eax
jmp 0x14003ee74
comiss xmm6, xmm3
jb 0x14003ee4a
comiss xmm2, xmm1
jbe 0x14003ee40
comiss xmm0, xmm2
jb 0x14003ee40
mov eax, r8d
jmp 0x14003ee74
mov qword [rsp + 0x40], r10
mov rax, r10
jmp 0x14003ee74
comiss xmm2, xmm1
jbe 0x14003ee53
mov eax, edx
jmp 0x14003ee5f
subss xmm1, xmm2
divss xmm1, xmm3
cvttss2si eax, xmm1
comiss xmm2, xmm0
ja 0x14003ee70
subss xmm0, xmm2
divss xmm0, xmm3
cvttss2si edx, xmm0
sub edx, eax
mov eax, edx
test eax, eax
setg cl
cmp dword [rbx + 0x48c0], edi
je 0x14003ee85
test cl, cl
je 0x14003eeae
mov rdx, r13
mov ecx, edi
mov r12b, 1
call fcn.140012920
mov dword [rbx + 0x3f58], 5
bt esi, 0x12
jb 0x14003eeb3
mov rdx, r13
mov ecx, edi
call fcn.140020050
jmp 0x14003eeb3
mov r12d, dword [rsp + 0x24]
movaps xmm6, xmmword [rsp + 0x50]
xor bpl, bpl
mov r13, qword [rsp + 0x78]
cmp dword [rbx + 0x3f30], edi
jne 0x14003f002
mov eax, dword [rbx + 0x3f58]
cmp eax, 1
jne 0x14003efe4
cmp byte [rbx + 0x3f3c], bpl
je 0x14003ef15
movss xmm1, dword [rbx + 0xdfc]
movss xmm0, dword [rbx + 0xe00]
mov rax, qword [rsp + 0xb0]
subss xmm1, dword [rax]
subss xmm0, dword [rax + 4]
movss dword [rbx + 0x3f44], xmm1
movss dword [rbx + 0x3f48], xmm0
movsxd r11, dword [rbx + 0x3f5c]
mov rax, qword [0x140196030]
cmp byte [r11 + rax + 0xe04], bpl
je 0x14003ef48
lea ecx, [r11 + 0x281]
mov edx, r14d
call fcn.14001e190
test al, al
je 0x14003ef48
mov bpl, 1
jmp 0x14003efd5
test r15b, r15b
je 0x14003ef53
test sil, 0x20
jne 0x14003ef5c
mov eax, esi
shr eax, 6
test al, 1
je 0x14003efd0
mov rax, qword [rsp + 0x30]
cmp byte [rax], bpl
jne 0x14003efd0
bt esi, 8
jae 0x14003ef87
cmp byte [r11 + rbx + 0x3756], bpl
je 0x14003ef87
cmp word [rbx + r11*2 + 0x374c], 2
jne 0x14003ef87
mov r10b, 1
jmp 0x14003ef8a
xor r10b, r10b
bt esi, 0xa
jae 0x14003efa5
movss xmm0, dword [rbx + r11*4 + 0x377c]
comiss xmm0, dword [rbx + 0x3c]
jb 0x14003efa5
mov r9b, 1
jmp 0x14003efa8
xor r9b, r9b
lea ecx, [r11 + 0x281]
mov edx, r14d
call fcn.14001e190
test r10b, r10b
jne 0x14003efd0
test r9b, r9b
jne 0x14003efd0
test al, al
movzx r12d, r12b
mov eax, 1
cmovne r12d, eax
call fcn.140012a70
bt esi, 0x12
jb 0x14003eff6
mov byte [rbx + 0x48f2], 1
jmp 0x14003eff6
cmp eax, 5
jne 0x14003eff6
cmp dword [rbx + 0x48c4], edi
je 0x14003eff6
call fcn.140012a70
test r12b, r12b
je 0x14003f002
mov byte [rbx + 0x3f3f], 1
mov rax, qword [rsp + 0xc0]
mov r14, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
test rax, rax
je 0x14003f02f
mov byte [rax], r15b
mov rax, qword [rsp + 0xc8]
mov r15, qword [rsp + 0x68]
test rax, rax
je 0x14003f044
mov byte [rax], bpl
movzx eax, r12b
mov r12, qword [rsp + 0x80]
add rsp, 0xa0
pop rbp
ret