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

Disassembly:
sub rsp, 0x80
mov qword [rsp + 0x78], rbp
lea rbp, [rsp + 0x78]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
mov rdx, rax
or rax, rcx
mov rbx, qword [rsp + 0x98]
or rax, rbx
test rax, 7
jne 0x40fbb4
cmp byte [0x00500d34], 0
je 0x40fba0
nop
nop
nop
movabs rax, 0x800000000000
add rax, rcx
mov rsi, rax
shr rax, 0x16
shr rsi, 0x2a
cmp rsi, 0x40
jb 0x40fb4a
xor edi, edi
test rdi, rdi
je 0x40fa50
cmp byte [rdi + 0x63], 1
jne 0x40fa43
nop
cmp qword [rdi + 0x18], rcx
ja 0x40fa43
cmp qword [rdi + 0x78], rcx
jbe 0x40fa43
mov rdi, qword gs:[0x28]
mov rdi, qword [rdi]
mov rdi, qword [rdi + 0x30]
mov r8, qword [rdi + 0xa0]
test byte [r8], al
test byte [rdi], al
nop
nop
nop
nop
nop
cmp rsi, 0x40
jae 0x40fbad
lea rdi, [0x004ea610]
mov rsi, qword [rdi + rsi*8]
test byte [rsi], al
mov rdi, rax
and rax, 0xfffff
mov rax, qword [rsi + rax*8]
test rax, rax
je 0x40fa33
mov rsi, rcx
shr rcx, 5
and rcx, 0x1ffff
add rcx, rax
mov r9, rsi
shr rsi, 3
and rsi, 3
add rax, 0x1ffff
mov qword [rsp + 0x70], r8
test rdx, rdx
jne 0x40f91d
xor edx, edx
jmp 0x40f814
add rdx, 8
cmp rdx, rbx
jae 0x40f910
mov qword [rsp + 0x48], rdx
nop
nop
movzx r10d, byte [rcx]
bt r10d, esi
jae 0x40f863
lea r10, [rdx + r9]
mov r11, qword [r8 + 0x1320]
nop
mov r10, qword [r10]
mov qword [r11], r10
mov qword [r11 + 8], 0
mov r10, qword [r8 + 0x1320]
add r10, 0x10
mov qword [r8 + 0x1320], r10
cmp qword [r8 + 0x1328], r10
je 0x40f8c1
nop
cmp esi, 3
jae 0x40f86d
inc esi
jmp 0x40f810
cmp rcx, rax
je 0x40f87a
nop
inc rcx
xor esi, esi
jmp 0x40f810
mov qword [rsp], rcx
mov dword [rsp + 8], esi
mov dword [rsp + 0xc], edi
mov qword [rsp + 0x10], rax
call fcn.0040f4e0
mov rax, qword [rsp + 0x28]
mov edi, dword [rsp + 0x24]
mov esi, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x98]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x88]
jmp 0x40f810
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x3c], edi
mov dword [rsp + 0x34], esi
mov qword [rsp + 0x60], rcx
xorps xmm0, xmm0
movups xmmword [rsp], xmm0
call fcn.00423d10
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x98]
mov esi, dword [rsp + 0x34]
mov edi, dword [rsp + 0x3c]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x88]
jmp 0x40f863
mov rbp, qword [rsp + 0x78]
add rsp, 0x80
ret
xor r10d, r10d
jmp 0x40f926
add r10, 8
cmp r10, rbx
jae 0x40f910
mov qword [rsp + 0x40], r10
nop
nop
movzx r11d, byte [rcx]
bt r11d, esi
jae 0x40f976
lea r11, [r10 + r9]
lea r12, [r10 + rdx]
mov r13, qword [r8 + 0x1320]
nop
mov r11, qword [r11]
mov r12, qword [r12]
mov qword [r13], r11
mov qword [r13 + 8], r12
mov r11, qword [r8 + 0x1320]
add r11, 0x10
mov qword [r8 + 0x1320], r11
cmp qword [r8 + 0x1328], r11
je 0x40f9dc
nop
cmp esi, 3
jae 0x40f980
inc esi
jmp 0x40f922
cmp rcx, rax
je 0x40f98d
nop
inc rcx
xor esi, esi
jmp 0x40f922
mov qword [rsp], rcx
mov dword [rsp + 8], esi
mov dword [rsp + 0xc], edi
mov qword [rsp + 0x10], rax
call fcn.0040f4e0
mov rcx, qword [rsp + 0x18]
mov rax, qword [rsp + 0x28]
mov edi, dword [rsp + 0x24]
mov esi, dword [rsp + 0x20]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x88]
mov r10, qword [rsp + 0x40]
jmp 0x40f922
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x30], esi
xorps xmm0, xmm0
movups xmmword [rsp], xmm0
call fcn.00423d10
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
mov esi, dword [rsp + 0x30]
mov edi, dword [rsp + 0x38]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x88]
mov r10, qword [rsp + 0x40]
jmp 0x40f976
mov r9, rcx
xor eax, eax
xor edi, edi
xor esi, esi
xor ecx, ecx
jmp 0x40f7fe
mov rbp, qword [rsp + 0x78]
add rsp, 0x80
ret
nop
mov rax, qword [0x004e6f68]
test rax, rax
je 0x40fb41
mov rsi, qword [rax + 8]
mov rax, qword [rax]
xor edi, edi
jmp 0x40fa6f
inc rdi
cmp rdi, rsi
jge 0x40fac1
mov r8, qword [rax + rdi*8]
mov r9, qword [r8 + 0x80]
cmp r9, rcx
ja 0x40fa6c
cmp qword [r8 + 0x88], rcx
jbe 0x40fa6c
mov rax, qword [r8 + 0x198]
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rbx
sub rcx, r9
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rax
call fcn.0040fde0
mov rbp, qword [rsp + 0x78]
add rsp, 0x80
ret
nop
mov rax, qword [0x004e6f68]
test rax, rax
je 0x40fb3b
mov rsi, qword [rax + 8]
mov rax, qword [rax]
xor edi, edi
jmp 0x40fadc
inc rdi
cmp rdi, rsi
jge 0x40fb2e
mov r8, qword [rax + rdi*8]
mov r9, qword [r8 + 0x90]
cmp r9, rcx
ja 0x40fad9
cmp qword [r8 + 0x98], rcx
jbe 0x40fad9
mov rax, qword [r8 + 0x1a8]
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rbx
sub rcx, r9
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rax
call fcn.0040fde0
mov rbp, qword [rsp + 0x78]
add rsp, 0x80
ret
mov rbp, qword [rsp + 0x78]
add rsp, 0x80
ret
xor esi, esi
xor eax, eax
jmp 0x40fad5
xor esi, esi
xor eax, eax
jmp 0x40fa68
lea rdi, [0x004ea610]
mov rdi, qword [rdi + rsi*8]
nop
test rdi, rdi
je 0x40fb99
mov r8, rax
and rax, 0xfffff
mov rax, qword [rdi + rax*8]
nop
test rax, rax
je 0x40fb8f
mov r9, rcx
shr rcx, 0xd
and rcx, 0x1ff
mov rdi, qword [rax + rcx*8 + 0x20000]
mov rax, r8
mov rcx, r9
jmp 0x40f762
mov rax, r8
xor edi, edi
jmp 0x40f762
xor edi, edi
jmp 0x40f762
mov rbp, qword [rsp + 0x78]
add rsp, 0x80
ret
call fcn.004273f0
ud2
lea rax, [0x0048a2fd]
mov qword [rsp], rax
mov qword [rsp + 8], 0x28
call fcn.00428a40
ud2