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

Disassembly:
lea r12, [rsp - 0x50]
cmp r12, qword [r14 + 0x10]
jbe 0x4c9927
push rbp
mov rbp, rsp
sub rsp, 0xc8
movq qword [rsp + 0xc0], xmm15
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xd8], rax
mov byte [rsp + 0x1c], 0
mov word [rsp + 0x3a], 0
movups xmmword [rsp + 0x50], xmm15
test rcx, rcx
jne 0x4c9192
lea rcx, vtable.H1fD_QHL__Ht_eH__0.0
mov qword [rsp + 0xb8], rcx
mov byte [rsp + 0x1d], 0x63
mov dword [rsp + 0x1e], 0x69775c3a
movabs rdx, 0x79735c73776f646e
mov qword [rsp + 0x22], rdx
movabs rdx, 0x6e5c32336d657473
mov qword [rsp + 0x2a], rdx
movabs rdx, 0x6c6c642e6c6c6474
mov qword [rsp + 0x32], rdx
xor eax, eax
lea rbx, [rsp + 0x1d]
mov ecx, 0x1d
call fcn.004678a0
call fcn.004bcda0
lea rdx, [0x004c9960]
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xa0], rax
lea rdx, [rsp + 0x98]
mov qword [rsp + 0xc0], rdx
mov byte [rsp + 0x1c], 1
test rbx, rbx
jne 0x4c9227
mov qword [rsp + 0x60], rax
call fcn.004bc280
jmp 0x4c9276
mov word [rsp + 0x3a], 0
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rcx
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx]
call rax
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
mov rax, qword [rsp + 0xb0]
add rax, 0x30
mov rbx, qword [rsp + 0x48]
dec rbx
test rbx, rbx
jle 0x4c93a6
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rsp + 0x88], xmm0
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rdx]
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov rax, rsi
call rcx
call fcn.004a39e0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xe0]
call fcn.004a39e0
mov rcx, qword [rsp + 0x40]
cmp rcx, rbx
je 0x4c92f8
xor eax, eax
jmp 0x4c9308
mov rbx, rax
mov rax, qword [rsp + 0xa8]
call fcn.004030c0
test al, al
je 0x4c9313
mov eax, 1
jmp 0x4c9380
mov rax, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
nop dword [rax]
call fcn.004a39e0
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rdx]
call rcx
call fcn.004a39e0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xe0]
call fcn.004a39e0
mov rcx, qword [rsp + 0x40]
nop
cmp rcx, rbx
je 0x4c9369
xor eax, eax
jmp 0x4c9380
mov rbx, rax
mov rax, qword [rsp + 0xa8]
call fcn.004030c0
nop dword [rax]
test al, al
je 0x4c9262
mov ecx, dword [rsp + 0x80]
mov rax, qword [rsp + 0x60]
mov rdx, qword [rax + 0xc8]
mov rbx, qword [rax + 0xd0]
xor esi, esi
jmp 0x4c9409
lea rax, [0x004e8200]
call fcn.0040d240
mov qword [rax + 8], 0x12
lea rcx, [0x005035cc]
mov qword [rax], rcx
mov word [rsp + 0x3a], 0
lea rcx, [0x00592420]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rdx]
call rcx
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
inc rsi
cmp rsi, rbx
jge 0x4c942d
mov rdi, qword [rdx + rsi*8]
mov r8d, dword [rdi + 0x1c]
cmp r8, rcx
jae 0x4c9406
mov r9d, dword [rdi + 0x18]
add r9d, r8d
cmp r9, rcx
jbe 0x4c9406
sub ecx, r8d
add ecx, dword [rdi + 0x24]
mov dword [rsp + 0x3c], ecx
call fcn.004bfc00
test rdi, rdi
jne 0x4c954c
mov ebx, dword [rsp + 0x3c]
lea esi, [rbx + 0xa]
cmp rcx, rsi
jb 0x4c98ff
cmp rbx, rsi
ja 0x4c98f6
sub rsi, rbx
mov edi, ebx
sub rbx, rcx
sar rbx, 0x3f
and rbx, rdi
lea rdi, [rax + rbx]
test rsi, rsi
jbe 0x4c98ec
movzx r8d, byte [rax + rbx]
nop dword [rax]
cmp r8b, 0x4c
jne 0x4c9545
cmp rsi, 1
jbe 0x4c98df
movzx r8d, byte [rax + rbx + 1]
nop word [rax + rax]
cmp r8b, 0x8b
jne 0x4c9545
cmp rsi, 2
jbe 0x4c98d2
movzx r8d, byte [rax + rbx + 2]
nop word [rax + rax]
cmp r8b, 0xd1
jne 0x4c9545
cmp rsi, 3
jbe 0x4c98c5
movzx r8d, byte [rax + rbx + 3]
cmp r8b, 0xb8
jne 0x4c9545
nop dword [rax]
cmp rsi, 6
jbe 0x4c98b3
movzx r8d, byte [rax + rbx + 6]
test r8b, r8b
jne 0x4c9545
cmp rsi, 7
jbe 0x4c98a6
movzx r8d, byte [rax + rbx + 7]
test r8b, r8b
jne 0x4c9545
movzx eax, word [rax + rbx + 4]
nop
mov word [rsp + 0x3a], ax
movups xmmword [rsp + 0x50], xmm15
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx]
call rax
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
mov ecx, 1
jmp 0x4c958e
mov word [rsp + 0x3a], 0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rsi
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx]
call rax
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
lea rcx, [r8 + 1]
mov rdi, r9
cmp rcx, 0x1f4
ja 0x4c97c4
mov r8, rcx
shl rcx, 5
movzx r9d, byte [rdi + rcx]
cmp r9b, 0x4c
jne 0x4c9649
cmp rsi, 1
jbe 0x4c9899
lea r9, [rax + rbx]
lea r9, [r9 + 1]
movzx r9d, byte [rcx + r9]
cmp r9b, 0x8b
jne 0x4c9649
cmp rsi, 2
jbe 0x4c988c
lea r9, [rax + rbx]
lea r9, [r9 + 2]
movzx r9d, byte [rcx + r9]
cmp r9b, 0xd1
jne 0x4c9649
cmp rsi, 3
jbe 0x4c987f
lea r9, [rax + rbx]
lea r9, [r9 + 3]
movzx r9d, byte [rcx + r9]
cmp r9b, 0xb8
jne 0x4c9649
cmp rsi, 6
jbe 0x4c9872
lea r9, [rax + rbx]
lea r9, [r9 + 6]
movzx r9d, byte [rcx + r9]
test r9b, r9b
jne 0x4c9649
cmp rsi, 7
jbe 0x4c9865
lea r9, [rax + rbx]
lea r9, [r9 + 7]
movzx r9d, byte [rcx + r9]
nop
test r9b, r9b
je 0x4c9702
mov r9, rdi
sub rdi, rcx
cmp byte [rdi], 0x4c
jne 0x4c9587
nop dword [rax + rax]
cmp rsi, 1
jbe 0x4c9858
lea rdi, [rax + rbx]
lea rdi, [rdi + 1]
sub rdi, rcx
cmp byte [rdi], 0x8b
jne 0x4c9587
nop
cmp rsi, 2
jbe 0x4c984b
lea rdi, [rax + rbx]
lea rdi, [rdi + 2]
sub rdi, rcx
cmp byte [rdi], 0xd1
jne 0x4c9587
nop
cmp rsi, 3
jbe 0x4c983e
lea rdi, [rax + rbx]
lea rdi, [rdi + 3]
sub rdi, rcx
cmp byte [rdi], 0xb8
jne 0x4c9587
nop
cmp rsi, 6
jbe 0x4c9831
lea rdi, [rax + rbx]
lea rdi, [rdi + 6]
sub rdi, rcx
cmp byte [rdi], 0
jne 0x4c9587
nop
cmp rsi, 7
jbe 0x4c9824
lea rdi, [rax + rbx]
lea rdi, [rdi + 7]
sub rdi, rcx
cmp byte [rdi], 0
jne 0x4c9587
nop
jmp 0x4c9761
lea rsi, [rax + rbx]
lea rsi, [rsi + 4]
movzx esi, byte [rcx + rsi]
mov byte [rax + rbx + 4], sil
lea rdi, [rax + rbx]
lea rdi, [rdi + 5]
movzx ecx, byte [rcx + rdi]
mov byte [rax + rbx + 5], cl
sub esi, r8d
shl ecx, 8
or esi, ecx
mov word [rsp + 0x3a], si
movups xmmword [rsp + 0x50], xmm15
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx]
call rax
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
nop
ret
lea rsi, [rax + rbx]
lea rsi, [rsi + 4]
sub rsi, rcx
movzx esi, byte [rsi]
mov byte [rax + rbx + 4], sil
lea rdi, [rax + rbx]
lea rdi, [rdi + 5]
sub rdi, rcx
movzx ecx, byte [rdi]
mov byte [rax + rbx + 5], cl
lea eax, [rsi + r8]
shl ecx, 8
or eax, ecx
mov word [rsp + 0x3a], ax
movups xmmword [rsp + 0x50], xmm15
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx]
call rax
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
lea rax, [0x004e8200]
call fcn.0040d240
mov qword [rax + 8], 0x12
lea rcx, [0x005035cc]
mov qword [rax], rcx
mov word [rsp + 0x3a], 0
lea rcx, [0x00592420]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
mov byte [rsp + 0x1c], 0
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rdx]
call rcx
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
mov eax, 7
mov rcx, rax
call fcn.0046d660
mov eax, 6
mov rcx, rsi
call fcn.0046d660
mov eax, 3
mov rcx, rax
call fcn.0046d660
mov eax, 2
mov rcx, rax
call fcn.0046d660
mov eax, 1
mov rcx, rax
call fcn.0046d660
mov eax, 7
mov rcx, rax
call fcn.0046d660
mov eax, 6
mov rcx, rsi
call fcn.0046d660
mov eax, 3
mov rcx, rax
call fcn.0046d660
mov eax, 2
mov rcx, rax
call fcn.0046d660
mov eax, 1
mov rcx, rax
call fcn.0046d660
mov eax, 7
mov rcx, rax
call fcn.0046d660
mov eax, 6
mov rcx, rsi
nop dword [rax + rax]
call fcn.0046d660
mov eax, 3
mov rcx, rax
call fcn.0046d660
mov eax, 2
mov rcx, rax
call fcn.0046d660
mov eax, 1
mov rcx, rax
call fcn.0046d660
xor eax, eax
mov rcx, rax
call fcn.0046d660
mov eax, ebx
mov ecx, esi
call fcn.0046d720
mov rdx, rcx
mov ecx, esi
call fcn.0046d6e0
nop
call fcn.004338c0
movzx eax, word [rsp + 0x3a]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
add rsp, 0xc8
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0046b380
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.004c9140