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

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rsi
push r14
push r15
sub rsp, 0x58
mov eax, 0x44
mov r15d, edx
and r15d, 1
mov ebx, 0x50
mov rsi, rcx
mov r14d, edx
cmove ebx, eax
mov ecx, 0xad
test r15d, r15d
mov eax, 0xc7
cmove eax, ecx
and r14d, 0x11
cmp r14d, 0x11
jne 0x14006e987
inc eax
inc ebx
mov rcx, qword [rsi + 0x88]
lea rdx, [rsp + 0x98]
inc ebx
imul r8d, ebx, 0xe
add r8d, eax
lea r8d, [r8*4 + 0x5b8]
call qword [rsi + 0x78]
mov dword [rsp + 0x88], eax
test eax, eax
je 0x14006e9c5
mov eax, 0xfffffffd
add rsp, 0x58
pop r15
pop r14
pop rsi
pop rbx
ret
mov qword [rsp + 0x50], rbp
mov ebp, 0x41
mov qword [rsp + 0x48], rdi
lea rdi, str.b_add
mov eax, ebx
mov rbx, qword [rsp + 0x98]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r13
imul r13, rax, 0x38
mov qword [rsi + 0x118], rbx
mov qword [rsp + 0x28], r13
lea rax, [rbx + r13]
mov r13, qword [rsp + 0x90]
lea rcx, [rax + 0x4e0]
mov qword [rsp + 0x20], rax
lea r12, [rcx + 0xc0]
mov qword [rsi + 0x128], rcx
lea rax, [r12 + 0x10]
mov qword [rsi + 0x120], r12
mov qword [rsp + 0x80], rax
nop dword [rax]
mov qword [rbx + 0x30], rsi
lea r8, [rsp + 0x80]
movups xmm0, xmmword [rdi]
mov rdx, rbx
mov rcx, r13
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
call qword [rdi + 0x30]
add rbx, 0x38
lea rdi, [rdi + 0x38]
add ebp, 0xffffffff
jne 0x14006ea40
mov rcx, qword [rsp + 0x90]
lea r8, [rsp + 0x80]
mov qword [rbx + 0x30], rsi
mov rdx, rbx
movups xmm0, xmmword [str.b_new]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [0x14014e9f8]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [0x14014ea08]
movups xmmword [rbx + 0x20], xmm0
call fcn.14006f290
xor edi, edi
add rbx, 0x38
test r15d, r15d
mov r15, qword [rsp + 0x90]
lea ebp, [rdi + 0xb]
je 0x14006eb5a
mov edi, ebp
lea rbp, str.b_cut
sub rbp, rbx
nop word [rax + rax]
mov qword [rbx + 0x30], rsi
lea r8, [rsp + 0x80]
movups xmm0, xmmword [rbx + rbp]
mov rdx, rbx
mov rcx, r15
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rbx + rbp + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rbx + rbp + 0x20]
movups xmmword [rbx + 0x20], xmm0
call qword [rbx + rbp + 0x30]
add rbx, 0x38
add edi, 0xffffffff
jne 0x14006eae0
mov qword [rbx + 0x30], rsi
lea r8, [rsp + 0x80]
movups xmm0, xmmword [str.b_set]
mov rdx, rbx
mov rcx, r15
movups xmmword [rbx], xmm0
movups xmm1, xmmword [0x14014e5d0]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [0x14014e5e0]
movups xmmword [rbx + 0x20], xmm0
call fcn.14006f340
add rbx, 0x38
lea ebp, [rdi + 0xb]
xor edi, edi
jmp 0x14006eb68
mov qword [rsi + 0x158], rdi
mov qword [rsi + 0x160], rdi
mov r13, qword [rsp + 0x28]
cmp r14d, 0x11
jne 0x14006ebae
mov qword [rbx + 0x30], rsi
lea r8, [rsp + 0x80]
movups xmm0, xmmword [str.b_in]
mov rdx, rbx
mov rcx, r15
movups xmmword [rbx], xmm0
movups xmm1, xmmword [0x14014e740]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [0x14014e750]
movups xmmword [rbx + 0x20], xmm0
call fcn.14006f210
add rbx, 0x38
mov qword [rbx + 0x30], rdi
lea r8, [rsp + 0x80]
mov qword [rbx + 0x18], rdi
lea rdx, [rbx + 0x38]
mov qword [rbx + 0x20], 0
mov rcx, r15
mov qword [rbx + 8], rdi
mov dword [rbx + 0x28], edi
mov qword [rbx], rdi
mov dword [rbx + 0x10], 0x1000
mov qword [rbx + 0x68], rsi
movups xmm0, xmmword [str.b_chance1]
movups xmmword [rbx + 0x38], xmm0
movups xmm1, xmmword [0x14014e6b0]
movups xmmword [rbx + 0x48], xmm1
movups xmm0, xmmword [0x14014e6c0]
movups xmmword [rbx + 0x58], xmm0
call fcn.14006f0e0
mov qword [rbx + 0xa0], rdi
lea rdx, [r12 - 0x60]
mov qword [rbx + 0x88], rdi
mov qword [rbx + 0x90], 0
mov qword [rbx + 0x78], rdi
mov dword [rbx + 0x98], edi
mov qword [rbx + 0x70], rdi
mov dword [rbx + 0x80], 0x1000
mov rcx, qword [rsp + 0x98]
mov r8, qword [str.b_length]
mov rax, qword [rcx]
test rax, rax
je 0x14006ecef
nop dword [rax]
cmp rax, r8
je 0x14006ec74
mov rax, qword [rcx + 0x38]
add rcx, 0x38
test rax, rax
jne 0x14006ec60
jmp 0x14006ecef
lea rax, [rdx + 0x28]
mov qword [r12], rax
movups xmm0, xmmword [0x14014e588]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14014e598]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x14014e5a8]
movups xmmword [rax + 0x20], xmm0
movsd xmm1, qword [0x14014e5b8]
movsd qword [rax + 0x30], xmm1
mov rax, qword [rcx + 0x18]
mov qword [rdx + 0x40], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x3c], eax
mov rax, qword [rdx + 0x58]
test rax, rax
je 0x14006ecdd
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movsd xmm0, qword [rax + 0x20]
movsd qword [rdx + 0x20], xmm0
or dword [rdx], 2
jmp 0x14006ece3
mov dword [rdx], 2
mov qword [rdx + 0x58], rdx
add r12, 8
mov qword [rdx + 8], rcx
mov qword [r12], rdi
lea rbx, str.b_cast
mov r12, qword [rsp + 0x20]
lea r10, [0x14014d4d0]
mov rdi, qword [rsp + 0x98]
add r12, 0x50
lea r14, [rdi + r13]
lea r13, [r12 + 0x490]
lea r8, [r13 - 0x420]
mov r11, r13
lea r9, [r8 + 0x28]
nop dword [rax]
mov rcx, qword [rdi]
mov rax, rdi
mov rdx, qword [rbx]
lea rbx, [rbx + 8]
test rcx, rcx
je 0x14006ed54
cmp rcx, rdx
je 0x14006ed79
mov rcx, qword [rax + 0x38]
add rax, 0x38
test rcx, rcx
jne 0x14006ed42
mov rcx, qword [r14 - 0x70]
lea rax, [r14 - 0x70]
test rcx, rcx
je 0x14006edf8
cmp rcx, rdx
je 0x14006ed79
mov rcx, qword [rax + 0x38]
add rax, 0x38
test rcx, rcx
jne 0x14006ed65
jmp 0x14006edf8
mov qword [r11], r9
movups xmm0, xmmword [r10]
movups xmmword [r9], xmm0
movups xmm1, xmmword [r10 + 0x10]
movups xmmword [r9 + 0x10], xmm1
movups xmm0, xmmword [r10 + 0x20]
movups xmmword [r9 + 0x20], xmm0
movsd xmm1, qword [r10 + 0x30]
movsd qword [r9 + 0x30], xmm1
mov rcx, qword [rax + 0x18]
mov qword [r9 + 0x18], rcx
mov ecx, dword [rax + 0x10]
mov dword [r9 + 0x14], ecx
mov rcx, qword [r9 + 0x30]
test rcx, rcx
je 0x14006eddd
movups xmm0, xmmword [rcx]
movups xmmword [r8], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [r8 + 0x10], xmm1
movsd xmm0, qword [rcx + 0x20]
movsd qword [r8 + 0x20], xmm0
or dword [r8], 2
jmp 0x14006ede4
mov dword [r8], 2
mov qword [r9 + 0x30], r8
add r8, 0x60
mov qword [r9 - 0x20], rax
add r9, 0x60
add r11, 8
add r10, 0x38
add ebp, 0xffffffff
jne 0x14006ed30
mov rdi, qword [rsp + 0x48]
lea rax, [0x1400aca70]
mov rbp, qword [rsp + 0x50]
xor r9d, r9d
mov qword [r11], r9
mov rcx, qword [rsp + 0x98]
mov qword [rsi + 0xa0], rax
lea rax, [0x14009c7c0]
mov qword [rsi + 0xa8], rax
lea rax, [fcn.1400ae490]
mov qword [rsi + 0xb0], rax
lea rax, [0x140086210]
mov qword [rsi + 0xb8], rax
lea rax, str.data
mov qword [rsi + 0x98], rax
lea rax, [fcn.1400ae880]
mov qword [rsi + 0xc0], rax
mov qword [rsi + 0xd0], rsi
mov dword [rsi + 0xcc], 4
mov eax, dword [r15 + 0x2c]
mov dword [rsi + 0xc8], eax
lea rax, str.b_replace
mov qword [rsi + 0x110], r9
mov qword [rsi + 0xe0], r9
mov qword [rsi + 0xe8], r9
mov qword [rsi + 0xf0], r9
mov qword [rsi + 0xf8], r9
mov qword [rsi + 0xd8], r9
mov qword [rsi + 0x100], r9
mov qword [rsi + 0x108], r9
cmp qword [rcx], rax
je 0x14006eed9
add rcx, 0x38
cmp qword [rcx], rax
jne 0x14006eed0
or dword [r13 - 0x60], 0x14
lea r8, [0x14014e668]
mov rdx, qword [rsp + 0x20]
movups xmm4, xmmword [0x14014e6e8]
mov qword [r13 - 0x40], r12
movups xmm3, xmmword [0x14014e6f8]
mov qword [r13 - 0x50], r8
movups xmm2, xmmword [0x14014e708]
movsd xmm1, qword [0x14014e718]
movups xmmword [r12], xmm4
movups xmmword [r12 + 0x10], xmm3
movups xmmword [r12 + 0x20], xmm2
movsd qword [r12 + 0x30], xmm1
mov rax, qword [rcx + 0x18]
mov dword [r12 + 0x14], 1
add rax, 4
mov qword [r12 + 0x18], rax
lea rax, [r12 + 0x38]
mov qword [r12 + 0x30], rdx
mov dword [rdx], r9d
mov qword [rdx + 8], rcx
or dword [r13 - 0xc0], 0x14
mov qword [r13 - 0xb0], r8
mov qword [r13 - 0xa0], rax
mov r13, qword [rsp + 0x38]
movups xmmword [rax], xmm4
movups xmmword [rax + 0x10], xmm3
movups xmmword [rax + 0x20], xmm2
movsd qword [rax + 0x30], xmm1
mov rax, qword [rcx + 0x18]
add rax, 4
mov qword [r12 + 0x50], rax
lea rax, [rdx + 0x28]
mov dword [r12 + 0x4c], 1
mov qword [r12 + 0x68], rax
mov r12, qword [rsp + 0x40]
mov dword [rax], r9d
mov eax, dword [rsp + 0x88]
mov qword [rdx + 0x30], rcx
add rsp, 0x58
pop r15
pop r14
pop rsi
pop rbx
ret