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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x220
mov rax, qword [0x1800bf580]
xor rax, rsp
mov qword [rsp + 0x210], rax
lea ebx, [r8 - 5]
mov qword [rsp + 0xb8], rdx
mov rdi, rdx
mov dword [rsp + 0x44], ebx
mov rdx, qword [rsp + 0x280]
mov eax, r8d
cmp r8d, ebx
mov qword [rsp + 0xa8], rdx
mov ebx, dword [rsp + 0x8c]
mov r10, r9
mov qword [rsp + 0xb0], r9
mov dword [rsp + 0x98], eax
mov qword [rsp + 0xa0], rcx
jbe 0x180089345
mov ebp, dword [rsp + 0x2c]
lea rsi, [0x180000000]
mov r13d, dword [rsp + 0x30]
xor r9d, r9d
mov r12d, dword [rsp + 0x38]
mov r11d, 0x7fff
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x44]
mov dword [rsp + 0x88], ebx
nop dword [rax]
sub eax, 0xf7
je 0x180089345
sub eax, 1
je 0x1800892e3
sub eax, 5
je 0x180089253
sub eax, 4
je 0x180088db6
cmp eax, 1
jne 0x180089320
mov ebx, dword [rsp + 0x60]
lea r9, [rsp + 0x170]
mov r13d, dword [rsp + 0x58]
lea r8, [r10 + 0x50]
mov r15d, dword [rsp + 0x54]
mov edi, 8
mov ebp, dword [rsp + 0x50]
mov r12d, dword [rsp + 0x4c]
mov r14d, dword [rsp + 0x84]
mov qword [rsp + 0x20], rdi
movsx r11d, word [r8 - 0x40]
test r11w, r11w
jne 0x180088b27
cmp word [r8 - 0x30], r11w
jne 0x180088b27
cmp word [r8 - 0x20], r11w
jne 0x180088b27
cmp word [r8 - 0x10], r11w
jne 0x180088b27
cmp word [r8], r11w
jne 0x180088b27
cmp word [r8 + 0x10], r11w
jne 0x180088b27
cmp word [r8 + 0x20], r11w
jne 0x180088b27
movsx eax, word [r8 - 0x50]
shl eax, 2
mov dword [r9 + 0x80], eax
mov dword [r9 + 0x60], eax
mov dword [r9 + 0x40], eax
mov dword [r9 + 0x20], eax
mov dword [r9], eax
mov dword [r9 - 0x20], eax
mov dword [r9 - 0x40], eax
mov dword [r9 - 0x60], eax
jmp 0x180088d73
mov edi, dword [rsp + 0x5c]
xor edx, edx
lea r10d, [rdx + 0x15]
cmp edx, 0x14
ja case.default.0x180088b44
mov ecx, dword [rsi + rdx*4 + 0x89374]
add rcx, rsi
jmp rcx
lea r15d, [r12 + rbp]
mov ebx, r12d
shl r15d, 0xc
sub ebx, ebp
shl ebx, 0xc
lea eax, [r15 + r13]
mov dword [rsp + 0x80], eax
jmp case.default.0x180088b44
imul eax, ebp, 0x1d8f
mov edi, r14d
imul r13d, r12d, 0xc3f
sub edi, eax
add r13d, r14d
jmp case.default.0x180088b44
mov ecx, dword [rsp + 0x7c]
mov eax, dword [rsp + 0x48]
sub eax, ebx
sar eax, 0xa
mov dword [r9 + 0x40], eax
lea eax, [rcx + r15]
sar eax, 0xa
mov dword [r9], eax
mov eax, ecx
sub eax, r15d
sar eax, 0xa
mov dword [r9 + 0x20], eax
jmp case.default.0x180088b44
imul ebx, ebx, 0x20da
imul edi, edi, 0x312a
imul r13d, r13d, 0x1805
jmp case.default.0x180088b44
movsx r15d, word [r8 + 0x20]
movsx ebx, word [r8]
movsx edi, word [r8 - 0x20]
jmp case.default.0x180088b44
lea eax, [rbx + r13]
mov dword [rsp + 0x90], eax
lea r14d, [r15 + r13]
jmp case.default.0x180088b44
imul ebp, ebp, 0xffffe09e
jmp case.default.0x180088b44
add dword [rsp + 0x78], 0x200
add dword [rsp + 0x48], 0x200
jmp case.default.0x180088b44
lea ebp, [rdi + r15]
jmp case.default.0x180088b44
imul ecx, dword [rsp + 0x90], 0xfffff9c3
mov dword [rsp + 0x90], ecx
lea eax, [rcx + r14]
add r13d, eax
lea eax, [r12 + rbp]
add edi, eax
lea eax, [rcx + r12]
add ebx, eax
jmp case.default.0x180088b44
movsx r12d, word [r8 - 0x30]
movsx ebp, word [r8 + 0x10]
lea eax, [r12 + rbp]
imul r14d, eax, 0x8a9
jmp case.default.0x180088b44
mov eax, dword [rsp + 0x90]
lea r12d, [rdi + rbx]
add eax, ebp
imul ecx, eax, 0x12d0
imul r15d, r15d, 0x4c7
mov dword [rsp + 0x8c], ecx
jmp case.default.0x180088b44
imul eax, r14d, 0xe65
mov r14d, dword [rsp + 0x8c]
sub r14d, eax
imul eax, r12d, 0x2901
mov r12d, dword [rsp + 0x8c]
sub r12d, eax
jmp case.default.0x180088b44
movsx r12d, word [r8 - 0x50]
movsx ebp, word [r8 - 0x10]
jmp case.default.0x180088b44
lea eax, [r14 + rbp]
add r15d, eax
add dword [rsp + 0x80], 0x200
jmp case.default.0x180088b44
mov eax, dword [rsp + 0x48]
add eax, ebx
sar eax, 0xa
mov dword [r9 - 0x20], eax
jmp case.default.0x180088b44
mov eax, ebx
sub eax, edi
mov dword [rsp + 0x48], eax
jmp case.default.0x180088b44
mov r13d, r11d
jmp case.default.0x180088b44
mov ecx, r15d
lea eax, [rdi + rbx]
sub ecx, r13d
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x7c], ecx
jmp case.default.0x180088b44
mov ecx, dword [rsp + 0x78]
lea eax, [rcx + rdi]
sar eax, 0xa
mov dword [r9 - 0x40], eax
mov eax, ecx
sub eax, edi
sar eax, 0xa
mov dword [r9 + 0x60], eax
jmp case.default.0x180088b44
mov ecx, dword [rsp + 0x80]
add dword [rsp + 0x7c], 0x200
lea eax, [rcx + r13]
sar eax, 0xa
mov dword [r9 - 0x60], eax
mov eax, ecx
sub eax, r13d
sar eax, 0xa
mov dword [r9 + 0x80], eax
inc edx
sub r10, 1
jne 0x180088b31
mov dword [rsp + 0x5c], edi
mov rdi, qword [rsp + 0x20]
mov dword [rsp + 0x84], r14d
mov dword [rsp + 0x4c], r12d
mov dword [rsp + 0x50], ebp
mov dword [rsp + 0x54], r15d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x60], ebx
add r8, 2
add r9, 4
sub rdi, 1
mov qword [rsp + 0x20], rdi
jne 0x180088ac4
mov ebx, dword [rsp + 0x88]
mov r14d, dword [rsp + 0x40]
mov ebp, dword [rsp + 0x2c]
mov r15d, dword [rsp + 0x3c]
mov r12d, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x30]
mov rdi, qword [rsp + 0xb8]
jmp 0x180089303
mov ebx, dword [rsp + 0x74]
lea rsi, [rsp + 0x118]
mov rcx, rdx
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0xc0], 8
nop word [rax + rax]
mov edi, 0x93
nop word [rax + rax]
cmp edi, 0x155a9
ja 0x180088f4a
je 0x180088f30
cmp edi, 0x982b
ja 0x180088ebd
je 0x180088e9d
cmp edi, 0x93
je 0x180088e72
cmp edi, 0x2679
je 0x180088e5c
cmp edi, 0x4c5f
je 0x180088e4f
cmp edi, 0x7245
jne 0x1800891e4
mov r14d, ebx
lea eax, [r12 + rbp]
sub r14d, r13d
mov dword [rsp + 0x70], eax
shl r14d, 0xc
jmp 0x1800891e4
lea r12d, [rbx + r13]
shl r12d, 0xc
jmp 0x1800891e4
mov r13d, dword [rsi + 8]
imul ebp, ebx, 0xc3f
mov ebx, dword [rsi - 8]
add ebp, dword [rsp + 0x28]
jmp 0x1800891e4
mov r13d, dword [rsi + 0x10]
mov ebx, dword [rsi]
lea eax, [rbx + r13]
imul ecx, eax, 0x8a9
imul eax, r13d, 0x1d8f
mov r15d, ecx
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsp + 0x20]
sub r15d, eax
jmp 0x1800891e4
mov eax, r12d
sub eax, ebp
mov dword [rsp + 0x6c], eax
lea eax, [r15 + r14]
mov dword [rsp + 0x68], eax
mov eax, r14d
sub eax, r15d
mov dword [rsp + 0x64], eax
jmp 0x1800891e4
cmp edi, 0xbe11
je 0x180088f1f
cmp edi, 0xe3f7
je 0x180088f13
cmp edi, 0x109dd
je 0x180088efa
cmp edi, 0x12fc3
jne 0x1800891e4
mov eax, dword [rsp + 0x34]
add eax, r13d
imul eax, eax, 0x12d0
mov dword [rsp + 0x94], eax
jmp 0x1800891e4
lea eax, [r14 + rbp]
mov dword [rsp + 0x34], eax
lea ebx, [r15 + r14]
lea eax, [r12 + rbp]
mov dword [rsp + 0x28], eax
jmp 0x1800891e4
mov ebp, dword [rsi - 4]
lea r13d, [r15 + r12]
jmp 0x1800891e4
mov r12d, dword [rsi + 0x14]
mov r14d, dword [rsi + 0xc]
mov r15d, dword [rsi + 4]
jmp 0x1800891e4
imul r12d, r12d, 0x4c7
imul r14d, r14d, 0x20da
imul r15d, r15d, 0x312a
jmp 0x1800891e4
cmp edi, 0x21327
ja 0x18008901b
je 0x18008900e
cmp edi, 0x17b8f
je 0x180088fe9
cmp edi, 0x1a175
je 0x180088fc2
cmp edi, 0x1c75b
je 0x180088fac
cmp edi, 0x1ed41
jne 0x1800891e4
mov eax, dword [rsp + 0x34]
add dword [rsp + 0x70], 0x1010000
add eax, ebx
add r14d, eax
mov eax, dword [rsp + 0x28]
add eax, r13d
add r12d, eax
add dword [rsp + 0x68], 0x1010000
jmp 0x1800891e4
mov eax, dword [rsp + 0x28]
add eax, dword [rsp + 0x34]
add ebp, eax
lea eax, [rbx + r13]
add r15d, eax
jmp 0x1800891e4
imul eax, ebx, 0x2901
mov ebx, dword [rsp + 0x94]
imul r13d, r13d, 0xffffe09e
sub ebx, eax
imul edx, dword [rsp + 0x34], 0xfffff9c3
mov dword [rsp + 0x34], edx
jmp 0x1800891e4
imul eax, dword [rsp + 0x28], 0xe65
mov ecx, dword [rsp + 0x94]
imul ebp, ebp, 0x1805
sub ecx, eax
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsp + 0x20]
jmp 0x1800891e4
add dword [rsp + 0x64], 0x1010000
jmp 0x1800891e4
cmp edi, 0x2390d
je 0x1800891ad
cmp edi, 0x25ef3
je 0x18008914a
cmp edi, 0x284d9
je 0x1800890e3
cmp edi, 0x2aabf
jne 0x1800891e4
mov eax, dword [rsp + 0x64]
lea rdx, [rsp + 0xc8]
sub eax, r14d
mov r9d, 0xce
sar eax, 0x11
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0xc8], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
lea rdx, [rsp + 0xd0]
mov r9d, 0xce
xor r8d, r8d
mov byte [rcx + 5], al
xor ecx, ecx
mov eax, dword [rsp + 0x6c]
add eax, r12d
sar eax, 0x11
mov dword [rsp + 0xd0], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
lea rdx, [rsp + 0xd8]
mov r9d, 0xce
xor r8d, r8d
mov byte [rcx + 3], al
xor ecx, ecx
mov eax, dword [rsp + 0x6c]
sub eax, r12d
sar eax, 0x11
mov dword [rsp + 0xd8], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
mov byte [rcx + 4], al
jmp 0x1800891e4
mov eax, dword [rsp + 0x68]
lea rdx, [rsp + 0xe0]
sub eax, r15d
mov r9d, 0xce
sar eax, 0x11
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0xe0], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
lea rdx, [rsp + 0xe8]
mov r9d, 0xce
xor r8d, r8d
mov byte [rcx + 6], al
xor ecx, ecx
mov eax, dword [rsp + 0x64]
add eax, r14d
sar eax, 0x11
mov dword [rsp + 0xe8], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
mov byte [rcx + 2], al
jmp 0x1800891e4
mov eax, dword [rsp + 0x70]
lea rdx, [rsp + 0xf0]
sub eax, ebp
mov r9d, 0xce
sar eax, 0x11
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0xf0], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
lea rdx, [rsp + 0xf8]
mov r9d, 0xce
xor r8d, r8d
mov byte [rcx + 7], al
xor ecx, ecx
mov eax, dword [rsp + 0x68]
add eax, r15d
sar eax, 0x11
mov dword [rsp + 0xf8], eax
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
mov byte [rcx + 1], al
jmp 0x1800891e4
mov eax, dword [rsp + 0x70]
lea rdx, [rsp + 0x100]
add dword [rsp + 0x6c], 0x1010000
add eax, ebp
sar eax, 0x11
mov r9d, 0xce
xor r8d, r8d
mov dword [rsp + 0x100], eax
xor ecx, ecx
call fcn.180018ba0
mov rcx, qword [rsp + 0x20]
mov byte [rcx], al
add edi, 0x25e6
cmp edi, 0x2d012
jbe 0x180088df0
mov rax, qword [rsp + 0xa0]
add rsi, 0x20
mov dword [rsp + 0x74], ebx
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x38], r12d
movsxd rax, dword [rax]
add rcx, rax
mov dword [rsp + 0x3c], r15d
sub qword [rsp + 0xc0], 1
mov dword [rsp + 0x2c], ebp
mov dword [rsp + 0x40], r14d
mov qword [rsp + 0x20], rcx
jne 0x180088de0
mov ebx, dword [rsp + 0x88]
lea rsi, [0x180000000]
mov rdi, qword [rsp + 0xb8]
jmp 0x180089303
mov esi, 0xb2
lea rdi, [rdx + 0x120]
mov ebp, 0xffff8001
lea r13d, [rsi + 0x3e]
nop dword [rax + rax]
mov eax, esi
sub eax, 0xb2
je 0x180089297
cmp eax, 2
jne 0x1800892bf
test rdi, rdi
je 0x1800892bf
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r9d, r9d
mov r11d, 0x7fff
jmp 0x1800892bf
mov dword [rdi + 0x22], 0x7fff7fff
mov dword [rdi + 0x1c], 0x80018001
mov qword [rdi + 0x10], 0
mov word [rdi + 0x26], r11w
mov word [rdi + 0x20], bp
mov dword [rdi + 0x18], r9d
mov word [rdi + 0x3c], r13w
inc esi
cmp esi, 0xb4
jb 0x180089270
mov ebp, dword [rsp + 0x2c]
lea rsi, [0x180000000]
mov r13d, dword [rsp + 0x30]
mov rdi, qword [rsp + 0xb8]
jmp 0x180089303
mov ecx, dword [rcx]
lea rax, [0x180110860]
mov r8d, dword [rdi]
add rcx, rax
mov rdx, r10
call sub.VCRUNTIME140.dll_memcpy
mov ebx, dword [rdi]
mov dword [rsp + 0x88], ebx
mov r8d, dword [rsp + 0x44]
mov r10, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x98]
mov r9d, 0
dec eax
mov r11d, 0x7fff
mov dword [rsp + 0x98], eax
cmp eax, r8d
ja 0x180088a60
mov eax, ebx
mov rcx, qword [rsp + 0x210]
xor rcx, rsp
call fcn.1800938b0
mov rbx, qword [rsp + 0x270]
add rsp, 0x220
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret