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

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x108
mov rax, qword [0x1401150f8]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov rax, qword [rcx]
xor edi, edi
mov qword [rsp + 0x68], rcx
mov rbp, r8
mov qword [rsp + 0x40], r8
mov esi, edi
mov r8, rdx
mov qword [rsp + 0x60], rdx
mov rdx, rcx
mov word [rsp + 0x28], r9w
mov rcx, qword [rax]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov rbx, qword [rdx + 0x18]
mov rcx, qword [rcx]
mov qword [rsp + 0x58], rcx
cmp byte [rcx + 0x51], dil
je 0x14008b37a
lea eax, [rdi + 7]
jmp 0x14008bb24
mov eax, dword [rbx + 0x28]
mov dword [rsp + 0x50], eax
test al, 0x20
je 0x14008b38c
mov ecx, 0x18
jmp 0x14008b39e
test byte [r8 + 0x3c], 8
mov ecx, 0x1bf
mov eax, 0x3f
cmovne ecx, eax
mov eax, dword [rbp + 0x64]
mov r10d, ecx
movzx r9d, word [rbx + 0x2c]
and r10d, 0xffffffc3
mov r11d, dword [r8 + 0x48]
and al, 4
movzx eax, word [rbx + 0x18]
cmove r10d, ecx
mov word [rsp + 0x24], ax
movzx ecx, word [rbx + 0x2e]
mov word [rsp + 0x4c], cx
mov rcx, qword [rbx]
mov qword [rsp + 0x70], rcx
movzx ecx, word [rbx + 0x16]
mov word [rsp + 0x26], cx
mov ecx, eax
mov rax, qword [rdx + 8]
mov r8d, ecx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rax
mov rax, qword [rbp + 8]
mov word [rsp + 0x4a], r9w
mov dword [rsp + 0x54], ecx
mov qword [rsp + 0x98], rdi
movsx r9, word [rax + rcx*2]
cmp r9d, 0xfffffffe
jne 0x14008b49e
mov rax, qword [rbp + 0x50]
lea rcx, [rcx + rcx*4]
mov rax, qword [rax + 8]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0x98], rcx
mov byte [rsp + 0xa0], sil
mov qword [rsp + 0x90], rdi
lea rcx, [rsp + 0x80]
mov dword [rsp + 0xa4], r10d
mov dword [rsp + 0xa8], edi
mov dword [rsp + 0xac], r11d
mov word [rsp + 0xd8], r9w
mov word [rsp + 0xa1], 0x101
call fcn.1400894b0
xor ecx, ecx
mov rdi, rax
mov word [rbx + 0x12], cx
mov rax, qword [rbp + 0x10]
movzx eax, word [rax]
mov word [rsp + 0x4e], ax
cmp ax, 0xa
jg 0x14008b4d3
mov word [rsp + 0x48], cx
mov edx, 0x100
jmp 0x14008b4f2
test r9d, r9d
js 0x14008b430
mov rdx, qword [rbp + 0x18]
lea rcx, [r9 + r9*2]
add rcx, rcx
mov rax, qword [rdx + 8]
movzx ecx, byte [rax + rcx*8 + 0x29]
mov rax, qword [rbp + 0x40]
mov byte [rsp + 0xa0], cl
mov rcx, qword [rax + r8*8]
mov qword [rsp + 0x90], rcx
jmp 0x14008b440
movsx rcx, ax
call fcn.14001b7e0
xor ecx, ecx
mov edx, 0x100
lea ebp, [rax - 0x21]
mov word [rsp + 0x48], bp
jmp 0x14008b4f2
xor ecx, ecx
test rdi, rdi
je 0x14008ba1b
movzx ebp, word [rdi + 0x1a]
mov dword [rsp + 0x20], ecx
cmp bp, dx
jne 0x14008b5f8
mov rdx, qword [rsp + 0x40]
movzx r9d, word [rsp + 0x24]
mov rax, qword [rdx + 8]
movsx r8, word [rax + r9*2]
test r8d, r8d
js 0x14008b5e9
mov rdx, qword [rdx + 0x18]
lea rcx, [r8 + r8*2]
add rcx, rcx
mov rax, qword [rdx + 8]
movzx ecx, byte [rax + rcx*8 + 0x28]
test ecx, ecx
jne 0x14008b9fe
mov edx, 0x100
mov rax, qword [rbx + 8]
test qword [rdi + 0x28], rax
jne 0x14008b9fe
test word [rdi + 0x1c], dx
je 0x14008b568
cmp bp, 0x10
je 0x14008b9fe
mov eax, dword [rsp + 0x50]
mov rdx, rbx
mov rcx, qword [rsp + 0x58]
mov dword [rbx + 0x28], eax
movzx eax, word [rsp + 0x4a]
mov word [rbx + 0x18], r9w
mov word [rbx + 0x2c], ax
lea r8d, [rax + 1]
call fcn.14008aaf0
test eax, eax
jne 0x14008ba1b
movzx ecx, word [rbx + 0x2c]
mov rax, qword [rbx + 0x38]
mov qword [rax + rcx*8], rdi
inc word [rbx + 0x2c]
mov rcx, qword [rdi + 0x28]
or rcx, qword [rsp + 0x70]
mov rax, qword [rbx + 8]
movzx edx, word [rbx + 0x2c]
not rax
and rcx, rax
mov qword [rbx], rcx
test bpl, 1
je 0x14008b62d
mov rax, qword [rdi]
or dword [rbx + 0x28], 4
test dword [rax + 4], 0x800
je 0x14008b603
mov r10, qword [rsp + 0x40]
mov esi, 0x2e
mov dword [rsp + 0x20], esi
jmp 0x14008b69e
cmp r8d, 0xffffffff
je 0x14008b9fe
jmp 0x14008b545
movzx r9d, word [rsp + 0x24]
jmp 0x14008b54a
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x14008b695
movsxd rax, dword [rcx]
test eax, eax
je 0x14008b695
mov rcx, rax
call fcn.14001b7e0
mov r10, qword [rsp + 0x40]
movsx esi, ax
mov dword [rsp + 0x20], esi
jmp 0x14008b69e
test bpl, 0x82
je 0x14008b687
movzx ecx, word [rsp + 0x24]
mov r10, qword [rsp + 0x40]
mov rax, qword [r10 + 8]
movsx edx, word [rax + rcx*2]
or dword [rbx + 0x28], 1
mov ecx, dword [rbx + 0x28]
cmp edx, 0xffffffff
je 0x14008b66a
test edx, edx
jle 0x14008b69a
cmp word [rsp + 0x28], 0
jne 0x14008b69a
movzx eax, word [r10 + 0x5e]
dec eax
cmp dword [rsp + 0x54], eax
jne 0x14008b69a
test edx, edx
js 0x14008b67e
test byte [r10 + 0x64], 8
jne 0x14008b67e
bts ecx, 0x10
mov dword [rbx + 0x28], ecx
jmp 0x14008b69a
bts ecx, 0xc
mov dword [rbx + 0x28], ecx
jmp 0x14008b69a
mov eax, 0x100
test ax, bp
je 0x14008b6f4
or dword [rbx + 0x28], 8
mov r10, qword [rsp + 0x40]
mov esi, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
mov r9d, dword [rbx + 0x28]
test r9b, 2
je 0x14008b809
movsx r8d, word [rbx + 0x16]
movzx edx, r8w
test rcx, rcx
je 0x14008b6d5
movzx eax, word [rcx + 0x18]
lea edx, [rax + r8]
test ax, ax
jle 0x14008b6d5
lea edx, [r8 - 0x14]
test r11, r11
je 0x14008b7bb
movzx eax, word [r11 + 0x18]
test ax, ax
jg 0x14008b7b7
add dx, ax
jmp 0x14008b7bb
test bpl, 0x24
je 0x14008b767
or dword [rbx + 0x28], 0x22
xor r11d, r11d
mov rcx, rdi
mov qword [rsp + 0x38], r11
mov qword [rsp + 0x30], rcx
test word [rdi + 0x1c], ax
je 0x14008b7a9
mov rcx, qword [rsp + 0x58]
lea rax, [rdi + 0x38]
movzx r8d, dx
mov rdx, rbx
inc r8d
mov qword [rsp + 0x38], rax
call fcn.14008aaf0
test eax, eax
jne 0x14008ba1b
movzx ecx, word [rbx + 0x2c]
mov rax, qword [rbx + 0x38]
mov r11, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov esi, dword [rsp + 0x20]
mov qword [rax + rcx*8], r11
mov rcx, rdi
inc word [rbx + 0x2c]
or dword [rbx + 0x28], 0x10
jmp 0x14008b6a8
or dword [rbx + 0x28], 0x12
mov r11, rdi
test byte [rbx + 0x28], 0x20
mov r10, qword [rsp + 0x40]
mov esi, dword [rsp + 0x20]
mov qword [rsp + 0x38], rdi
je 0x14008b79d
movzx eax, dx
sub eax, 2
movsxd rcx, eax
mov rax, qword [rbx + 0x38]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0x30], rcx
jmp 0x14008b6a8
xor ecx, ecx
mov qword [rsp + 0x30], rcx
jmp 0x14008b6a8
mov r10, qword [rsp + 0x40]
mov esi, dword [rsp + 0x20]
jmp 0x14008b6a8
sub dx, 0x14
test rcx, rcx
je 0x14008b7d8
cmp word [rcx + 0x18], 0
jle 0x14008b7d8
test r11, r11
je 0x14008b7d8
cmp word [r11 + 0x18], 0
jle 0x14008b7d8
sub dx, 0x14
mov rax, qword [rsp + 0x30]
xor ecx, ecx
test rax, rax
setne cl
xor eax, eax
test r11, r11
setne al
add ecx, eax
sub r8d, ecx
cmp dx, 0xa
jge 0x14008b7fd
mov edx, 0xa
movsx eax, dx
cmp eax, r8d
cmovl r8d, eax
jmp 0x14008b862
inc word [rbx + 0x18]
movzx edx, word [rdi + 0x18]
movzx r8d, word [rbx + 0x18]
test dx, dx
jg 0x14008b834
movzx ecx, word [rsp + 0x24]
mov rax, qword [r10 + 8]
cmp word [rax + rcx*2], 0
jl 0x14008b834
sub dx, si
add word [rbx + 0x16], dx
jmp 0x14008b867
mov rdx, qword [r10 + 0x10]
lea eax, [r8 - 1]
movsxd rcx, eax
mov eax, 0x100
movzx r8d, word [rdx + r8*2]
sub r8w, word [rdx + rcx*2]
add r8w, word [rbx + 0x16]
mov word [rbx + 0x16], r8w
test ax, bp
je 0x14008b867
add r8w, 0xa
mov word [rbx + 0x16], r8w
movsx eax, word [r10 + 0x5c]
lea r10, str._n_n_t_t_b_b_a_a_a
mov rcx, qword [rsp + 0x60]
movzx ebp, word [rsp + 0x48]
imul eax, eax, 0xf
mov rcx, qword [rcx + 0x20]
cdq
movsx r8d, word [rcx + 0x44]
idiv r8d
mov r8d, eax
inc r8w
add r8w, word [rbx + 0x16]
cmp bp, r8w
jl 0x14008b8d0
movsx edx, r8w
movsx ecx, bp
lea eax, [rdx + 0x31]
cmp ecx, eax
jle 0x14008b8b3
movzx r8d, bp
jmp 0x14008b8f9
lea eax, [rdx + 0x1f]
cmp ecx, eax
jle 0x14008b8c0
lea r8d, [rbp + 1]
jmp 0x14008b8f9
sub ecx, edx
movsxd rax, ecx
movzx r8d, byte [rax + r10]
add r8w, bp
jmp 0x14008b8f9
movsx edx, bp
movsx ecx, r8w
lea eax, [rdx + 0x31]
cmp ecx, eax
jg 0x14008b8f9
lea eax, [rdx + 0x1f]
cmp ecx, eax
jle 0x14008b8eb
inc r8w
jmp 0x14008b8f9
sub ecx, edx
movsxd rax, ecx
movzx ecx, byte [rax + r10]
add r8w, cx
mov word [rbx + 0x14], r8w
test r9d, 0x140
jne 0x14008b97b
movzx edx, word [rbx + 0x16]
add dx, 0x10
cmp r8w, dx
jl 0x14008b944
movsx r9d, dx
movsx ecx, r8w
lea eax, [r9 + 0x31]
cmp ecx, eax
jg 0x14008b976
lea eax, [r9 + 0x1f]
cmp ecx, eax
jle 0x14008b933
inc r8w
jmp 0x14008b976
sub ecx, r9d
movsxd rax, ecx
movzx ecx, byte [rax + r10]
add r8w, cx
jmp 0x14008b976
movsx r9d, r8w
movsx ecx, dx
lea eax, [r9 + 0x31]
cmp ecx, eax
jle 0x14008b959
movzx r8d, dx
jmp 0x14008b976
lea eax, [r9 + 0x1f]
cmp ecx, eax
jle 0x14008b967
lea r8d, [rdx + 1]
jmp 0x14008b976
sub ecx, r9d
movsxd rax, ecx
movzx r8d, byte [rax + r10]
add r8w, dx
mov word [rbx + 0x14], r8w
movzx ebp, word [rsp + 0x28]
mov rdx, rbx
movzx edi, word [rbx + 0x16]
movzx r8d, word [rsp + 0x4e]
lea eax, [rsi + rbp]
add word [rbx + 0x14], ax
lea eax, [rsi + rbp]
add word [rbx + 0x16], ax
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsi + 8]
call fcn.14008b190
mov rdx, rbx
mov rcx, rsi
call fcn.14008af80
mov ecx, dword [rbx + 0x28]
mov esi, eax
test cl, 2
cmovne di, word [rsp + 0x26]
mov word [rbx + 0x16], di
test cl, 0x10
jne 0x14008b9f5
mov rax, qword [rsp + 0x40]
movzx ecx, word [rax + 0x60]
cmp word [rbx + 0x18], cx
jae 0x14008b9f5
mov r9d, dword [rsp + 0x20]
mov r8, rax
mov rdx, qword [rsp + 0x60]
add r9w, bp
mov rcx, qword [rsp + 0x68]
call fcn.14008b310
movzx ecx, word [rsp + 0x26]
mov word [rbx + 0x16], cx
lea rcx, [rsp + 0x80]
call fcn.1400894b0
mov rdi, rax
mov edx, 0x100
test esi, esi
je 0x14008b4f0
mov rax, qword [rsp + 0x70]
movzx edi, word [rsp + 0x24]
movzx ecx, word [rsp + 0x4c]
movzx r9d, word [rsp + 0x4a]
mov qword [rbx], rax
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0x28], eax
movzx eax, word [rsp + 0x26]
mov word [rbx + 0x16], ax
mov word [rbx + 0x18], di
mov word [rbx + 0x2e], cx
mov word [rbx + 0x2c], r9w
cmp di, cx
jne 0x14008bb22
mov rbp, qword [rsp + 0x40]
movzx eax, di
inc eax
movzx ecx, word [rbp + 0x5e]
cmp eax, ecx
jae 0x14008bb22
test byte [rbp + 0x64], 0x40
jne 0x14008bb22
mov rax, qword [rbp + 0x10]
movzx ecx, di
cmp word [rax + rcx*2 + 2], 0x2a
jl 0x14008bb22
mov rcx, qword [rsp + 0x58]
mov rdx, rbx
movzx r8d, r9w
inc r8d
call fcn.14008aaf0
mov esi, eax
test eax, eax
jne 0x14008bb22
inc word [rbx + 0x18]
mov r8, rbp
inc word [rbx + 0x2e]
movzx ecx, word [rbx + 0x2c]
mov rax, qword [rbx + 0x38]
mov rdx, qword [rsp + 0x60]
movzx r9d, di
mov qword [rax + rcx*8], 0
inc word [rbx + 0x2c]
or dword [rbx + 0x28], 0x8000
mov r10, qword [rbp + 0x10]
mov rcx, qword [rsp + 0x68]
movzx eax, di
movzx r11d, word [r10 + r9*2]
movzx r9d, word [rsp + 0x28]
sub r11w, word [r10 + rax*2 + 2]
add r9w, 5
sub word [rbx + 0x16], r11w
add r9w, r11w
call fcn.14008b310
movzx eax, word [rsp + 0x26]
movzx ecx, word [rsp + 0x4c]
mov word [rbx + 0x16], ax
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0x28], eax
mov word [rbx + 0x18], di
mov word [rbx + 0x2e], cx
mov eax, esi
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.1400c0280
add rsp, 0x108
pop rdi
pop rsi
pop rbp
pop rbx
ret