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

Disassembly:
lea r12, [rsp - 0x120]
cmp r12, qword [r14 + 0x10]
jbe 0x4e9ac6
sub rsp, 0x1a0
mov qword [rsp + 0x198], rbp
lea rbp, [rsp + 0x198]
mov qword [rsp + 0x1a8], rax
lea rax, [0x0050f540]
call fcn.0040d600
mov qword [rsp + 0x130], rax
mov qword [rax], 0
mov rbx, qword [rsp + 0x1a8]
test byte [rbx], al
lea rax, [0x0051a880]
nop dword [rax]
call fcn.0040ab00
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x0051a880]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
lea rax, [0x0051a880]
mov rbx, qword [rsp + 0x1a8]
call fcn.0040ab00
mov rbx, rax
lea rax, [0x0051a880]
call fcn.00483b40
mov rbx, qword [rsp + 0x1a8]
cmp byte [rbx + 0x40], 0
je 0x4e8d0b
mov qword [rsp + 0xd0], rax
lea rcx, [rbx + 0x41]
mov qword [rsp + 0x190], rcx
lea rax, [0x00503100]
mov rbx, rcx
call fcn.0040ab00
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00503100]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
lea rax, [0x00503100]
mov rbx, qword [rsp + 0x190]
call fcn.0040ab00
mov rbx, rax
lea rax, [0x00503100]
call fcn.00483b40
mov rcx, qword [rsp + 0xd0]
add rax, rcx
mov rbx, qword [rsp + 0x1a8]
mov rdx, qword [rbx + 0x88]
mov rsi, qword [rbx + 0x90]
mov rcx, qword [rbx + 0x98]
test rdx, rdx
je 0x4e8d83
mov qword [rsp + 0xa8], rax
mov rax, rdx
mov rbx, rsi
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00500d80]
mov r8, rax
lea rax, [0x00673cc0]
nop
call fcn.00482400
mov rdx, qword [rsp + 0x1a8]
mov rsi, qword [rdx + 0x90]
mov rdi, qword [rsp + 0xa8]
lea rax, [rdi + rsi]
mov rbx, rdx
mov ecx, dword [rbx + 0x3c]
cmp eax, ecx
je 0x4e8ded
mov qword [rsp + 0xc8], rax
sub ecx, eax
mov dword [rsp + 0x4c], ecx
mov ebx, ecx
lea rax, [0x00502340]
call fcn.00448e20
mov ebx, dword [rsp + 0x4c]
mov ecx, ebx
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00500d80]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
mov edx, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0xc8]
lea rax, [rsi + rdx]
mov qword [rsp + 0xa8], rax
lea rax, [0x00502f80]
nop dword [rax]
call fcn.0040d600
mov dword [rax], 0x4550
mov ebx, 4
mov rcx, rbx
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00500d80]
mov r8, rax
lea rax, [0x00673cc0]
nop
call fcn.00482400
mov rbx, qword [rsp + 0x1a8]
lea rcx, [rbx + 0xa0]
mov qword [rsp + 0x188], rcx
lea rax, [0x00516540]
mov rbx, rcx
call fcn.0040ab00
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00516540]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
lea rax, [0x00516540]
mov rbx, qword [rsp + 0x188]
call fcn.0040ab00
mov rbx, rax
lea rax, [0x00516540]
call fcn.00483b40
mov rcx, qword [rsp + 0xa8]
add rcx, rax
mov qword [rsp + 0xd0], rcx
mov rdx, qword [rsp + 0x1a8]
movzx ebx, word [rdx + 0xa0]
mov word [rsp + 0x36], bx
cmp bx, 0x14c
jne 0x4e8f72
mov r8, qword [rdx + 0xc0]
mov rax, qword [rdx + 0xb8]
lea rsi, [0x004fdac0]
cmp rax, rsi
jne 0x4e9ab4
mov qword [rsp + 0x180], r8
lea rax, [0x00673cc0]
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
call fcn.00482400
lea rax, [0x004fdac0]
mov rbx, qword [rsp + 0x180]
call fcn.00483b40
lea rdx, [rax + 4]
mov r9, qword [rsp + 0xd0]
add rdx, r9
mov r9, qword [rsp + 0x180]
mov r10d, dword [r9 + 0x80]
mov r9d, dword [r9 + 0x84]
jmp 0x4e8ffe
cmp bx, 0x8664
jne 0x4e9075
mov r8, qword [rdx + 0xc0]
mov rax, qword [rdx + 0xb8]
lea rsi, [0x004fdb00]
cmp rax, rsi
jne 0x4e9aa5
mov qword [rsp + 0x180], r8
lea rax, [0x00673cc0]
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
call fcn.00482400
lea rax, [0x004fdb00]
mov rbx, qword [rsp + 0x180]
call fcn.00483b40
lea rdx, [rax + 4]
mov r9, qword [rsp + 0xd0]
add rdx, r9
mov r9, qword [rsp + 0x180]
mov r10d, dword [r9 + 0x90]
mov r9d, dword [r9 + 0x94]
mov dword [rsp + 0x3c], r9d
mov dword [rsp + 0x40], r10d
mov qword [rsp + 0xa8], rdx
mov rsi, qword [rsp + 0x1a8]
mov rcx, qword [rsi + 0xd0]
mov qword [rsp + 0x68], rcx
lea rax, [0x00517f60]
mov rbx, rcx
call fcn.00448e20
mov qword [rsp + 0x178], rax
mov rdx, qword [rsp + 0x1a8]
mov rsi, qword [rdx + 0xc8]
mov qword [rsp + 0x170], rsi
mov rdi, qword [rdx + 0xd0]
mov qword [rsp + 0xd0], rdi
mov r8, qword [rsp + 0x68]
mov r9, qword [rsp + 0xa8]
xor ecx, ecx
jmp 0x4e91ac
lea rax, [0x00509fa0]
nop dword [rax]
call fcn.0040d600
mov qword [rax + 8], 0x1a
lea rcx, [0x005268f8]
mov qword [rax], rcx
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x00673d00]
mov rsi, rax
xor eax, eax
mov rbp, qword [rsp + 0x198]
add rsp, 0x1a0
ret
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xc0], r9
lea rdx, [rcx + rcx*4]
mov rsi, qword [rsp + 0x100]
mov qword [rax + rdx*8], rsi
lea rdx, [rax + rdx*8]
lea rdx, [rdx + 8]
movups xmm0, xmmword [rsp + 0x108]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rsp + 0x118]
movups xmmword [rdx + 0x10], xmm0
lea rbx, [rsp + 0x100]
lea rax, [0x00517f60]
call fcn.0040ab00
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00517f60]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
lea rax, [0x00517f60]
lea rbx, [rsp + 0x100]
call fcn.0040ab00
mov rbx, rax
lea rax, [0x00517f60]
call fcn.00483b40
mov rcx, qword [rsp + 0x98]
inc rcx
mov rdx, qword [rsp + 0xc0]
lea r9, [rdx + rax]
mov rdx, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0x178]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x1a8]
mov r10, qword [rsp + 0x170]
mov rax, rsi
mov rdx, r8
mov rsi, r10
mov rdi, qword [rsp + 0xd0]
mov r8, qword [rsp + 0x68]
cmp rcx, rdi
jge 0x4e928e
mov r10, qword [rsi + rcx*8]
movups xmmword [rsp + 0x100], xmm15
movups xmmword [rsp + 0x108], xmm15
movups xmmword [rsp + 0x118], xmm15
mov r11, qword [r10 + 0x10]
mov qword [rsp + 0x100], r11
mov r11d, dword [r10 + 0x18]
mov dword [rsp + 0x108], r11d
mov r11d, dword [r10 + 0x1c]
mov dword [rsp + 0x10c], r11d
mov r11d, dword [r10 + 0x20]
mov dword [rsp + 0x110], r11d
mov r11d, dword [r10 + 0x24]
mov dword [rsp + 0x114], r11d
mov r11d, dword [r10 + 0x28]
mov dword [rsp + 0x118], r11d
mov r11d, dword [r10 + 0x2c]
mov dword [rsp + 0x11c], r11d
movzx r11d, word [r10 + 0x30]
mov word [rsp + 0x120], r11w
movzx r11d, word [r10 + 0x32]
mov word [rsp + 0x122], r11w
mov r10d, dword [r10 + 0x34]
mov dword [rsp + 0x124], r10d
mov r10d, dword [rdx + 0xa8]
nop word [rax + rax]
cmp dword [rsp + 0x10c], r10d
jne 0x4e9280
mov r10d, dword [rsp + 0x114]
mov dword [rdx + 0xa8], r10d
nop dword [rax]
cmp rcx, r8
jb 0x4e90b8
jmp 0x4e9a95
xor ecx, ecx
jmp 0x4e930e
mov qword [rsp + 0x70], r8
mov rax, r9
mov rbx, r8
mov rcx, rdx
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00500d80]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
mov rax, qword [rsp + 0x178]
add rax, 0x28
mov rcx, qword [rsp + 0x90]
inc rcx
mov rdx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0xa8]
lea r9, [rsi + rdx]
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x1a8]
mov rdx, rsi
mov r8, qword [rsp + 0x68]
mov qword [rsp + 0xa8], r9
cmp rcx, r8
jge 0x4e95e8
mov rbx, qword [rax]
mov qword [rsp + 0xd8], rbx
movups xmm0, xmmword [rax + 8]
movups xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmmword [rsp + 0xf0], xmm0
mov rbx, qword [rdx + 0xd0]
mov rsi, qword [rdx + 0xc8]
cmp rcx, rbx
jae 0x4e9a8a
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x178], rax
mov rax, qword [rsi + rcx*8]
mov qword [rsp + 0x140], rax
call fcn.004e8080
nop word [rax + rax]
test rdi, rdi
jne 0x4e95d1
test rax, rax
mov edx, 0
cmovne rdx, rcx
mov r8d, 0
cmovne r8, rbx
mov qword [rsp + 0x70], r8
lea r9, [0x007798c8]
cmovne r9, rax
mov r10, qword [rsp + 0x140]
mov ecx, dword [r10 + 0x24]
test ecx, ecx
je 0x4e9435
mov r11, qword [rsp + 0xa8]
cmp r11, rcx
jae 0x4e943d
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x138], r9
mov ebx, ecx
sub rbx, r11
mov qword [rsp + 0xc8], rbx
lea rax, [0x00502340]
mov rcx, rbx
call fcn.00448e20
mov rbx, rax
mov rcx, qword [rsp + 0xc8]
mov rdi, rcx
mov rax, qword [rsp + 0x130]
call fcn.00470d20
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x138]
mov r10, qword [rsp + 0x140]
mov r11d, dword [rsp + 0x4c]
jmp 0x4e943d
mov r11, qword [rsp + 0xa8]
mov qword [rsp + 0xa8], r11
mov r12, qword [rsp + 0x1a8]
mov r13d, dword [r12 + 0x150]
mov r15d, dword [r10 + 0x24]
nop dword [rax]
cmp r15d, r13d
ja 0x4e9292
mov r10d, dword [r10 + 0x20]
add r10, r15
mov rdi, qword [r12 + 0x160]
sub r10, rdi
mov rbx, qword [r12 + 0x158]
cmp r13, r10
jge 0x4e9292
lea r10, [rdi + r8]
cmp rdx, r10
jae 0x4e94d8
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0x168], rbx
mov rax, r9
mov rbx, r10
mov rcx, rdx
lea rsi, [0x00502340]
call fcn.00448f00
mov rdi, qword [rsp + 0xd0]
mov r8, qword [rsp + 0x70]
mov r10, rbx
mov rdx, rcx
mov r9, rax
mov rbx, qword [rsp + 0x168]
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x168], r9
lea rax, [r9 + r8]
mov rcx, rdi
call fcn.004633a0
mov ecx, dword [rsp + 0xe8]
mov rdx, qword [rsp + 0x70]
cmp edx, ecx
jb 0x4e951e
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x168]
jmp 0x4e95c3
sub ecx, edx
mov dword [rsp + 0x38], ecx
lea rax, [0x00502340]
mov ebx, ecx
call fcn.00448e20
mov rdx, qword [rsp + 0x70]
mov edi, dword [rsp + 0x38]
lea rbx, [rdi + rdx]
mov rcx, qword [rsp + 0xd0]
cmp rcx, rbx
jb 0x4e9556
mov rsi, qword [rsp + 0x168]
jmp 0x4e9586
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x168]
lea rsi, [0x00502340]
call fcn.00448f00
mov rdx, qword [rsp + 0x70]
mov edi, dword [rsp + 0x38]
mov rsi, rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x168], rsi
add rdx, rsi
mov r8, rax
mov rax, rdx
mov rbx, r8
mov ecx, edi
call fcn.004633a0
mov rax, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x168]
mov r8, rdx
mov rdx, rax
mov r9, rcx
jmp 0x4e9292
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rbp, qword [rsp + 0x198]
add rsp, 0x1a0
ret
mov rax, qword [rdx + 0x100]
mov rbx, qword [rdx + 0x108]
mov rcx, qword [rdx + 0x110]
nop dword [rax]
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00500340]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
mov rdx, qword [rsp + 0x1a8]
mov rax, qword [rdx + 0x100]
mov rbx, qword [rdx + 0x108]
mov rcx, qword [rdx + 0x110]
call fcn.0040ada0
mov rbx, rax
lea rax, [0x00500340]
nop dword [rax]
call fcn.00483b40
mov qword [rsp + 0xd0], rax
mov rdx, qword [rsp + 0x1a8]
mov rsi, qword [rdx + 0x118]
mov rbx, qword [rdx + 0x120]
mov rcx, qword [rdx + 0x128]
mov rax, rsi
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x005062a0]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
mov rdx, qword [rsp + 0x1a8]
mov rax, qword [rdx + 0x118]
mov rbx, qword [rdx + 0x120]
mov rcx, qword [rdx + 0x128]
nop dword [rax + rax]
call fcn.0040ada0
mov rbx, rax
lea rax, [0x005062a0]
call fcn.00483b40
mov rdx, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xa8]
add rdx, rsi
add rdx, rax
mov rsi, qword [rsp + 0x1a8]
mov rax, qword [rsi + 0x130]
mov rbx, qword [rsi + 0x138]
mov rcx, qword [rsi + 0x140]
test rax, rax
je 0x4e9731
mov rdi, rbx
jmp 0x4e9738
mov rdi, rbx
xor edx, edx
xor ebx, ebx
mov dword [rsp + 0x44], ebx
mov dword [rsp + 0x48], edx
mov rbx, rdi
call fcn.0040ada0
mov rbx, qword [rsp + 0x130]
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x00500d80]
mov r8, rax
lea rax, [0x00673cc0]
call fcn.00482400
nop
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rdx + 8]
mov rsi, qword [rdx]
mov rdi, qword [rdx + 0x10]
mov rax, qword [rdx + 0x18]
cmp rax, rcx
ja 0x4e9a85
sub rdi, rax
mov qword [rsp + 0x60], rdi
sub rcx, rax
mov qword [rsp + 0x58], rcx
mov rdx, rdi
neg rdi
sar rdi, 0x3f
and rdi, rax
lea r8, [rsi + rdi]
mov qword [rsp + 0x128], r8
mov r9d, dword [rsp + 0x48]
mov r10d, dword [rsp + 0x40]
cmp r9d, r10d
jne 0x4e97e9
mov r10d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x3c]
nop word [rax + rax]
cmp r10d, r11d
je 0x4e9a51
lea rax, [0x0050bfa0]
call fcn.0040d600
mov qword [rsp + 0x150], rax
mov ecx, dword [rsp + 0x48]
mov dword [rax], ecx
mov ecx, dword [rsp + 0x44]
mov dword [rax + 4], ecx
lea rax, [0x0050f540]
call fcn.0040d600
mov qword [rsp + 0x158], rax
mov rbx, rax
lea rcx, [0x006746e8]
lea rdi, [0x007798c8]
lea rsi, [0x004fd900]
mov r8, qword [rsp + 0x150]
lea rax, [0x00673cc0]
call fcn.00482400
movzx ecx, word [rsp + 0x36]
cmp cx, 0x14c
jne 0x4e986a
mov rsi, qword [rsp + 0x1a8]
mov esi, dword [rsi + 0x3c]
add rsi, 0x98
jmp 0x4e987c
mov rdi, qword [rsp + 0x1a8]
mov esi, dword [rdi + 0x3c]
add rsi, 0xa8
mov rdx, qword [rsp + 0x60]
cmp rsi, rdx
ja 0x4e9a7b
mov rdi, qword [rsp + 0x158]
mov rcx, qword [rdi + 8]
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
cmp rax, rcx
ja 0x4e9a76
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x168], r8
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xb0], rax
lea rax, [0x004fd900]
mov rbx, qword [rsp + 0x150]
call fcn.00483b40
mov rcx, qword [rsp + 0xa0]
add rax, rcx
mov rdx, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xb0]
sub rdx, rsi
mov rdi, qword [rsp + 0xb8]
sub rdi, rsi
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rdx, rsi
mov rsi, qword [rsp + 0x168]
add rdx, rsi
mov rsi, qword [rsp + 0x58]
cmp rsi, rax
jb 0x4e9a6e
sub rsi, rax
lea rbx, [rsi + rdi]
mov r9, qword [rsp + 0x60]
mov r10, rax
sub rax, r9
sar rax, 0x3f
and r10, rax
mov r11, qword [rsp + 0x128]
add r10, r11
cmp r8, rbx
jae 0x4e99a0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0x168], r10
mov rax, rdx
mov rcx, r8
mov rdi, rsi
lea rsi, [0x00502340]
call fcn.00448f00
mov rsi, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0x50]
mov r10, qword [rsp + 0x168]
mov rdx, rax
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x168], rdx
lea rax, [rdx + rdi]
mov rcx, rsi
mov rbx, r10
call fcn.004633a0
mov rdx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xd0]
lea rbx, [rdi + rdx]
mov rcx, qword [rsp + 0x60]
cmp rcx, rbx
jb 0x4e99e7
mov rax, qword [rsp + 0x128]
jmp 0x4e9a0b
mov rax, qword [rsp + 0x128]
lea rsi, [0x00502340]
call fcn.00448f00
mov rdx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xd0]
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x148], rax
add rdx, rax
mov rax, rdx
mov rbx, qword [rsp + 0x168]
mov rcx, rdi
call fcn.004633a0
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x148]
mov rax, r8
mov rbx, rcx
mov rcx, rdx
xor edi, edi
xor esi, esi
mov rbp, qword [rsp + 0x198]
add rsp, 0x1a0
ret
mov rcx, rsi
call fcn.00462ac0
call fcn.00462ac0
mov rcx, rsi
nop
call fcn.00462a80
call fcn.00462ac0
mov rax, rcx
mov rcx, rbx
call fcn.00462a00
mov rax, rcx
mov rcx, r8
nop dword [rax + rax]
call fcn.00462a00
mov rbx, rsi
lea rcx, [0x00504fa0]
call fcn.0040a8c0
mov rbx, rsi
lea rcx, [0x00504fa0]
nop
call fcn.0040a8c0
nop
mov qword [rsp + 8], rax
call fcn.004603a0
mov rax, qword [rsp + 8]
jmp fcn.004e8bc0