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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov ebp, dword [rsp + 0xc0]
xor ebx, ebx
mov r14, r9
mov r13, r8
mov rdi, rcx
mov qword [rsp + 0x48], rbx
mov r12d, ebx
mov dword [rsp + 0x34], ebx
mov r15d, ebx
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x38], ebx
cmp dword [rdx], ebx
jne 0x140037dc0
nop dword [rax]
nop dword [rax + rax]
mov esi, dword [rdi + 0x18]
cmp esi, ebp
mov ecx, dword [rdi + 0x1c]
cmovae esi, ebp
test ecx, ecx
jne 0x140037a07
mov r11, rbx
jmp 0x140037b41
cmp dword [rdi + 0x28], 0
mov r11, qword [rdi + 0x68]
mov r9d, dword [rdi + 0x24]
mov rbp, r11
mov edx, dword [rdi + 0x14]
mov qword [rsp + 0x40], r11
je 0x140037a60
mov dword [rsp + 0x3c], ecx
mov r10d, ecx
test edx, edx
je 0x140037a58
cmp dword [rdi + 0xa4], 0
je 0x140037a58
mov rax, qword [rdi + 0xb0]
cmp qword [rax], 0
je 0x140037a58
cmp ecx, dword [r13 + 8]
jne 0x140037a58
mov r11, qword [r13]
mov qword [rsp + 0x40], r11
mov dword [rsp + 0x38], 1
mov rbp, r11
jmp 0x140037aed
imul r9d, esi
mov r10d, 1
mov dword [rsp + 0x3c], r10d
test edx, edx
je 0x140037ab8
cmp dword [rdi + 0xa4], 0
jne 0x140037ab8
mov rax, qword [rdi + 0xb0]
cmp qword [rax], 0
je 0x140037ab8
mov r8d, ebx
test ecx, ecx
je 0x140037ab1
mov rcx, qword [rdi + 0x70]
mov eax, r8d
add rax, rax
mov edx, r8d
inc r8d
mov rax, qword [r13 + rax*8]
mov qword [rcx + rdx*8], rax
mov ecx, dword [rdi + 0x1c]
cmp r8d, ecx
jb 0x140037a90
mov dword [rsp + 0x38], r10d
jmp 0x140037ae4
mov r8d, ebx
test ecx, ecx
je 0x140037ae4
nop
mov rax, qword [rdi + 0x70]
mov edx, esi
imul edx, dword [rdi + 0x24]
mov ecx, r8d
imul edx, r8d
inc r8d
add rdx, qword [rdi + 0x68]
mov qword [rax + rcx*8], rdx
mov ecx, dword [rdi + 0x1c]
cmp r8d, ecx
jb 0x140037ac0
mov r11, qword [rdi + 0x70]
mov qword [rsp + 0x40], r11
mov rax, qword [rdi + 0xb0]
cmp qword [rax], 0
jne 0x140037b54
test ecx, ecx
je 0x140037bfd
mov r14d, dword [rsp + 0x3c]
mov r15d, r9d
nop word [rax + rax]
mov r8d, esi
mov edx, r14d
mov rcx, rbp
call qword [rdi + 0x38]
add rbp, r15
inc ebx
cmp ebx, dword [rdi + 0x1c]
jb 0x140037b10
mov r14, qword [rsp + 0xb8]
xor ebx, ebx
mov r11, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x30]
mov ebp, dword [rsp + 0xc0]
mov eax, dword [rdi + 0x40]
test eax, eax
jne 0x140037c04
mov rdx, rbx
jmp 0x140037ccf
cmp dword [rsp + 0x38], 0
je 0x140037b80
mov edx, ebx
test ecx, ecx
je 0x140037b3a
mov ecx, edx
mov eax, esi
add rcx, rcx
inc edx
imul eax, dword [r13 + rcx*8 + 8]
imul eax, dword [rdi + 0x20]
add qword [r13 + rcx*8], rax
cmp edx, dword [rdi + 0x1c]
jb 0x140037b61
jmp 0x140037b3a
mov r15d, ebx
test ecx, ecx
je 0x140037b35
mov eax, r9d
lea r12, [rdi + 0xe0]
mov r14d, eax
nop dword [rax]
nop dword [rax + rax]
mov ebx, r15d
mov edx, r10d
add rbx, rbx
mov qword [rsp + 0x28], r12
mov rcx, rbp
mov dword [rsp + 0x20], esi
mov r9d, dword [r13 + rbx*8 + 8]
mov r8, qword [r13 + rbx*8]
call qword [rdi + 0x30]
mov r10d, dword [rsp + 0x3c]
mov eax, esi
imul eax, dword [r13 + rbx*8 + 8]
add rbp, r14
inc r15d
imul eax, dword [rdi + 0x20]
add qword [r13 + rbx*8], rax
cmp r15d, dword [rdi + 0x1c]
jb 0x140037ba0
mov r14, qword [rsp + 0xb8]
xor ebx, ebx
mov r11, qword [rsp + 0x40]
mov r12d, dword [rsp + 0x34]
jmp 0x140037b35
xor ebx, ebx
jmp 0x140037b3a
cmp dword [rdi + 0x4c], 0
mov ecx, dword [rdi + 0x10]
je 0x140037c3f
test ecx, ecx
je 0x140037c33
cmp dword [rdi + 0xc0], 0
je 0x140037c33
cmp eax, dword [r14 + 8]
jne 0x140037c33
mov rdx, qword [r14]
mov r15d, 1
mov dword [rsp + 0x30], r15d
jmp 0x140037ccf
mov rdx, qword [rdi + 0x80]
jmp 0x140037ccf
test ecx, ecx
je 0x140037c8e
cmp dword [rdi + 0xc0], 0
jne 0x140037c8e
mov r8d, ebx
test eax, eax
je 0x140037c81
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rdi + 0x88]
mov eax, r8d
add rax, rax
mov edx, r8d
inc r8d
mov rax, qword [r14 + rax*8]
mov qword [rcx + rdx*8], rax
cmp r8d, dword [rdi + 0x40]
jb 0x140037c60
mov r15d, 1
mov dword [rsp + 0x30], r15d
jmp 0x140037cc8
mov r8d, ebx
test eax, eax
je 0x140037cc8
nop word [rax + rax]
mov rax, qword [rdi + 0x88]
mov edx, esi
imul edx, r8d
mov ecx, r8d
inc r8d
imul edx, dword [rdi + 0x48]
add rdx, qword [rdi + 0x80]
mov qword [rax + rcx*8], rdx
cmp r8d, dword [rdi + 0x40]
jb 0x140037ca0
mov rdx, qword [rdi + 0x88]
mov rax, qword [rdi + 0x100]
mov r8d, esi
mov r9, qword [rdi + 0x98]
mov rcx, r11
mov qword [rsp + 0x28], rax
mov eax, dword [rdi + 0xa0]
mov dword [rsp + 0x20], eax
call qword [rdi + 0xf8]
mov rdx, qword [rsp + 0xa8]
mov dword [rdx], eax
cmp eax, 2
je 0x140037da5
xorps xmm1, xmm1
mov eax, esi
cvtsi2sd xmm1, rax
mov rax, qword [rdi + 0x98]
movaps xmm0, xmm1
mulsd xmm0, qword [rdi + 0xf0]
addsd xmm0, qword [rax]
movsd qword [rax], xmm0
mulsd xmm1, qword [rdi + 0xf0]
mov rax, qword [rdi + 0x98]
addsd xmm1, qword [rax + 0x10]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [rdi + 0x40]
test ecx, ecx
je 0x140037d94
mov rax, qword [rdi + 0xd0]
cmp qword [rax], 0
je 0x140037d94
test r15d, r15d
je 0x140037e1e
mov edx, ebx
test ecx, ecx
je 0x140037d8c
nop dword [rax + rax]
mov ecx, edx
mov eax, esi
add rcx, rcx
inc edx
imul eax, dword [r14 + rcx*8 + 8]
imul eax, dword [rdi + 0x44]
add qword [r14 + rcx*8], rax
cmp edx, dword [rdi + 0x40]
jb 0x140037d70
mov rdx, qword [rsp + 0xa8]
add r12d, esi
sub ebp, esi
mov dword [rsp + 0x34], r12d
mov dword [rsp + 0xc0], ebp
test ebp, ebp
je 0x140037eb6
cmp dword [rdx], 0
mov ebx, 0
mov r15d, dword [rsp + 0x30]
je 0x1400379f0
test ebp, ebp
je 0x140037eb6
mov ecx, dword [rdi + 0x40]
test ecx, ecx
je 0x140037e15
mov rax, qword [rdi + 0xd0]
cmp qword [rax], 0
je 0x140037e15
test ecx, ecx
je 0x140037e15
mov ebx, ebx
mov r8d, ebp
add rbx, rbx
mov edx, dword [r14 + rbx*8 + 8]
mov rcx, qword [r14 + rbx*8]
call qword [rdi + 0x58]
mov eax, ebp
imul eax, dword [rdi + 0x44]
imul eax, dword [r14 + rbx*8 + 8]
add qword [r14 + rbx*8], rax
mov rbx, qword [rsp + 0x48]
inc ebx
mov qword [rsp + 0x48], rbx
cmp ebx, dword [rdi + 0x40]
jb 0x140037de0
lea eax, [r12 + rbp]
jmp 0x140037eb9
cmp dword [rdi + 0x4c], 0
mov r15, qword [rdi + 0x80]
mov eax, dword [rdi + 0x48]
je 0x140037e33
mov r12d, ecx
jmp 0x140037e3c
mov r12d, 1
imul eax, esi
mov ebp, ebx
test ecx, ecx
je 0x140037ea5
lea r13, [rdi + 0xe0]
mov qword [rsp + 0x50], rax
nop
mov ebx, ebp
mov r9d, r12d
add rbx, rbx
mov qword [rsp + 0x28], r13
mov r8, r15
mov dword [rsp + 0x20], esi
mov edx, dword [r14 + rbx*8 + 8]
mov rcx, qword [r14 + rbx*8]
call qword [rdi + 0x50]
add r15, qword [rsp + 0x50]
mov eax, esi
imul eax, dword [rdi + 0x44]
inc ebp
imul eax, dword [r14 + rbx*8 + 8]
add qword [r14 + rbx*8], rax
cmp ebp, dword [rdi + 0x40]
jb 0x140037e50
mov r13, qword [rsp + 0xb0]
mov ebp, dword [rsp + 0xc0]
mov r12d, dword [rsp + 0x34]
jmp 0x140037d8c
mov ebp, dword [rsp + 0xc0]
mov r12d, dword [rsp + 0x34]
jmp 0x140037d94
mov eax, r12d
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret