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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbx
push rsi
sub rsp, 0xb8
mov esi, edx
mov rdx, rcx
imul ebx, esi, 0x3cd
mov dword [rsp + 0x30], ebx
cmp esi, ebx
ja 0x180027e50
mov rbx, qword [rsp + 0x68]
mov qword [rax - 0x18], rbp
mov ebp, dword [rsp + 0x3c]
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r12
mov r12, qword [rsp + 0x68]
mov qword [rax - 0x30], r13
mov r13, qword [rsp + 0x68]
mov qword [rax - 0x38], r14
mov r14d, dword [rsp + 0xd8]
mov qword [rax - 0x40], r15
mov r15d, dword [rsp + 0xd8]
imul eax, esi, 0x8b
mov dword [rsp + 0x38], eax
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x30]
nop
cmp esi, 0x6388
ja 0x180027f76
je 0x180027ef7
mov eax, esi
sub eax, 0xb6
je 0x180027ed8
sub eax, 0x11
je 0x180027e5a
cmp eax, 0x17
jne 0x180027dfb
mov rcx, qword [0x1800bd680]
call fcn.18007b4a0
cmp eax, 0xffffffff
je 0x180027def
nop
mov rdx, qword [0x1800bd650]
mov ecx, eax
call fcn.180078050
mov rcx, qword [0x1800bd680]
call fcn.18007b4a0
cmp eax, 0xffffffff
jne 0x180027dd0
mov r9, qword [rsp + 0xe8]
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x30]
mov r8, qword [rsp + 0xe0]
add esi, ecx
mov rdx, qword [rsp + 0xd0]
mov dword [rsp + 0xd8], esi
cmp esi, eax
jbe 0x180027d90
mov r15, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov r13, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
pop rsi
pop rbx
ret
mov eax, dword [r9 + 0x1c]
lea rdx, [rsp + 0x68]
mov rdi, qword [rsp + 0xf0]
mov r9d, 0x105
shl eax, 3
mov dword [rsp + 0x74], eax
mov dword [rsp + 0x48], eax
mov rcx, qword [rdi]
mov eax, dword [rcx + 0x30]
mov dword [rsp + 0x40], eax
mov eax, dword [rcx + 0x174]
lea rcx, [rsp + 0x40]
add eax, 2
mov dword [rsp + 0xd8], eax
mov rax, qword [r8]
lea r8, [rsp + 0x48]
sub rax, 8
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
call fcn.180037860
mov rax, qword [rdi]
mov ecx, 0x80
sub ecx, dword [rax + 0x140]
shl ecx, 9
mov dword [rsp + 0x50], ecx
jmp 0x180027def
mov r8, qword [rsp + 0xf0]
mov rcx, qword [r8]
mov eax, dword [rcx + 0x34]
mov edx, dword [rcx + 0x30]
mov dword [rcx + 0x30], eax
mov rax, qword [r8]
mov dword [rax + 0x34], edx
jmp 0x180027df7
mov rdi, qword [rsp + 0xf0]
xor edx, edx
mov rax, qword [rdi]
cmp dword [rax + 0x4c], edx
jle 0x180027dfb
mov ebp, dword [rsp + 0x70]
mov ecx, 0x5e
mov eax, ecx
sub eax, 0x5e
je 0x180027f44
sub eax, 1
je 0x180027f3a
cmp eax, 1
jne 0x180027f58
mov r8, qword [rsp + 0x78]
mov eax, dword [r8 + 0xc]
mov dword [r8 + 8], eax
mov dword [r8 + 0xc], ebp
jmp 0x180027f58
mov rax, qword [rsp + 0x78]
mov ebp, dword [rax + 8]
jmp 0x180027f58
mov rax, qword [rdi]
lea r8, [rdx + rdx*2]
shl r8, 5
add r8, qword [rax + 0x58]
mov qword [rsp + 0x78], r8
inc ecx
cmp ecx, 0x61
jb 0x180027f16
mov rax, qword [rdi]
inc edx
mov dword [rsp + 0x70], ebp
cmp edx, dword [rax + 0x4c]
jl 0x180027f11
mov ebp, dword [rsp + 0x3c]
jmp 0x180027df7
cmp esi, 0x6cd4
je 0x18002824c
cmp esi, 0xc65a
je 0x1800281d1
cmp esi, 0xd8e1
jne 0x180027dff
xor esi, esi
xor edi, edi
mov dword [rsp + 0x48], esi
cmp dword [r9 + 0xc], esi
jle 0x180028269
nop dword [rax]
mov esi, dword [rsp + 0x74]
xor r10d, r10d
mov dword [rsp + 0x40], r10d
lea r11d, [r10 + 8]
cmp r10d, 7
ja case.default.0x180027fdc
lea r9, [0x180000000]
mov ecx, dword [r9 + r10*4 + 0x28278]
add rcx, r9
jmp rcx
mov rax, qword [r8]
mov r12, qword [rax + rdi*8 + 8]
jmp case.default.0x180027fdc
lea r9d, [rsi - 2]
mov dword [rsp + 0x3c], r9d
test r9d, r9d
je 0x1800280c0
mov r10d, dword [rsp + 0x58]
mov r9d, dword [rsp + 0x50]
mov edx, 0x125
nop dword [rax]
mov eax, edx
sub eax, 0x122
je 0x18002808f
sub eax, 1
je 0x180028088
sub eax, 1
je 0x18002803a
cmp eax, 1
jne 0x180028092
movsx eax, byte [rbx]
inc r13
inc rbx
mov dword [rsp + 0x34], eax
inc r12
jmp 0x180028092
movsx eax, byte [r13]
movsx r15d, byte [rbx]
mov ecx, dword [rsp + 0x54]
add r15d, eax
sub ecx, dword [rsp + 0x34]
movsx eax, byte [r12]
add r15d, eax
mov eax, r9d
imul eax, dword [rsp + 0x34]
add ecx, r15d
add ecx, r14d
imul ecx, r10d
add ecx, eax
mov dword [rsp + 0x34], ecx
lea eax, [rcx + 0x8000]
mov rcx, qword [rsp + 0x60]
sar eax, 0x10
mov byte [rcx], al
inc rcx
mov qword [rsp + 0x60], rcx
jmp 0x180028092
mov dword [rsp + 0x54], r14d
jmp 0x180028092
mov r14d, r15d
dec edx
cmp edx, 0x121
ja 0x180028010
add dword [rsp + 0x3c], 0xffffffff
jne 0x180028002
mov r10d, dword [rsp + 0x40]
mov r8, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xd0]
movsx eax, byte [rbx]
lea ebp, [r14 + r14]
mov ecx, dword [rsp + 0x50]
sub ebp, eax
add ebp, dword [rsp + 0x54]
imul ecx, eax
mov eax, ebp
imul eax, dword [rsp + 0x58]
add ecx, eax
jmp 0x18002818c
mov rax, qword [rdx]
mov rax, qword [rax + rdi*8]
mov qword [rsp + 0x60], rax
mov rax, qword [r8]
mov rbx, qword [rax + rdi*8]
mov r13, qword [rax + rdi*8 - 8]
jmp case.default.0x180027fdc
lea ebp, [r14 + r14]
sub ebp, dword [rsp + 0x34]
add ebp, r15d
jmp case.default.0x180027fdc
mov ecx, dword [rsp + 0x50]
mov eax, ebp
imul ecx, dword [rsp + 0x34]
imul eax, dword [rsp + 0x58]
add ecx, eax
jmp 0x18002818c
mov rcx, qword [rsp + 0x60]
mov eax, dword [rsp + 0x34]
add eax, 0x8000
mov dword [rsp + 0x54], r14d
sar eax, 0x10
mov r14d, r15d
mov byte [rcx], al
inc rcx
mov qword [rsp + 0x60], rcx
jmp case.default.0x180027fdc
mov eax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x60]
add eax, 0x8000
sar eax, 0x10
mov byte [rcx], al
jmp case.default.0x180027fdc
movsx ecx, byte [rbx]
inc rbx
movsx eax, byte [r13]
inc r13
movsx r14d, byte [r12]
add eax, ecx
add r14d, eax
inc r12
movsx r15d, byte [rbx]
movsx eax, byte [r13]
add r15d, eax
movsx eax, byte [r12]
add r15d, eax
mov dword [rsp + 0x34], ecx
inc r10d
mov dword [rsp + 0x40], r10d
sub r11, 1
jne 0x180027fc0
mov esi, dword [rsp + 0x48]
inc rdi
mov r9, qword [rsp + 0xe8]
inc esi
mov dword [rsp + 0x3c], ebp
mov dword [rsp + 0x48], esi
cmp esi, dword [r9 + 0xc]
jl 0x180027fb0
mov esi, dword [rsp + 0xd8]
jmp 0x180027df7
mov rdi, qword [rsp + 0xf0]
mov esi, 0x60
nop
mov rax, qword [rdi]
mov r11, qword [rsi + rax]
test r11, r11
je 0x180028233
xor r10d, r10d
mov rdi, r11
test r10, r10
je 0x18002821a
mov rdx, rdi
mov r8, r11
mov r9, r10
mov ecx, dword [rdx]
lea rdx, [rdx + 4]
mov eax, dword [r8]
lea r8, [r8 + 0x20]
mov dword [rdx - 4], eax
mov dword [r8 - 0x20], ecx
sub r9, 1
jne 0x180028200
inc r10
add rdi, 0x20
add r11, 4
cmp r10, 8
jl 0x1800281f2
mov rdi, qword [rsp + 0xf0]
add rsi, 8
cmp rsi, 0x80
jl 0x1800281e0
mov esi, dword [rsp + 0xd8]
jmp 0x180027def
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax]
mov eax, dword [rax + 0x140]
shl eax, 6
mov dword [rsp + 0x58], eax
jmp 0x180027dfb
mov esi, dword [rsp + 0xd8]
jmp 0x180027dff