Function at 0x18008c4a0
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, 0xc0
mov esi, dword [rsp + 0x128]
mov r10, rdx
mov r11d, dword [rsp + 0x128]
mov rbx, rcx
mov r8d, dword [rsp + 0x128]
mov edi, esi
mov ebp, dword [rsp + 0x128]
mov r15d, dword [rsp + 0x128]
mov r14d, dword [rsp + 0x128]
mov r13d, dword [rsp + 0x128]
mov r12d, dword [rsp + 0x128]
imul eax, esi, 0xc3
mov dword [rsp + 0x74], r11d
mov dword [rsp + 0x64], r8d
mov dword [rsp + 0xa8], eax
cmp esi, eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x128]
ja 0x18008c820
mov r9d, dword [rsp + 0x128]
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x70], eax
lea rdx, [0x18008cd80]
cmp edi, 0xfc0
ja 0x18008c765
je 0x18008c706
cmp edi, 0x580
ja 0x18008c6ab
je 0x18008c6a2
mov eax, edi
sub eax, 0x58
je 0x18008c69a
sub eax, 0x65
je 0x18008c689
cmp eax, 0x3f
jne 0x18008c7f6
mov rax, qword [rsp + 0x110]
lea r8, [rsp + 0x80]
xor ecx, ecx
mov qword [rsp + 0xb0], rdx
mov r9, rbx
mov byte [rsp + 0x128], 2
lea rdx, [rsp + 0x88]
cmp word [rax], cx
cmovne rcx, rax
mov rax, qword [rsp + 0x118]
movzx eax, word [rax]
mov word [rsp + 0x80], ax
mov eax, dword [rbx + 0x40]
mov dword [rsp + 0xa0], eax
movzx eax, word [rbx + 0x3c]
mov word [rsp + 0x88], ax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x128]
mov dword [rsp + 0x48], 0x68
mov qword [rsp + 0x40], rcx
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x20], rax
call fcn.18008b2a0
mov r9d, eax
cmp eax, 0xffffd8a8
je 0x18008c80d
test eax, eax
js 0x18008c813
mov r11d, dword [rsp + 0x74]
mov r8d, dword [rsp + 0x64]
mov r10, qword [rsp + 0x108]
jmp 0x18008c7f6
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x98], rax
jmp 0x18008c7f6
mov r13d, dword [rbx]
jmp 0x18008c7f6
mov r12d, dword [rbx + 4]
jmp 0x18008c7f6
cmp edi, 0xaa8
je 0x18008c6e2
cmp edi, 0xbd0
jne 0x18008c7f6
mov rax, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x100]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r10d, dword [rbx + 8]
mov ecx, dword [rbx + 0xc]
mov edx, dword [rbx + 0x10]
mov dword [rsp + 0x68], r10d
mov r10, qword [rsp + 0x108]
mov dword [rsp + 0x6c], ecx
mov dword [rsp + 0x60], edx
jmp 0x18008c7fa
test r10, r10
je 0x18008c74d
mov ecx, dword [rbx + 0x28]
xor edx, edx
mov eax, dword [rbx + 0x24]
div ecx
xor edx, edx
mov r8d, eax
add rax, rax
div rcx
mov ecx, 1
movzx edx, r8w
mov r8d, dword [rsp + 0x64]
cmp rax, 1
cmovb rax, rcx
movzx ecx, word [rsp + 0x78]
imul edx, ecx
add dx, ax
add dx, word [rsp + 0x90]
mov word [r10], dx
movzx eax, word [rsp + 0x78]
mov word [rbx + 0x3c], ax
mov eax, dword [rsp + 0x90]
mov dword [rbx + 0x40], eax
jmp 0x18008c7f6
cmp edi, 0x1e84
ja 0x18008c7c4
je 0x18008c7ba
cmp edi, 0xfd0
je 0x18008c7af
cmp edi, 0x14f8
je 0x18008c799
cmp edi, 0x1a20
jne 0x18008c7f6
mov ebp, dword [rbx + 0x24]
mov r15d, ebp
shr r15d, 0x16
and ebp, 0x3fffff
jmp 0x18008c7f6
mov ecx, dword [rbx + 0x18]
mov r8d, dword [rbx + 0x1c]
mov r14d, dword [rbx + 0x20]
mov dword [rsp + 0x70], ecx
mov dword [rsp + 0x64], r8d
jmp 0x18008c7f6
mov r11d, dword [rbx + 0x14]
mov dword [rsp + 0x74], r11d
jmp 0x18008c7f6
mov dword [rsp + 0x98], r9d
jmp 0x18008c7f6
cmp edi, 0x1f48
je 0x18008c7da
cmp edi, 0x2d48
je 0x18008c6bf
jmp 0x18008c7f6
imul eax, r15d, 0x3d1
add r13d, eax
mov eax, r15d
shl eax, 6
mov ecx, r13d
add r12d, eax
shr ecx, 0x1a
add r12d, ecx
mov edx, dword [rsp + 0x60]
imul eax, esi, 0xf
add edi, eax
cmp edi, dword [rsp + 0xa8]
ja 0x18008c82f
jmp 0x18008c55f
mov r9d, 0xffffd8ee
mov dword [rsp + 0x98], r9d
jmp 0x18008c6bf
mov edx, dword [rsp + 0x128]
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x70], eax
lea r10d, [rsi - 0xd]
lea rcx, [0x180000000]
cmp esi, r10d
jbe 0x18008ca42
mov r9d, dword [rsp + 0x128]
lea r8d, [rsi - 0x4c]
mov edi, dword [rsp + 0x64]
cmp r8d, 0xc
ja case.default.0x18008c86f
mov ecx, dword [rcx + r8*4 + 0x8cc24]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov eax, edi
shr eax, 0x1a
add r14d, eax
jmp 0x18008ca26
and edx, 0x3ffffff
mov dword [rsp + 0x60], edx
jmp 0x18008ca26
mov eax, r11d
and r9d, edx
shr eax, 0x1a
add dword [rsp + 0x70], eax
jmp 0x18008ca26
mov ecx, dword [rsp + 0x68]
mov eax, r12d
shr eax, 0x1a
and r12d, 0x3ffffff
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], ecx
shr eax, 0x1a
add dword [rsp + 0x6c], eax
jmp 0x18008ca26
and r14d, 0x3ffffff
and r9d, r14d
cmp ebp, 0x800000
jb 0x18008ca26
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
xor r9d, r9d
lea r8, [0x1800a3b9b]
mov rcx, rax
lea rdx, str.verify_pch
lea rax, str.vim.dvs.DistributedVirtualPort.State
mov qword [rsp + 0x20], rax
call fcn.1800a0de0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
mov ecx, dword [rsp + 0x64]
mov eax, r14d
and ecx, 0x3ffffff
shr eax, 0x1a
and r9d, ecx
mov dword [rsp + 0x64], ecx
add ebp, eax
mov edi, ecx
jmp 0x18008ca26
mov eax, r13d
and r13d, 0x3ffffff
shr eax, 0x1a
add r12d, eax
mov eax, r12d
shr eax, 0x1a
add dword [rsp + 0x68], eax
jmp 0x18008ca26
and r13d, 0x3ffffff
jmp 0x18008ca26
mov ecx, dword [rsp + 0x6c]
mov eax, edx
and ecx, 0x3ffffff
shr eax, 0x1a
and r9d, ecx
mov dword [rsp + 0x6c], ecx
add r11d, eax
mov dword [rsp + 0x74], r11d
jmp 0x18008ca26
and r11d, 0x3ffffff
mov dword [rsp + 0x74], r11d
and r9d, r11d
jmp 0x18008ca26
mov ecx, dword [rsp + 0x70]
mov eax, ecx
shr eax, 0x1a
and ecx, 0x3ffffff
add edi, eax
mov dword [rsp + 0x70], ecx
mov dword [rsp + 0x64], edi
and r9d, ecx
jmp 0x18008ca26
mov ecx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x6c]
and ecx, 0x3ffffff
shr eax, 0x1a
mov r9d, ecx
add edx, eax
mov dword [rsp + 0x68], ecx
mov dword [rsp + 0x60], edx
jmp 0x18008ca26
xor edx, edx
lea ecx, [r13 + 0x3d1]
shr ecx, 0x1a
add ecx, 0x40
add ecx, r12d
cmp ecx, 0x3ffffff
seta dl
xor eax, eax
cmp r9d, 0x3ffffff
sete al
xor r15d, r15d
and edx, eax
mov eax, ebp
cmp ebp, 0x3fffff
cmove r15d, edx
mov edx, dword [rsp + 0x60]
shr eax, 0x16
or r15d, eax
imul eax, r15d, 0x3d1
add r13d, eax
mov eax, r15d
shl eax, 6
add r12d, eax
lea rcx, [0x180000000]
dec r8d
lea eax, [r8 + 0x4c]
cmp eax, r10d
ja 0x18008c853
mov r8d, dword [rsp + 0x64]
lea edi, [rsi + 0x14a]
cmp esi, edi
jae 0x18008c6bf
cmp esi, 0x160
ja 0x18008cb9a
je 0x18008cb94
lea eax, [rsi - 0x58]
cmp eax, 0xf2
ja case.0x18008ca89.100
movzx eax, byte [rcx + rax + 0x8cc8c]
mov ecx, dword [rcx + rax*4 + 0x8cc58]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov eax, dword [rsp + 0x68]
and r12d, 0x3ffffff
shr eax, 0x1a
add dword [rsp + 0x6c], eax
jmp case.0x18008ca89.100
mov eax, r14d
shr eax, 0x1a
add ebp, eax
and r14d, 0x3ffffff
jmp case.0x18008ca89.100
mov eax, r8d
shr eax, 0x1a
add r14d, eax
and r8d, 0x3ffffff
mov dword [rsp + 0x64], r8d
jmp case.0x18008ca89.100
mov ecx, dword [rsp + 0x70]
and r11d, 0x3ffffff
mov eax, ecx
mov dword [rsp + 0x74], r11d
shr eax, 0x1a
add r8d, eax
and ecx, 0x3ffffff
mov dword [rsp + 0x64], r8d
mov dword [rsp + 0x70], ecx
jmp case.0x18008ca89.100
mov eax, dword [rsp + 0x68]
mov dword [rbx + 8], eax
jmp case.0x18008ca89.100
mov eax, edx
and edx, 0x3ffffff
shr eax, 0x1a
add r11d, eax
mov dword [rsp + 0x60], edx
mov eax, r11d
mov dword [rsp + 0x74], r11d
shr eax, 0x1a
add dword [rsp + 0x70], eax
jmp case.0x18008ca89.100
mov dword [rbx + 4], r12d
jmp case.0x18008ca89.100
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0x18], eax
mov dword [rbx + 0x14], r11d
jmp case.0x18008ca89.100
mov dword [rbx + 0x1c], r8d
jmp case.0x18008ca89.100
mov ecx, dword [rsp + 0x6c]
mov eax, ecx
and dword [rsp + 0x68], 0x3ffffff
shr eax, 0x1a
add edx, eax
and ecx, 0x3ffffff
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x6c], ecx
jmp case.0x18008ca89.100
mov eax, dword [rsp + 0x6c]
mov dword [rbx + 0xc], eax
mov dword [rbx + 0x10], edx
jmp case.0x18008ca89.100
mov eax, ebp
shr eax, 0x16
cmp eax, r15d
jne 0x18008cbea
and ebp, 0x3fffff
mov dword [rbx], r13d
jmp case.0x18008ca89.100
mov dword [rbx + 0x20], r14d
jmp case.0x18008ca89.100
mov eax, esi
sub eax, 0x176
je 0x18008cbbc
cmp eax, 0x16
jne case.0x18008ca89.100
mov rdx, rbx
mov ecx, 0xef
call fcn.18006f9c0
mov r11d, dword [rsp + 0x74]
jmp case.0x18008ca89.100
mov eax, 1
mov dword [rbx + 0x24], ebp
mov dword [rbx + 0x28], eax
mov dword [rbx + 0x2c], eax
add esi, 0x16
cmp esi, edi
jae 0x18008c6bf
mov edx, dword [rsp + 0x60]
lea rcx, [0x180000000]
mov r8d, dword [rsp + 0x64]
jmp 0x18008ca50
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
xor r9d, r9d
lea r8, [0x1800a3b9b]
mov rcx, rax
lea rdx, str.kiiga_lira
lea rax, str.TELEC_HEAP_MEMORY_MAX_KB_PROP_INDEX
mov qword [rsp + 0x20], rax
call fcn.1800a0de0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3