Function at 0x14001ce40
Capabilities:
Delete file

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x37]
sub rsp, 0x90
mov rax, qword [0x14004d298]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rax, qword gs:[0x58]
mov rsi, rcx
mov dil, dl
mov byte [rbp - 0x20], dl
mov edx, 8
mov rcx, qword [rax]
lea rax, str.TieringJetSession::OpenJetTable
mov qword [rdx + rcx], rax
lea rcx, [rbp - 0x19]
call fcn.140005448
xor r14d, r14d
mov byte [rbp - 0x1f], r14b
mov byte [rbp - 0x29], r14b
cmp byte [rsi], r14b
jne 0x14001d055
mov rbx, qword [rsi + 0x28]
mov rbx, qword [rbx]
add rbx, 0x18
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
nop dword [rax + rax]
mov rcx, qword [rsi + 0x28]
cmp byte [rcx + 0x4d], r14b
je 0x14001cf32
mov edi, 0x800401ff
mov dword [rbp - 0x11], edi
mov rax, qword [0x14004d128]
lea r12, [0x14004d128]
cmp rax, r12
je 0x14001cf15
test byte [rax + 0x1c], 1
je 0x14001cf15
cmp byte [rax + 0x19], 2
jb 0x14001cf15
mov r9, qword [rcx + 0x70]
lea edx, [r14 + 0x50]
mov rcx, qword [rax + 0x10]
lea r8, [0x140046aa8]
mov dword [rsp + 0x20], edi
call fcn.14000a60c
test rbx, rbx
je 0x14001d058
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
jmp 0x14001d058
test dil, dil
je 0x14001cfb3
cmp byte [rcx + 0x28], r14b
jne 0x14001cfb9
test rbx, rbx
je 0x14001cf55
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
mov rcx, qword [rsi + 0x28]
mov rcx, qword [rcx + 0x68]
lea rdx, [rsi + 8]
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rcx]
call qword [sym.imp.ESENT.dll_JetBeginSessionW]
nop dword [rax + rax]
mov r8d, eax
test eax, eax
je 0x14001d104
cmp eax, 0xfffffdef
je 0x14001d0ab
cmp eax, 0xfffffbbc
je 0x14001d0ab
cmp eax, 0xfffff8f0
je 0x14001d0ab
cmp eax, 0xfffffc0d
jne 0x14001d08c
mov edi, 0x8007000e
jmp 0x14001d0b7
cmp byte [rcx + 8], r14b
je 0x14001cf3d
test dil, dil
je 0x14001cfdb
mov byte [rcx + 0x28], r14b
mov r9, qword [rsi + 0x28]
mov rax, qword [r9 + 0x30]
mov qword [rsi + 8], rax
mov eax, dword [r9 + 0x38]
mov dword [rsi + 0x10], eax
mov rax, qword [r9 + 0x40]
jmp 0x14001cff6
mov byte [rcx + 8], r14b
mov r9, qword [rsi + 0x28]
mov rax, qword [r9 + 0x10]
mov qword [rsi + 8], rax
mov eax, dword [r9 + 0x18]
mov dword [rsi + 0x10], eax
mov rax, qword [r9 + 0x20]
mov qword [rsi + 0x18], rax
lea r12, [0x14004d128]
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d032
test byte [rcx + 0x1c], 1
je 0x14001d032
cmp byte [rcx + 0x19], 4
jb 0x14001d032
mov r9, qword [r9 + 0x70]
lea r8, [0x140046aa8]
mov rcx, qword [rcx + 0x10]
mov edx, 0x51
call fcn.14000a3f0
mov byte [rsi], 1
mov byte [rsi + 0x21], dil
mov byte [rsi + 0x20], 1
mov dword [rbp - 0x11], r14d
test rbx, rbx
je 0x14001d055
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
mov edi, r14d
lea rcx, [rbp - 0x19]
call fcn.1400059b8
mov eax, edi
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.140001e70
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret
test r8d, r8d
mov eax, 0x8e5e0000
mov ecx, 0xe5e0000
cmovs ecx, eax
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
movzx edi, ax
or edi, ecx
jmp 0x14001d0b7
mov ecx, 0x70
call fcn.140002f1c
mov edi, eax
mov dword [rbp - 0x11], edi
mov rcx, qword [0x14004d128]
lea r12, [0x14004d128]
cmp rcx, r12
je 0x14001d058
test byte [rcx + 0x1c], 1
je 0x14001d058
cmp byte [rcx + 0x19], 2
jb 0x14001d058
mov r9, qword [rsi + 0x28]
mov edx, 0x52
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], r8d
lea r8, [0x140046aa8]
mov r9, qword [r9 + 0x70]
call fcn.14001ead4
jmp 0x14001d058
mov rbx, qword [rsi + 0x28]
mov byte [rbp - 0x21], 1
mov rbx, qword [rbx]
add rbx, 0x18
mov rcx, rbx
mov qword [rbp - 9], rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
nop dword [rax + rax]
mov rcx, qword [0x14004d128]
lea r12, [0x14004d128]
lea r13, [0x140046aa8]
cmp rcx, r12
je 0x14001d165
test byte [rcx + 0x1c], 1
je 0x14001d165
cmp byte [rcx + 0x19], 5
jb 0x14001d165
mov r9, qword [rsi + 0x28]
mov edx, 0x53
mov rcx, qword [rcx + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov rax, qword [rsi + 0x28]
mov edi, 2
cmp dword [rax + 0x60], 1
jne 0x14001d3f2
mov dword [rbp - 0x1d], r14d
mov rdx, qword [rsi + 0x28]
mov r9d, 0x10
mov rcx, qword [rsi + 8]
xor r8d, r8d
mov rdx, qword [rdx + 0x70]
call qword [sym.imp.ESENT.dll_JetAttachDatabase2W]
nop dword [rax + rax]
mov r8d, dword [rbp - 0x1d]
mov r14d, eax
cmp r8d, edi
jae 0x14001d2bc
test eax, eax
je 0x14001d36d
cmp eax, 0xfffffdef
je 0x14001d2ca
cmp eax, 0xfffffbbc
je 0x14001d2ca
cmp eax, 0xfffff8f0
je 0x14001d2ca
cmp eax, 0x3ef
je 0x14001d36d
cmp eax, 0xfffffc10
je 0x14001d2ca
cmp eax, 0xfffffe07
je 0x14001d2ca
cmp eax, 0xfffffb4e
je 0x14001d2ca
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d244
test byte [rcx + 0x1c], 1
je 0x14001d244
cmp byte [rcx + 0x19], dil
jb 0x14001d244
mov rax, qword [rsi + 0x28]
mov r9d, r8d
mov rcx, qword [rcx + 0x10]
mov edx, 0x54
mov dword [rsp + 0x28], r14d
mov r8, r13
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x20], rax
call fcn.14001e994
mov r8d, dword [rbp - 0x1d]
mov rax, qword [rsi + 0x28]
inc r8d
mov edx, r8d
mov dword [rbp - 0x1d], r8d
mov rcx, qword [rax]
mov byte [rcx + 0xa3], 1
mov rcx, qword [rsi + 0x28]
call fcn.140039bb0
mov ecx, eax
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d2ae
test byte [r10 + 0x1c], 1
je 0x14001d2ae
cmp byte [r10 + 0x19], 3
jb 0x14001d2ae
mov rax, qword [rsi + 0x28]
mov edx, 0x55
mov r9d, dword [rbp - 0x1d]
mov r8, r13
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [r10 + 0x10]
call fcn.14001e8a4
mov r10, qword [0x14004d128]
cmp dword [rbp - 0x1d], edi
jbe 0x14001d17c
jmp 0x14001d374
test r14d, r14d
je 0x14001d305
cmp r14d, 0x3ef
je 0x14001d305
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d30c
test byte [r10 + 0x1c], 1
je 0x14001d30c
cmp byte [r10 + 0x19], dil
jb 0x14001d30c
mov r9, qword [rsi + 0x28]
mov edx, 0x56
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov dword [rsp + 0x20], r14d
mov r9, qword [r9 + 0x70]
call fcn.14001ead4
mov r8d, dword [rbp - 0x1d]
mov r10, qword [0x14004d128]
cmp r8d, edi
jne 0x14001d374
cmp r10, r12
je 0x14001d342
test byte [r10 + 0x1c], 1
je 0x14001d342
cmp byte [r10 + 0x19], dil
jb 0x14001d342
mov rax, qword [rsi + 0x28]
mov edx, 0x57
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [rax]
mov r9, qword [r9 + 0x258]
call fcn.14000a3f0
mov rax, qword [rsi + 0x28]
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rax]
lea rax, [0x140046a38]
mov qword [rsp + 0x20], rax
mov rdx, qword [rcx + 0x258]
call fcn.14003a374
mov r14d, 0xfffff8ed
mov r10, qword [0x14004d128]
mov al, byte [rbp - 0x29]
cmp r14d, 0xfffff8ed
je 0x14001d521
cmp r14d, 0xfffffb4d
je 0x14001d521
test r14d, r14d
je 0x14001d740
cmp r14d, 0xfffffdda
je 0x14001d740
cmp r14d, 0x3ef
je 0x14001d740
cmp r14d, 0xfffffdef
je 0x14001d6d5
cmp r14d, 0xfffffbbc
je 0x14001d6d5
cmp r14d, 0xfffff8f0
je 0x14001d6d5
cmp r14d, 0xfffffc0d
jne 0x14001d6b7
mov edi, 0x8007000e
jmp 0x14001d6e1
mov rdx, qword [rax + 0x70]
xor r8d, r8d
cmp dword [rax + 0x60], 3
mov r9d, 0x10
mov rcx, qword [rsi + 8]
jne 0x14001d46a
call qword [sym.imp.ESENT.dll_JetAttachDatabase2W]
nop dword [rax + rax]
mov r14d, eax
test eax, eax
jns 0x14001d36d
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d451
test byte [rcx + 0x1c], 1
je 0x14001d451
cmp byte [rcx + 0x19], dil
jb 0x14001d451
mov r9, qword [rsi + 0x28]
mov edx, 0x58
mov rcx, qword [rcx + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov rcx, qword [rsi + 0x28]
mov rcx, qword [rcx + 0x70]
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_DeleteFileW]
nop dword [rax + rax]
jmp 0x14001d367
call qword [sym.imp.ESENT.dll_JetAttachDatabase2W]
nop dword [rax + rax]
mov r14d, eax
cmp eax, 0xfffffdda
jne 0x14001d64b
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d4b5
test byte [rcx + 0x1c], 1
je 0x14001d4b5
cmp byte [rcx + 0x19], 4
jb 0x14001d4b5
mov r9, qword [rsi + 0x28]
mov edx, 0x59
mov rcx, qword [rcx + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov rdx, qword [rsi + 0x28]
lea r9, [rsi + 0x10]
mov rcx, qword [rsi + 8]
xor r8d, r8d
and dword [rsp + 0x20], 0
mov rdx, qword [rdx + 0x70]
call qword [sym.imp.ESENT.dll_JetOpenDatabaseW]
nop dword [rax + rax]
mov r14d, eax
cmp eax, 0xfffffb4d
jne 0x14001d601
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d54d
test byte [r10 + 0x1c], 1
je 0x14001d521
cmp byte [r10 + 0x19], 4
jb 0x14001d521
mov r9, qword [rsi + 0x28]
mov edx, 0x5a
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d54d
test byte [r10 + 0x1c], 1
je 0x14001d54d
cmp byte [r10 + 0x19], 5
jb 0x14001d54d
mov r9, qword [rsi + 0x28]
mov edx, 0x5d
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov rdx, qword [rsi + 0x28]
lea r9, [rsi + 0x10]
mov rcx, qword [rsi + 8]
xor r8d, r8d
mov eax, dword [rdx + 0x60]
mov rdx, qword [rdx + 0x70]
dec eax
test eax, 0xfffffffd
je 0x14001d90e
mov dword [rsp + 0x20], 0x200
call qword [sym.imp.ESENT.dll_JetCreateDatabase2W]
nop dword [rax + rax]
mov r14d, eax
test eax, eax
jne 0x14001d92d
mov rax, qword [rsi + 0x28]
cmp dword [rax + 0x60], edi
jne 0x14001d850
test byte [0x14004dcc0], dil
je 0x14001d817
mov rax, qword [rax]
lea r9d, [r14 + 3]
and dword [rbp + 0x1b], r14d
and dword [rbp + 0x2b], r14d
mov dword [rbp + 0x17], edi
movzx ecx, word [rax + 0x2b8]
mov rdx, qword [rax + 0x2c0]
shr cx, 1
movzx eax, cx
lea rcx, [rbp - 0x29]
mov word [rbp - 0x29], ax
add eax, eax
mov dword [rbp + 0x27], eax
lea rax, [rbp - 1]
mov qword [rbp + 0x1f], rdx
lea rdx, [0x140045b70]
mov qword [rsp + 0x20], rax
mov qword [rbp + 0xf], rcx
call fcn.140018d70
mov r9d, eax
jmp 0x14001d81a
test eax, eax
jne 0x14001d36d
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d641
test byte [r10 + 0x1c], 1
je 0x14001d641
cmp byte [r10 + 0x19], 4
jb 0x14001d641
mov r9, qword [rsi + 0x28]
lea edx, [rax + 0x5b]
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov r10, qword [0x14004d128]
mov al, 1
mov byte [rbp - 0x29], al
jmp 0x14001d377
cmp eax, 0xfffffb4a
jne 0x14001d36d
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d68d
test byte [rcx + 0x1c], 1
je 0x14001d68d
cmp byte [rcx + 0x19], dil
jb 0x14001d68d
mov rax, qword [rsi + 0x28]
mov edx, 0x5c
mov rcx, qword [rcx + 0x10]
mov r8, r13
mov r9, qword [rax]
mov r9, qword [r9 + 0x270]
call fcn.14000a3f0
mov rax, qword [rsi + 0x28]
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rax]
lea rax, [0x140046a38]
mov qword [rsp + 0x20], rax
mov rdx, qword [rcx + 0x270]
call fcn.14003a374
jmp 0x14001d51a
mov eax, r14d
mov ecx, 0xe5e0000
cdq
xor eax, edx
sub eax, edx
movzx edi, ax
mov eax, r14d
and eax, 0x8e5e0000
or edi, eax
or edi, ecx
jmp 0x14001d6e1
mov ecx, 0x70
call fcn.140002f1c
mov edi, eax
mov dword [rbp - 0x11], edi
cmp r10, r12
je 0x14001d71c
test byte [r10 + 0x1c], 1
je 0x14001d71c
cmp byte [r10 + 0x19], 2
jb 0x14001d71c
mov edx, 0x61
mov r9, qword [rsi + 0x28]
mov r9, qword [r9 + 0x70]
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov dword [rsp + 0x20], r14d
call fcn.14001ead4
mov r10, qword [0x14004d128]
test rbx, rbx
je 0x14001db10
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
mov bl, byte [rbp - 0x29]
mov r14b, byte [rbp - 0x21]
jmp 0x14001db30
test al, al
jne 0x14001d885
mov rdx, qword [rsi + 0x28]
lea r9, [rsi + 0x10]
mov rcx, qword [rsi + 8]
xor r8d, r8d
and dword [rsp + 0x20], 0
mov rdx, qword [rdx + 0x70]
call qword [sym.imp.ESENT.dll_JetOpenDatabaseW]
nop dword [rax + rax]
mov r14d, eax
test eax, eax
je 0x14001d7f8
cmp eax, 0xfffffdef
je 0x14001d7b9
cmp eax, 0xfffffbbc
je 0x14001d7b9
cmp eax, 0xfffff8f0
je 0x14001d7b9
cmp eax, 0xfffffc0d
jne 0x14001d79a
mov edi, 0x8007000e
jmp 0x14001d7c5
test r14d, r14d
mov eax, 0x8e5e0000
mov ecx, 0xe5e0000
cmovs ecx, eax
mov eax, r14d
cdq
xor eax, edx
sub eax, edx
movzx edi, ax
or edi, ecx
jmp 0x14001d7c5
mov ecx, 0x70
call fcn.140002f1c
mov edi, eax
mov dword [rbp - 0x11], edi
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d71c
test byte [r10 + 0x1c], 1
je 0x14001d71c
cmp byte [r10 + 0x19], 2
jb 0x14001d71c
mov edx, 0x62
jmp 0x14001d6fc
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d881
test byte [rcx + 0x1c], 1
je 0x14001d881
cmp byte [rcx + 0x19], 4
jb 0x14001d881
mov edx, 0x63
jmp 0x14001d86d
xor r9d, r9d
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d881
test byte [rcx + 0x1c], 1
je 0x14001d857
cmp byte [rcx + 0x19], 4
jb 0x14001d857
mov rax, qword [rsi + 0x28]
mov edx, 0x5e
mov rcx, qword [rcx + 0x10]
mov r8, r13
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x20], rax
call fcn.14000a290
mov rcx, qword [0x14004d128]
cmp rcx, r12
je 0x14001d881
test byte [rcx + 0x1c], 1
je 0x14001d881
cmp byte [rcx + 0x19], 4
jb 0x14001d881
mov edx, 0x60
mov r9, qword [rsi + 0x28]
mov r8, r13
mov rcx, qword [rcx + 0x10]
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov byte [rbp - 0x29], 1
mov r13b, byte [rbp - 0x20]
lea rbx, [rsi + 0x18]
mov rax, qword [rsi + 8]
lea rdx, [rbp - 0x1f]
mov r9d, dword [rsi + 0x10]
mov r8b, r13b
mov qword [rsp + 0x28], rbx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.14001dc24
mov r8, qword [rsi + 0x28]
cmp byte [r8 + 0x94], 0
jne 0x14001d88d
mov rbx, qword [rbp - 9]
lea r13, [0x140046aa8]
test r14d, r14d
je 0x14001da16
cmp r14d, 0xfffffdef
je 0x14001d9d3
cmp r14d, 0xfffffbbc
je 0x14001d9d3
cmp r14d, 0xfffff8f0
je 0x14001d9d3
cmp r14d, 0xfffffc0d
jne 0x14001d9b5
mov edi, 0x8007000e
jmp 0x14001d9df
mov dword [rsp + 0x20], 0x208
call qword [sym.imp.ESENT.dll_JetCreateDatabase2W]
nop dword [rax + rax]
mov r14d, eax
test eax, eax
je 0x14001d850
cmp r14d, 0xfffffdef
je 0x14001d976
cmp r14d, 0xfffffbbc
je 0x14001d976
cmp r14d, 0xfffff8f0
je 0x14001d976
cmp r14d, 0xfffffc0d
jne 0x14001d958
mov edi, 0x8007000e
jmp 0x14001d982
mov eax, r14d
mov ecx, 0xe5e0000
cdq
xor eax, edx
sub eax, edx
movzx edi, ax
mov eax, r14d
and eax, 0x8e5e0000
or edi, eax
or edi, ecx
jmp 0x14001d982
mov ecx, 0x70
call fcn.140002f1c
mov edi, eax
mov dword [rbp - 0x11], edi
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d71c
test byte [r10 + 0x1c], 1
je 0x14001d71c
cmp byte [r10 + 0x19], 2
jb 0x14001d71c
mov edx, 0x5f
jmp 0x14001d6fc
mov eax, r14d
mov ecx, 0xe5e0000
cdq
xor eax, edx
sub eax, edx
movzx edi, ax
mov eax, r14d
and eax, 0x80000000
or eax, ecx
or edi, eax
jmp 0x14001d9df
mov ecx, 0x70
call fcn.140002f1c
mov edi, eax
mov dword [rbp - 0x11], edi
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001d71c
test byte [r10 + 0x1c], 1
je 0x14001d71c
cmp byte [r10 + 0x19], 2
jb 0x14001d71c
mov r9, qword [r8 + 0x70]
mov edx, 0x64
jmp 0x14001d704
test rbx, rbx
je 0x14001da2e
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
mov r8, qword [rsi + 0x28]
mov eax, dword [r8 + 0x60]
mov rdx, qword [rsi + 0x18]
sub eax, edi
mov rcx, qword [rsi + 8]
cmp eax, 1
jbe 0x14001da62
mov bl, byte [rbp - 0x20]
test bl, bl
je 0x14001da59
xor r8d, r8d
call qword [sym.imp.ESENT.dll_JetSetCurrentIndexW]
nop dword [rax + rax]
jmp 0x14001da78
lea r8, str.ByFileIdOffset
jmp 0x14001da4b
lea r8, str.ByFileId
call qword [sym.imp.ESENT.dll_JetSetCurrentIndexW]
nop dword [rax + rax]
mov bl, byte [rbp - 0x20]
mov r8d, eax
test eax, eax
je 0x14001db19
cmp eax, 0xfffffdef
je 0x14001dac4
cmp eax, 0xfffffbbc
je 0x14001dac4
cmp eax, 0xfffff8f0
je 0x14001dac4
cmp eax, 0xfffffc0d
jne 0x14001daa6
mov edi, 0x8007000e
jmp 0x14001dad0
mov eax, r8d
mov ecx, 0xe5e0000
cdq
xor eax, edx
sub eax, edx
movzx edi, ax
mov eax, r8d
and eax, 0x8e5e0000
or edi, eax
or edi, ecx
jmp 0x14001dad0
mov ecx, 0x70
call fcn.140002f1c
mov edi, eax
mov dword [rbp - 0x11], edi
mov r10, qword [0x14004d128]
cmp r10, r12
je 0x14001db10
test byte [r10 + 0x1c], 1
je 0x14001db10
cmp byte [r10 + 0x19], 2
jb 0x14001db10
mov r9, qword [rsi + 0x28]
mov edx, 0x65
mov rcx, qword [r10 + 0x10]
mov dword [rsp + 0x20], r8d
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14001ead4
jmp 0x14001d734
mov bl, byte [rbp - 0x29]
mov r14b, byte [rbp - 0x21]
jmp 0x14001db37
xor edi, edi
mov byte [rsi + 0x21], bl
xor r14b, r14b
mov dword [rbp - 0x11], edi
xor bl, bl
mov byte [rsi], 1
mov byte [rbp - 0x1f], bl
mov byte [rsi + 0x20], dil
mov r10, qword [0x14004d128]
cmp byte [rbp - 0x1f], 0
je 0x14001db84
cmp r10, r12
je 0x14001db69
test byte [r10 + 0x1c], 1
je 0x14001db69
cmp byte [r10 + 0x19], 4
jb 0x14001db69
mov r9, qword [rsi + 0x28]
mov edx, 0x66
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov rdx, qword [rsi + 0x18]
mov rcx, qword [rsi + 8]
call qword [sym.imp.ESENT.dll_JetCloseTable]
nop dword [rax + rax]
mov r10, qword [0x14004d128]
test bl, bl
je 0x14001dbd1
cmp r10, r12
je 0x14001dbb4
test byte [r10 + 0x1c], 1
je 0x14001dbb4
cmp byte [r10 + 0x19], 4
jb 0x14001dbb4
mov r9, qword [rsi + 0x28]
mov edx, 0x67
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov edx, dword [rsi + 0x10]
xor r8d, r8d
mov rcx, qword [rsi + 8]
call qword [sym.imp.ESENT.dll_JetCloseDatabase]
nop dword [rax + rax]
mov r10, qword [0x14004d128]
test r14b, r14b
je 0x14001d058
cmp r10, r12
je 0x14001dc06
test byte [r10 + 0x1c], 1
je 0x14001dc06
cmp byte [r10 + 0x19], 4
jb 0x14001dc06
mov r9, qword [rsi + 0x28]
mov edx, 0x68
mov rcx, qword [r10 + 0x10]
mov r8, r13
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
mov rcx, qword [rsi + 8]
xor edx, edx
call qword [sym.imp.ESENT.dll_JetEndSession]
nop dword [rax + rax]
jmp 0x14001d058