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

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x58
movzx eax, byte [rdx + 1]
mov rbx, rcx
mov rcx, qword [rcx + 0x80]
mov r9d, eax
mov dword [rsp + 0xa0], eax
xor edi, edi
mov r15, rdx
mov ebp, 4
mov rax, qword [rcx + 0x20]
lea rsi, [rax + r9*8]
mov rax, qword [rbx + 0xa0]
lea r12, [rax + r9*4]
test r8d, r8d
je 0x14003696e
cmp qword [rbx + 0xba8], rdx
jne 0x14003694d
movzx ecx, word [r12]
cmp cx, word [rbx + 0xbb0]
jne 0x14003694d
movzx r13d, byte [rbx + 0xbb8]
mov edx, 0x2900
movzx r14d, word [rbx + 0xbb4]
movzx eax, r13w
or ax, dx
mov word [rbx + 0xb8], cx
mov word [rbx + 0xbc], ax
mov rcx, rbx
movzx eax, word [rbx + 0xbb6]
mov word [rbx + 0xba], ax
call fcn.14004e53c
mov dword [r12], eax
mov dword [r12 + 0xc], eax
jmp 0x140036a8c
xor r9d, r9d
lea r8, [rsp + 0x30]
mov rcx, rbx
call fcn.140036d74
movzx r13d, byte [rsp + 0x40]
movzx r14d, word [rsp + 0x3c]
jmp 0x140036a8c
mov rdx, rsi
call fcn.1400138a8
mov eax, dword [r12]
and eax, 0x1f000000
cmp eax, 0x13000000
je 0x14003698e
mov r13d, 0xe
jmp 0x14003699c
mov rdx, rsi
mov rcx, rbx
call fcn.140050190
mov r13d, eax
mov r15d, dword [rsp + 0xa0]
mov r14d, edi
mov rdi, r12
mov ecx, dword [rdi]
test ecx, ecx
jne 0x1400369be
lea edx, [r14 + r15]
mov rcx, rbx
call fcn.140038fd4
mov ecx, dword [rdi]
mov eax, ecx
and eax, 0x1f000000
cmp eax, 0x4000000
jne 0x1400369ec
movzx eax, word [rdi]
mov rcx, rbx
mov word [rbx + 0xb8], ax
mov dword [rbx + 0xba], 0x5e8e0000
call fcn.14004e53c
mov ecx, eax
mov dword [rdi], eax
cmp r13d, 0x13
jne 0x140036a0e
shr ecx, 0x18
and ecx, 0x1f
sub ecx, 0xf
cmp ecx, ebp
jbe 0x140036a3a
movzx eax, word [rdi]
mov dword [rbx + 0xba], 0x5b93326e
jmp 0x140036a29
and ecx, 0x1f000000
cmp ecx, 0xe000000
je 0x140036a3a
movzx eax, word [rdi]
mov dword [rbx + 0xba], 0x5b0e01d3
mov rcx, rbx
mov word [rbx + 0xb8], ax
call fcn.14004e53c
mov dword [rdi], eax
inc r14d
add rdi, rbp
cmp r14d, 2
jbe 0x1400369aa
mov eax, dword [r12]
mov edx, r13d
mov r14d, dword [r12 + 4]
mov rcx, rbx
mov dword [r12 + 0xc], eax
mov r9d, r14d
mov r8d, dword [rsi + 0x14]
mov eax, dword [r12 + 8]
not r8d
shr r8d, 0x1f
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], eax
call fcn.140036bac
mov r15, qword [rsp + 0xa8]
xor edi, edi
movsd xmm2, qword [rsi + 8]
movsd xmm1, qword [rsi]
movsd xmm0, qword [rsi + 0x10]
cmp dword [rsp + 0xb0], edi
je 0x140036aa7
addsd xmm1, xmm0
cmp dword [rsi + 0x14], edi
jl 0x140036ad2
comisd xmm2, xmm1
jb 0x140036acb
addsd xmm0, xmm0
mov esi, 0x280
addsd xmm0, xmm1
comisd xmm0, xmm2
setbe dil
inc edi
jmp 0x140036af6
mov esi, 0x380
jmp 0x140036af6
comisd xmm1, xmm2
jb 0x140036af1
addsd xmm0, xmm0
mov esi, 0x180
addsd xmm0, xmm1
comisd xmm2, xmm0
setbe dil
inc edi
jmp 0x140036af6
mov esi, 0x80
mov eax, dword [rsp + 0xa0]
lea ebp, [rax + 4]
test edi, edi
jne 0x140036b0f
mov dword [rbx + 0xac], ebp
lea eax, [rdi + 4]
jmp 0x140036b22
mov dword [rbx + 0xac], eax
movzx eax, word [r15 + 2]
lea rax, [rax*4 - 0x1fffc]
add rax, r15
mov rcx, rbx
mov qword [rbx + 0x88], rax
call fcn.140031438
movzx eax, word [r12]
or si, r13w
mov rcx, rbx
mov word [rbx + 0xb8], ax
mov word [rbx + 0xbc], si
mov word [rbx + 0xba], r14w
call fcn.14004e53c
test edi, edi
jne 0x140036b7b
mov eax, dword [rsp + 0xa0]
mov dword [rbx + 0xac], eax
movzx eax, word [r15 + 2]
lea rax, [rax*4 - 0x1fffc]
jmp 0x140036b86
mov dword [rbx + 0xac], ebp
mov eax, 4
lea rcx, [r15 + rax]
mov eax, edi
mov qword [rbx + 0x88], rcx
mov byte [rbx + 0xb5], 1
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret