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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc8
mov rax, qword [rcx + 0x30]
mov rbp, qword [rcx + 0x3c]
mov rbx, rcx
mov qword [rsp + 0x128], r9
mov edi, edx
mov r13, r8
mov qword [rsp + 0x98], 0
mov qword [rsp + 0x30], rax
call fcn.1406a36e0
mov r11d, dword [rbx + 0x1c]
test r11d, r11d
je 0x1406e60f0
test edi, edi
jne 0x1406e5d80
xor r12d, r12d
mov eax, r12d
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r14, qword [rbx]
mov edx, edi
mov rcx, rbx
mov eax, dword [r14 + 0x38]
mov dword [rsp + 0x40], eax
call fcn.1406e5960
test eax, eax
jne 0x1406e5d62
lea rax, str.Tree__u_page__u:
mov dword [rbx + 0x3c], edi
xor r9d, r9d
mov edx, edi
mov qword [rbx + 0x30], rax
lea r8, [rsp + 0x98]
mov rcx, r14
call fcn.14069dbe0
mov r12d, eax
test eax, eax
jne 0x1406e60d0
mov rcx, qword [rsp + 0x98]
movzx eax, byte [rcx]
mov byte [rcx], 0
mov byte [rsp + 0x38], al
call fcn.1406e2440
test eax, eax
jne 0x1406e61a0
mov rcx, qword [rsp + 0x98]
call fcn.1406e01b0
mov dword [rsp + 0x80], eax
test eax, eax
jne 0x1406e64b8
mov rdx, qword [rsp + 0x98]
lea rcx, str.Tree__u_page__u_cell__u:
mov rsi, qword [rdx + 0x50]
movzx r10d, byte [rdx + 9]
mov qword [rbx + 0x30], rcx
movzx r15d, byte [rsi + r10 + 5]
movzx ecx, byte [rsi + r10 + 6]
mov rax, r10
mov qword [rsp + 0x48], rsi
add eax, 0xc
mov qword [rsp + 0x78], r10
shl r15d, 8
or r15d, ecx
sub r15d, 1
movzx ecx, r15w
mov dword [rsp + 0x84], ecx
add ecx, 1
mov dword [rsp + 0x6c], ecx
movzx ecx, byte [rdx + 8]
mov edx, ecx
shl ecx, 2
sub eax, ecx
movzx ecx, byte [rsi + r10 + 4]
mov r15d, eax
mov dword [rsp + 0x88], eax
movzx eax, byte [rsi + r10 + 3]
shl eax, 8
or eax, ecx
sub eax, 1
mov dword [rsp + 0x68], eax
lea eax, [r15 + rax*2]
cdqe
add rax, rsi
mov r15, rax
test dl, dl
je 0x1406e6118
mov rsi, qword [rbx + 0x68]
mov dword [rsp + 0x54], 1
mov dword [rsp + 0x44], 0xffffffff
mov dword [rsi], 0
mov ecx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x50], 1
sub ecx, 4
mov r10d, ecx
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x58], rcx
cmp eax, 0xffffffff
je 0x1406e61e4
mov qword [rsp + 0x70], rbp
mov r12d, eax
mov dword [rsp + 0x118], edi
mov qword [rsp + 0x120], r13
mov r13, rbx
mov rbx, r14
mov r14d, dword [rsp + 0x6c]
mov qword [rsp + 0x60], rsi
mov esi, r10d
mov r9d, dword [r13 + 0x1c]
test r9d, r9d
je 0x1406e6067
movzx ebp, word [r15]
mov dword [r13 + 0x40], r12d
sub r15, 2
rol bp, 8
movzx edi, bp
cmp r14d, edi
ja 0x1406e6170
cmp edi, esi
ja 0x1406e6170
mov rax, qword [rsp + 0x98]
movzx ebp, bp
add rbp, qword [rsp + 0x48]
mov r8, qword [rsp + 0x58]
mov rdx, rbp
mov rcx, rax
call qword [rax + pe_nt_image_headers64]
movzx eax, word [rsp + 0xb6]
add eax, edi
cmp eax, dword [rsp + 0x40]
ja 0x1406e6428
mov rax, qword [rsp + 0x98]
cmp byte [rax + 1], 0
je 0x1406e5fb8
mov r10d, dword [rsp + 0x54]
mov r8, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x128]
test r10d, r10d
je 0x1406e6418
cmp r8, rax
setg al
test al, al
jne 0x1406e6463
mov qword [rsp + 0x128], r8
mov dword [rsp + 0x54], 0
mov eax, dword [rsp + 0xb0]
movzx edx, word [rsp + 0xb4]
cmp eax, edx
jbe 0x1406e6001
mov ecx, dword [rsp + 0x40]
sub eax, edx
xor edx, edx
lea eax, [rax + rcx - 5]
div esi
movzx edx, word [rsp + 0xb6]
mov edx, dword [rbp + rdx - 4]
bswap edx
cmp byte [rbx + 0x21], 0
jne 0x1406e6480
mov r8d, edx
mov r9d, eax
xor edx, edx
mov rcx, r13
call fcn.1406e5ab0
mov rax, qword [rsp + 0x98]
cmp byte [rax + 8], 0
jne 0x1406e61c0
mov edx, dword [rbp]
cmp byte [rbx + 0x21], 0
bswap edx
jne 0x1406e6440
mov r9, qword [rsp + 0x128]
lea r8, [rsp + 0x128]
mov rcx, r13
call fcn.1406e5d10
mov dword [rsp + 0x54], 0
mov ebp, eax
cmp dword [rsp + 0x44], eax
je 0x1406e6059
lea rdx, str.Child_page_depth_differs
mov rcx, r13
call fcn.1406e5880
mov dword [rsp + 0x44], ebp
sub r12d, 1
jae 0x1406e5f08
mov rax, qword [rsp + 0x128]
mov rbx, r13
mov r8d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
mov edi, dword [rsp + 0x118]
mov qword [r13], rax
mov eax, dword [rsp + 0x44]
mov qword [rbx + 0x30], 0
mov rdx, qword [rsp + 0x98]
add eax, 1
mov r12d, eax
test r8d, r8d
jne 0x1406e6207
movzx eax, byte [rsp + 0x38]
mov byte [rdx], al
mov rcx, qword [rdx + 0x70]
call fcn.1406a8230
jmp 0x1406e6100
mov r8d, eax
lea rdx, str.unable_to_get_the_page._error_code_d
mov rcx, rbx
call fcn.1406e5880
cmp r12d, 0xc0a
je 0x1406e6160
nop dword [rax + rax]
mov rdx, qword [rsp + 0x98]
xor r12d, r12d
test rdx, rdx
jne 0x1406e60be
mov rax, qword [rsp + 0x30]
mov qword [rbx + 0x3c], rbp
mov qword [rbx + 0x30], rax
jmp 0x1406e5d65
mov r12d, dword [rsi + r10 + 8]
cmp byte [r14 + 0x21], 0
bswap r12d
jne 0x1406e64d7
mov r9, qword [rsp + 0x128]
mov edx, r12d
mov rcx, rbx
xor esi, esi
lea r8, [rsp + 0x128]
call fcn.1406e5d10
mov dword [rsp + 0x54], 0
mov dword [rsp + 0x44], eax
jmp 0x1406e5eb2
mov dword [rbx + 0x24], 7
jmp 0x1406e60f0
mov dword [rsp + 0x20], esi
mov r9d, r14d
mov r8d, edi
mov rcx, r13
lea rdx, str.Offset__u_out_of_range__u.._u
call fcn.1406e5880
mov dword [rsp + 0x50], 0
jmp 0x1406e605d
lea rdx, str.btreeInitPage___returns_error_code__d
mov r8d, eax
mov rcx, rbx
call fcn.1406e5880
mov rdx, qword [rsp + 0x98]
jmp 0x1406e60fb
movzx eax, word [rsp + 0xb6]
mov rcx, qword [rsp + 0x60]
lea edx, [rdi + rax - 1]
shl edi, 0x10
or edx, edi
call fcn.14069dd00
mov ebp, dword [rsp + 0x44]
jmp 0x1406e6059
mov rax, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x98]
mov qword [r13], rax
mov eax, dword [rsp + 0x44]
mov qword [rbx + 0x30], 0
add eax, 1
mov ecx, dword [rbx + 0x1c]
mov r12d, eax
test ecx, ecx
jle 0x1406e60fb
cmp byte [rdx + 8], 0
mov rax, rdx
jne 0x1406e6297
mov rsi, qword [rbx + 0x68]
mov ecx, dword [rsp + 0x68]
mov dword [rsi], 0
cmp ecx, 0xffffffff
je 0x1406e6297
movsxd r13, dword [rsp + 0x88]
mov r14, qword [rsp + 0x48]
mov qword [rsp + 0x110], rbx
movsxd r15, ecx
add r13, r14
jmp 0x1406e6258
mov rax, qword [rsp + 0x98]
movzx edx, word [r13 + r15*2]
mov rcx, rax
sub r15, 1
rol dx, 8
movzx ebx, dx
movzx edx, dx
add rdx, r14
call qword [rax + 0x78]
mov rcx, rsi
movzx eax, ax
lea edx, [rbx + rax - 1]
shl ebx, 0x10
or edx, ebx
call fcn.14069dd00
cmp r15d, 0xffffffff
jne 0x1406e6250
mov rbx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x78]
mov r13, qword [rsp + 0x48]
movzx r11d, byte [rax + rcx + 1]
movzx eax, byte [rax + rcx + 2]
shl r11d, 8
or r11d, eax
je 0x1406e6311
nop word [rax + rax]
lea eax, [r11 + 2]
lea edx, [r11 + 3]
mov rcx, rsi
cdqe
movsxd rdx, edx
movzx eax, byte [r13 + rax]
movzx edx, byte [r13 + rdx]
shl eax, 8
or eax, edx
lea edx, [r11 + rax - 1]
mov eax, r11d
shl eax, 0x10
or edx, eax
call fcn.14069dd00
movsxd rax, r11d
add r11d, 1
movzx eax, byte [r13 + rax]
movsxd r11, r11d
movzx r11d, byte [r13 + r11]
shl eax, 8
or r11d, eax
jne 0x1406e62c0
mov eax, dword [rsi]
mov r15d, dword [rsp + 0x84]
test eax, eax
je 0x1406e6540
mov qword [rsp + 0x38], rbp
mov r14d, dword [rsp + 0x80]
lea rax, [rsi + rax*4]
mov r13d, r15d
mov r15d, dword [rsi + 4]
mov edx, dword [rax]
mov dword [rsi + 4], edx
mov dword [rax], 0xffffffff
mov eax, dword [rsi]
sub eax, 1
mov dword [rsi], eax
cmp eax, 1
jbe 0x1406e63a2
mov ebp, dword [rsi + 4]
mov r8d, 1
mov eax, 2
jmp 0x1406e6377
mov dword [rax], edx
lea eax, [rcx + rcx]
mov dword [r9], ebp
cmp eax, dword [rsi]
ja 0x1406e63a2
mov r8d, ecx
mov edx, eax
lea r10, [rsi + rdx*4]
lea edx, [rax + 1]
lea r9, [rsi + rdx*4]
mov rcx, rdx
mov r11d, dword [r10]
mov edx, dword [r9]
cmp r11d, edx
ja 0x1406e639a
mov edx, r11d
mov r9, r10
mov ecx, eax
lea rax, [rsi + r8*4]
cmp ebp, edx
jae 0x1406e6368
mov r8d, r15d
movzx r13d, r13w
shr r8d, 0x10
cmp r13d, r8d
jae 0x1406e64fb
lea edx, [r8 + r14 - 1]
mov eax, dword [rsi]
sub edx, r13d
mov r14d, edx
test eax, eax
jne 0x1406e6330
mov rbp, qword [rsp + 0x38]
movzx r15d, r15w
mov eax, dword [rsp + 0x40]
lea r8d, [rdx + rax - 1]
sub r8d, r15d
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rax + rsi + 7]
cmp r9d, r8d
je 0x1406e6408
mov dword [rsp + 0x20], edi
lea rdx, str.Fragmentation_of__u_bytes_reported_as__u_on_page__u
mov rcx, rbx
call fcn.1406e5880
mov rdx, qword [rsp + 0x98]
jmp 0x1406e60fb
cmp r8, rax
setge al
jmp 0x1406e5fa0
lea rdx, str.Extends_off_end_of_page
mov rcx, r13
call fcn.1406e5880
jmp 0x1406e6189
mov r9d, dword [rsp + 0x118]
mov r8d, 5
mov rcx, r13
mov dword [rsp + 0x54], edx
call fcn.1406e59e0
mov edx, dword [rsp + 0x54]
jmp 0x1406e6022
lea rdx, str.Rowid__lld_out_of_order
mov rcx, r13
call fcn.1406e5880
mov r8, qword [rsp + 0xa0]
jmp 0x1406e5fa8
mov r9d, dword [rsp + 0x118]
mov r8d, 3
mov rcx, r13
mov dword [rsp + 0x8c], eax
mov dword [rsp + 0x6c], edx
call fcn.1406e59e0
mov eax, dword [rsp + 0x8c]
mov edx, dword [rsp + 0x6c]
jmp 0x1406e5ff1
lea rdx, str.free_space_corruption
mov r8d, eax
mov rcx, rbx
call fcn.1406e5880
mov rdx, qword [rsp + 0x98]
jmp 0x1406e60fb
lea rax, str.Tree__u_page__u_right_child:
mov r9d, edi
mov edx, r12d
mov rcx, rbx
mov qword [rbx + 0x30], rax
mov r8d, 5
call fcn.1406e59e0
jmp 0x1406e612b
mov r9d, edi
mov rcx, rbx
lea rdx, str.Multiple_uses_for_byte__u_of_page__u
mov dword [rsp + 0x80], r14d
mov rbp, qword [rsp + 0x38]
call fcn.1406e5880
mov eax, dword [rsi]
test eax, eax
jne 0x1406e6408
mov eax, dword [rsp + 0x40]
mov esi, dword [rsp + 0x80]
lea r8d, [rax + rsi - 1]
sub r8d, r13d
jmp 0x1406e63e0
xor edx, edx
jmp 0x1406e63d4