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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov r14, r9
mov r13d, edx
mov rsi, rcx
mov qword [rsp + 0x40], rcx
call fcn.14009d090
mov rbx, rax
mov eax, dword [rsi + 0x50]
dec eax
mov rcx, rbx
mov dword [rsp + 0x30], eax
call fcn.140060b20
mov r15, qword [rsp + 0xc0]
xor ebp, ebp
mov dword [rsp + 0xa0], eax
cmp dword [rsp + 0xd8], ebp
jge 0x14008bb88
movzx r8d, byte [r15 + 0x2c]
mov r9d, eax
mov edx, 0x83
mov rcx, rbx
mov dword [rsp + 0x20], ebp
call fcn.1400608a0
mov r12d, dword [rsp + 0xd0]
mov edi, ebp
cmp dword [r15 + 0x28], ebp
jle 0x14008bc40
mov r14, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xc0]
mov r13d, dword [rsp + 0xa0]
nop dword [rax]
nop dword [rax + rax]
mov r15d, dword [r14]
mov rax, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
inc r15d
add r15d, r12d
cmp dword [rax + 0x60], ebp
jg 0x14008bbe2
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008bc16
inc dword [rbx + 0x3c]
mov rax, qword [rbx + 8]
lea rcx, [rbp*2]
add rcx, rbp
xor ebp, ebp
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
jmp 0x14008bc18
xor ebp, ebp
inc edi
add r14, 4
cmp edi, dword [rsi + 0x28]
jl 0x14008bbc0
mov rsi, qword [rsp + 0x40]
mov r13d, dword [rsp + 0xa8]
mov r14, qword [rsp + 0xb8]
mov r15, qword [rsp + 0xc0]
cmp dword [rsp + 0xe0], 0
jne 0x14008c208
test r14, r14
jne 0x14008bde0
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x14008bc67
inc dword [rsi + 0x54]
mov edi, dword [rsi + 0x54]
jmp 0x14008bc73
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov edi, dword [rsi + rax*4 + 0x24]
mov rax, qword [rsp + 0xc8]
lea r8d, [r12 + 1]
mov r9d, edi
mov eax, dword [rax]
mov edx, 0x22
mov rcx, rbx
add r8d, eax
mov dword [rsp + 0x20], ebp
call fcn.1400608a0
xor r9d, r9d
mov r8d, edi
lea edx, [r9 + 0x26]
mov rcx, rbx
mov dword [rsp + 0x20], ebp
call fcn.1400608a0
mov r14, qword [rsp + 0xb0]
mov ebp, eax
cmp r14, qword [r15]
jne 0x14008bcfa
cmp dword [rsp + 0xd8], 1
jne 0x14008bcfa
mov r9d, dword [rsp + 0xa0]
mov r8d, r12d
mov edx, 0x4f
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.1400608a0
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x14008bcfa
movsxd rax, dword [rbx + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x88
mov r15d, dword [rsp + 0x30]
mov r9, r14
mov r8d, r13d
mov rcx, rsi
mov edx, r15d
mov dword [rsp + 0x20], 0x34
call fcn.14008eb90
xor r9d, r9d
mov r8d, r15d
lea edx, [r9 + 0x43]
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.1400608a0
mov r12d, dword [rsp + 0xa0]
xor r8d, r8d
lea edx, [r8 + 0x10]
mov rcx, rbx
mov r9d, r12d
mov dword [rsp + 0x20], 0
call fcn.1400608a0
mov edx, dword [rbx + 0x3c]
lea eax, [rdx - 2]
cmp edx, eax
jbe 0x14008bd66
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
mov edx, dword [rbx + 0x3c]
cmp edx, ebp
jbe 0x14008bd8c
mov rax, qword [rbx + 8]
lea rcx, [rbp*2]
add rcx, rbp
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
xor ebp, ebp
dec ecx
mov dword [rax + 0x64], ecx
test edi, edi
je 0x14008c217
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x14008c217
mov ecx, ebp
lea rax, [rsi + 0x88]
cmp dword [rax + 0xc], edi
je 0x14008bdd7
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14008bdb8
movzx eax, dl
mov dword [rsi + rax*4 + 0x24], edi
inc byte [rsi + 0x1f]
jmp 0x14008c217
mov byte [rax + 6], 1
jmp 0x14008c217
movsxd r15, dword [r15 + 0x28]
mov ecx, dword [rsi + 0x44]
mov ebp, dword [rsi + 0x48]
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0xe0], ebp
cmp r15d, ecx
jg 0x14008be0a
lea eax, [r15 + rbp]
sub ecx, r15d
mov dword [rsi + 0x48], eax
mov dword [rsi + 0x44], ecx
jmp 0x14008be1d
mov eax, dword [rsi + 0x54]
lea ebp, [rax + 1]
add eax, r15d
mov dword [rsp + 0xe0], ebp
mov dword [rsi + 0x54], eax
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x14008be2d
inc dword [rsi + 0x54]
mov eax, dword [rsi + 0x54]
jmp 0x14008be39
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov eax, dword [rsi + rax*4 + 0x24]
mov r9d, dword [r14 + 0x58]
mov r8d, dword [rsp + 0x30]
mov edx, 0x34
mov rcx, rbx
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x20], r13d
call fcn.1400608a0
mov rdx, r14
mov rcx, rsi
call fcn.140061140
xor edi, edi
mov r13, r15
test r15d, r15d
jle 0x14008beed
mov rsi, qword [rsp + 0xc8]
nop dword [rax]
mov rax, qword [rbx + 0x30]
movsxd r14, dword [rbx + 0x3c]
lea r15d, [r12 + 1]
add r15d, dword [rsi + rdi*4]
cmp dword [rax + 0x60], r14d
jg 0x14008bea3
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008bed3
mov rax, qword [rbx + 8]
inc dword [rbx + 0x3c]
lea rcx, [r14 + r14*2]
mov word [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], 0
mov qword [rax + rcx*8 + 0x10], 0
inc rdi
inc ebp
cmp rdi, r13
jl 0x14008be80
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0xb8]
mov r15d, r13d
mov rax, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xb0]
cmp rdx, qword [rax]
jne 0x14008c02d
cmp dword [rsp + 0xd8], 1
jne 0x14008c02d
mov eax, dword [rbx + 0x3c]
xor edi, edi
inc eax
add eax, r15d
test r13, r13
jle 0x14008bfda
mov esi, eax
nop dword [rax]
mov rax, qword [rsp + 0xc8]
lea r15d, [r12 + 1]
lea ebp, [r12 + 1]
mov eax, dword [rax + rdi*4]
add r15d, eax
mov rax, qword [r14 + 8]
movsxd r14, dword [rbx + 0x3c]
movsx ecx, word [rax + rdi*2]
mov rax, qword [rbx + 0x30]
add ebp, ecx
cmp cx, word [rdx + 0x40]
cmove ebp, r12d
cmp dword [rax + 0x60], r14d
jg 0x14008bf74
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008bfa0
mov rax, qword [rbx + 8]
inc dword [rbx + 0x3c]
lea rcx, [r14 + r14*2]
mov word [rax + rcx*8], 0x4e
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], 0
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x14008bfb6
movsxd rax, dword [rbx + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 8
mov r14, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xb0]
inc rdi
cmp rdi, r13
jl 0x14008bf30
mov rsi, qword [rsp + 0x40]
mov r15d, r13d
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x14008bff3
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008c02d
mov rax, qword [rbx + 8]
inc dword [rbx + 0x3c]
mov edx, dword [rsp + 0xa0]
lea rcx, [rdi + rdi*2]
mov word [rax + rcx*8], 0x10
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 0
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], 0
mov qword [rax + rcx*8 + 0x10], 0
mov rdx, qword [rsp + 0xb8]
mov rcx, rbx
call fcn.14008ec60
mov rcx, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
mov r14, rax
mov edi, 1
cmp dword [rcx + 0x60], ebp
jg 0x14008c06f
mov rcx, rbx
call fcn.1400607f0
test eax, eax
je 0x14008c06f
mov r15d, dword [rsp + 0x34]
mov r13d, dword [rsp + 0xe0]
mov ebp, edi
jmp 0x14008c0b1
inc dword [rbx + 0x3c]
mov rax, qword [rbx + 8]
mov r13d, dword [rsp + 0xe0]
lea rcx, [rbp*2]
add rcx, rbp
mov dword [rax + rcx*8 + 8], r15d
mov r15d, dword [rsp + 0x34]
mov word [rax + rcx*8], 0x30
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov qword [rax + rcx*8 + 0x10], 0
mov dword [rax + rcx*8 + 0xc], r15d
mov r12d, dword [rsp + 0x38]
mov r8, r14
mov edx, ebp
mov r9d, r12d
mov rcx, rbx
call fcn.140061030
mov rax, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
cmp dword [rax + 0x60], ebp
jg 0x14008c0df
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008c11f
inc dword [rbx + 0x3c]
mov rax, qword [rbx + 8]
mov edx, dword [rsp + 0x30]
lea rcx, [rbp*2]
mov edi, ebp
add rcx, rbp
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0xa0]
mov word [rax + rcx*8], 0x42
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], 0
mov dword [rax + rcx*8 + 8], edx
mov r8, qword [rbx + 8]
mov rcx, qword [rbx]
test r8, r8
je 0x14008c163
cmp byte [rcx + 0x50], 0
jne 0x14008c163
test edi, edi
jns 0x14008c13a
mov edi, dword [rbx + 0x3c]
dec edi
movsxd rax, edi
lea rdx, [rax + rax*2]
lea rdi, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rdi + 0x10]
call fcn.140060e70
xor ebp, ebp
mov byte [rdi + 1], 0xf2
mov qword [rdi + 0x10], rbp
mov dword [rdi + 0x10], ebp
jmp 0x14008c171
xor r8d, r8d
lea edx, [r8 - 0xe]
call fcn.140060e70
xor ebp, ebp
test r15d, r15d
je 0x14008c1aa
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x14008c1aa
mov ecx, ebp
lea rax, [rsi + 0x88]
cmp dword [rax + 0xc], r15d
je 0x14008c1a6
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14008c188
movzx eax, dl
mov dword [rsi + rax*4 + 0x24], r15d
inc byte [rsi + 0x1f]
jmp 0x14008c1aa
mov byte [rax + 6], 1
lea r9d, [r12 - 1]
lea rcx, [rsi + 0x94]
mov r8d, 0xa
add r9d, r13d
nop
mov edx, dword [rcx]
cmp edx, r13d
jl 0x14008c1ea
cmp edx, r9d
jg 0x14008c1ea
cmp byte [rcx - 6], 0
je 0x14008c1e8
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14008c1e4
movzx eax, al
mov dword [rsi + rax*4 + 0x24], edx
inc byte [rsi + 0x1f]
mov byte [rcx - 6], 0
mov dword [rcx], ebp
add rcx, 0x14
dec r8
jne 0x14008c1c0
mov r15d, dword [rsp + 0x30]
cmp r12d, dword [rsi + 0x44]
jle 0x14008c20f
mov dword [rsi + 0x44], r12d
mov dword [rsi + 0x48], r13d
jmp 0x14008c20f
mov r15d, dword [rsp + 0x30]
xor ebp, ebp
mov r12d, dword [rsp + 0xa0]
mov rdx, qword [rsp + 0xc0]
movzx ecx, byte [rdx + 0x2c]
test cl, cl
jne 0x14008c2ed
mov rax, qword [rsi]
test dword [rax + 0x2c], 0x1000000
jne 0x14008c2ed
cmp qword [rsi + 0x1c0], 0
jne 0x14008c2ed
cmp byte [rsi + 0x20], cl
jne 0x14008c2ed
mov rcx, rsi
call fcn.14009d090
mov rcx, qword [rsi + 0x1c0]
mov edx, 0x18
test rcx, rcx
lea r9d, [rdx - 0x16]
mov r8d, 0x313
cmovne rsi, rcx
mov rcx, rax
mov r14, rax
mov byte [rsi + 0x21], 1
mov dword [rsp + 0x20], ebp
call fcn.1400608a0
mov r8, qword [r14 + 8]
mov rcx, qword [r14]
test r8, r8
je 0x14008c2c9
cmp byte [rcx + 0x50], 0
jne 0x14008c2c9
test eax, eax
jns 0x14008c2a6
mov eax, dword [r14 + 0x3c]
dec eax
cdqe
lea rdx, [rax + rax*2]
lea rdi, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rdi + 0x10]
call fcn.140060e70
mov qword [rdi + 0x10], rbp
mov byte [rdi + 1], 0
jmp 0x14008c2d5
xor r8d, r8d
lea edx, [r8 - 2]
call fcn.140060e70
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x14008c358
movsxd rax, dword [r14 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 4
jmp 0x14008c358
mov ebp, dword [rsp + 0xd8]
test ebp, ebp
jle 0x14008c30e
test cl, cl
jne 0x14008c30e
mov rax, qword [rsi + 0x1c0]
test rax, rax
cmovne rsi, rax
mov byte [rsi + 0x21], 1
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
movzx esi, byte [rdx + 0x2c]
cmp dword [rax + 0x60], edi
jg 0x14008c32b
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008c356
inc dword [rbx + 0x3c]
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], ebp
xor ebp, ebp
mov word [rax + rcx*8], 0x82
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
jmp 0x14008c358
xor ebp, ebp
mov r8, qword [rbx + 0x30]
or eax, 0xffffffff
sub eax, r12d
js 0x14008c379
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x14008c379
movsxd rcx, eax
mov eax, dword [rbx + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rbx + 0x3c]
dec eax
mov dword [r8 + 0x64], eax
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x14008c39b
mov rcx, rbx
call fcn.1400607f0
test eax, eax
jne 0x14008c3c4
mov rax, qword [rbx + 8]
inc dword [rbx + 0x3c]
lea rcx, [rdi + rdi*2]
mov word [rax + rcx*8], 0x3a
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbp
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret