Function at 0x1401994d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
lea r8, str.dap_global_db_mdbx
mov rbp, rsp
push r15
push r14
push r13
push r12
lea r12, [0x14024e160]
push rdi
push rsi
push rbx
mov rbx, rcx
and rsp, 0xfffffffffffffff0
sub rsp, 0x90
mov rax, qword [0x1403e4450]
mov qword [rbp + 0x18], rdx
mov eax, dword [rax]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x30], 0x40000
test eax, eax
mov eax, 0
cmove r8, rax
lea rax, str.Init_group_table__s__flags:__x_...
xor ecx, ecx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.14005a150
mov rcx, r12
call fcn.140030c20
test eax, eax
jne 0x14019a38a
mov rcx, rbx
call sub.msvcrt.dll_strlen
mov r11, qword [0x1403eb9e8]
mov r8, rax
test r11, r11
je 0x140199800
mov esi, eax
cmp eax, 0xb
jbe 0x14019a019
mov r10d, eax
mov r9, rbx
mov ecx, 0xfeedbeef
mov edi, 0x9e3779b9
mov r14d, 0x9e3779b9
nop dword [rax]
movzx edx, byte [r9 + 5]
movzx eax, byte [r9 + 6]
shl edx, 8
shl eax, 0x10
add edx, eax
movzx eax, byte [r9 + 4]
add edx, eax
movzx eax, byte [r9 + 7]
shl eax, 0x18
add edx, eax
movzx eax, byte [r9 + 9]
add edx, r14d
movzx r14d, byte [r9 + 0xa]
shl eax, 8
shl r14d, 0x10
add eax, r14d
movzx r14d, byte [r9 + 8]
add eax, r14d
movzx r14d, byte [r9 + 0xb]
shl r14d, 0x18
add eax, r14d
movzx r14d, byte [r9 + 2]
add eax, ecx
movzx ecx, byte [r9 + 1]
shl r14d, 0x10
shl ecx, 8
add ecx, r14d
movzx r14d, byte [r9]
add ecx, r14d
movzx r14d, byte [r9 + 3]
shl r14d, 0x18
add ecx, r14d
sub ecx, edx
sub edx, eax
sub ecx, eax
add ecx, edi
mov edi, eax
shr edi, 0xd
xor ecx, edi
mov edi, edx
mov edx, ecx
sub edi, ecx
sub eax, ecx
shl edx, 8
xor edx, edi
sub eax, edx
mov edi, eax
mov eax, edx
shr eax, 0xd
xor eax, edi
sub ecx, edx
sub r10d, 0xc
add r9, 0xc
mov edi, ecx
mov ecx, eax
sub edx, eax
sub edi, eax
shr ecx, 0xc
xor ecx, edi
mov edi, edx
mov edx, ecx
sub edi, ecx
sub eax, ecx
shl edx, 0x10
xor edx, edi
sub eax, edx
sub ecx, edx
mov edi, eax
mov eax, edx
shr eax, 5
xor eax, edi
mov edi, eax
sub ecx, eax
sub edx, eax
shr edi, 3
xor edi, ecx
mov r14d, edi
sub edx, edi
sub eax, edi
shl r14d, 0xa
xor r14d, edx
mov ecx, r14d
sub eax, r14d
shr ecx, 0xf
xor ecx, eax
cmp r10d, 0xb
ja 0x140199588
add ecx, r8d
cmp r10d, 0xb
ja case.0x14019969c.0
lea rdx, [0x1402b1af4]
movsxd rax, dword [rdx + r10*4]
add rax, rdx
jmp rax
movzx eax, byte [r9 + 0xa]
shl eax, 0x18
add ecx, eax
movzx eax, byte [r9 + 9]
shl eax, 0x10
add ecx, eax
movzx eax, byte [r9 + 8]
shl eax, 8
add ecx, eax
movzx eax, byte [r9 + 7]
shl eax, 0x18
add r14d, eax
movzx eax, byte [r9 + 6]
shl eax, 0x10
add r14d, eax
movzx eax, byte [r9 + 5]
shl eax, 8
add r14d, eax
movzx eax, byte [r9 + 4]
add r14d, eax
movzx eax, byte [r9 + 3]
shl eax, 0x18
add edi, eax
movzx eax, byte [r9 + 2]
shl eax, 0x10
add edi, eax
movzx eax, byte [r9 + 1]
shl eax, 8
add edi, eax
movzx eax, byte [r9]
add edi, eax
lea eax, [r14 + rcx]
mov edx, ecx
sub r14d, ecx
sub edi, eax
shr edx, 0xd
xor edx, edi
mov eax, edx
sub r14d, edx
sub ecx, edx
shl eax, 8
xor eax, r14d
mov r9d, eax
sub ecx, eax
sub edx, eax
shr r9d, 0xd
xor r9d, ecx
mov ecx, r9d
sub edx, r9d
sub eax, r9d
shr ecx, 0xc
xor ecx, edx
mov edx, ecx
sub eax, ecx
sub r9d, ecx
shl edx, 0x10
xor edx, eax
mov eax, edx
sub r9d, edx
sub ecx, edx
shr eax, 5
xor eax, r9d
mov r9d, eax
sub ecx, eax
sub edx, eax
shr r9d, 3
xor ecx, r9d
mov edi, ecx
sub edx, ecx
sub eax, ecx
shl edi, 0xa
xor edi, edx
mov rdx, qword [r11 + 0x90]
sub eax, edi
shr edi, 0xf
xor edi, eax
mov eax, dword [rdx + 8]
sub eax, 1
and eax, edi
shl rax, 4
add rax, qword [rdx]
mov r14, qword [rax]
test r14, r14
je 0x140199800
mov rax, qword [rdx + 0x20]
mov r15d, r8d
mov r13, rax
sub r14, rax
neg r13
jmp 0x1401997bf
mov r14, qword [r14 + 0xb0]
test r14, r14
je 0x140199800
add r14, r13
cmp edi, dword [r14 + 0xc4]
jne 0x1401997b0
cmp esi, dword [r14 + 0xc0]
jne 0x1401997b0
mov rcx, qword [r14 + 0xb8]
mov r8, r15
mov rdx, rbx
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1401997b0
mov rcx, r12
call fcn.140030f90
test eax, eax
je 0x140199fcc
jmp 0x14019980c
mov rcx, r12
call fcn.140030f90
test eax, eax
je 0x140199820
mov edx, 0xdc
lea rcx, str._pthread_rwlock_unlock_s_db_ctxs_rwlock_
call fcn.14019b440
nop dword [rax]
mov rcx, rbx
call sub.msvcrt.dll_strlen
mov rdi, rax
cmp rax, 0x80
ja 0x140199fe0
mov edx, 0xc8
mov ecx, 1
call sub.msvcrt.dll_calloc
mov r14, rax
test rax, rax
je 0x14019a3ac
mov qword [rax], rdi
lea rsi, [rax + 8]
mov r8, rdi
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll_memcpy
mov rdx, qword [rbp + 0x18]
lea r9, [rsp + 0x68]
xor r8d, r8d
mov qword [rsp + 0x20], 0
mov rcx, qword [0x1403eb8c8]
mov qword [rsp + 0x68], 0
call fcn.14013e210
mov edi, eax
test eax, eax
jne 0x14019a034
mov rcx, qword [rsp + 0x68]
lea r9, [r14 + 0x8c]
mov r8d, 0x40000
mov rdx, rbx
call fcn.1401354c0
mov edi, eax
test eax, eax
jne 0x14019a076
mov rcx, qword [rsp + 0x68]
mov r9d, 1
lea r8, [rsp + 0x60]
mov edx, dword [r14 + 0x8c]
call fcn.1401354e0
mov rax, qword [r14]
mov dword [rsp + 0x20], 0x10
lea r9, [rsp + 0x80]
mov edx, dword [0x1403eb8c0]
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x70], rsi
add rax, 1
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x88], rax
call fcn.14013b920
mov edi, eax
test eax, eax
je 0x140199974
cmp eax, 0xffff87b1
je 0x140199974
mov ecx, eax
call fcn.1402218c0
mov dword [rsp + 0x28], edi
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x30], rax
lea rax, str.mdbx_put:___d___s
mov r9d, 7
lea r8, str.dap_global_db_mdbx
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov rcx, qword [rsp + 0x68]
call fcn.14013e160
mov edi, eax
test eax, eax
jne 0x14019a22e
mov rcx, qword [rsp + 0x68]
xor edx, edx
call fcn.14013eaa0
mov edi, eax
test eax, eax
jne 0x14019a270
mov rcx, r12
call fcn.140031050
test eax, eax
jne 0x14019a3e4
mov rcx, rbx
call sub.msvcrt.dll_strlen
mov rdi, qword [0x1403eb9e8]
mov r9, rax
test rdi, rdi
je 0x140199b10
mov r15d, eax
cmp eax, 0xb
jbe 0x14019a34b
mov r10d, eax
mov r8, rbx
mov ecx, 0x9e3779b9
mov r13d, 0xfeedbeef
mov r11d, 0x9e3779b9
nop dword [rax + rax]
movzx edx, byte [r8 + 5]
movzx eax, byte [r8 + 6]
shl edx, 8
shl eax, 0x10
add edx, eax
movzx eax, byte [r8 + 4]
add edx, eax
movzx eax, byte [r8 + 7]
shl eax, 0x18
add edx, eax
movzx eax, byte [r8 + 9]
add edx, ecx
movzx ecx, byte [r8 + 0xa]
shl eax, 8
shl ecx, 0x10
add eax, ecx
movzx ecx, byte [r8 + 8]
add eax, ecx
movzx ecx, byte [r8 + 0xb]
shl ecx, 0x18
add eax, ecx
movzx ecx, byte [r8 + 1]
add eax, r13d
movzx r13d, byte [r8 + 2]
shl ecx, 8
shl r13d, 0x10
add ecx, r13d
movzx r13d, byte [r8]
add ecx, r13d
movzx r13d, byte [r8 + 3]
shl r13d, 0x18
add ecx, r13d
sub ecx, edx
sub edx, eax
sub ecx, eax
add ecx, r11d
mov r11d, eax
shr r11d, 0xd
xor ecx, r11d
sub edx, ecx
sub eax, ecx
mov r11d, edx
mov edx, ecx
shl edx, 8
xor edx, r11d
sub eax, edx
mov r11d, eax
mov eax, edx
shr eax, 0xd
xor eax, r11d
sub ecx, edx
sub r10d, 0xc
add r8, 0xc
sub ecx, eax
sub edx, eax
mov r11d, ecx
mov ecx, eax
shr ecx, 0xc
xor ecx, r11d
sub edx, ecx
sub eax, ecx
mov r11d, edx
mov edx, ecx
shl edx, 0x10
xor edx, r11d
sub eax, edx
sub ecx, edx
mov r11d, eax
mov eax, edx
shr eax, 5
xor eax, r11d
mov r11d, eax
sub ecx, eax
sub edx, eax
shr r11d, 3
xor r11d, ecx
mov ecx, r11d
sub edx, r11d
sub eax, r11d
shl ecx, 0xa
xor ecx, edx
mov r13d, ecx
sub eax, ecx
shr r13d, 0xf
xor r13d, eax
cmp r10d, 0xb
ja 0x1401999e0
lea eax, [r13 + r9]
cmp r10d, 0xb
ja case.0x140199b08.0
lea r13, [0x1402b1b24]
movsxd rdx, dword [r13 + r10*4]
add rdx, r13
jmp rdx
mov rcx, rsi
call sub.msvcrt.dll_strlen
mov r10, rax
cmp eax, 0xb
jbe 0x14019a367
mov r9d, eax
mov r8, rsi
mov ecx, 0xfeedbeef
mov ebx, 0x9e3779b9
mov r11d, 0x9e3779b9
nop word [rax + rax]
movzx edx, byte [r8 + 5]
movzx eax, byte [r8 + 6]
shl edx, 8
shl eax, 0x10
add edx, eax
movzx eax, byte [r8 + 4]
add edx, eax
movzx eax, byte [r8 + 7]
shl eax, 0x18
add edx, eax
movzx eax, byte [r8 + 9]
add edx, ebx
movzx ebx, byte [r8 + 0xa]
shl eax, 8
shl ebx, 0x10
add eax, ebx
movzx ebx, byte [r8 + 8]
add eax, ebx
movzx ebx, byte [r8 + 0xb]
shl ebx, 0x18
add eax, ebx
movzx ebx, byte [r8 + 2]
add eax, ecx
movzx ecx, byte [r8 + 1]
shl ebx, 0x10
shl ecx, 8
add ecx, ebx
movzx ebx, byte [r8]
add ecx, ebx
movzx ebx, byte [r8 + 3]
shl ebx, 0x18
add ecx, ebx
sub ecx, edx
sub edx, eax
sub ecx, eax
add ecx, r11d
mov r11d, eax
shr r11d, 0xd
xor r11d, ecx
sub edx, r11d
sub eax, r11d
mov ecx, edx
mov edx, r11d
shl edx, 8
xor edx, ecx
sub eax, edx
mov ecx, eax
mov eax, edx
shr eax, 0xd
xor eax, ecx
sub r11d, edx
sub r9d, 0xc
add r8, 0xc
mov ecx, eax
sub r11d, eax
sub edx, eax
shr ecx, 0xc
xor ecx, r11d
sub edx, ecx
sub eax, ecx
mov r11d, edx
mov edx, ecx
shl edx, 0x10
xor edx, r11d
sub eax, edx
sub ecx, edx
mov r11d, eax
mov eax, edx
shr eax, 5
xor eax, r11d
mov r11d, eax
sub ecx, eax
sub edx, eax
shr r11d, 3
xor r11d, ecx
mov ebx, r11d
sub edx, r11d
sub eax, r11d
shl ebx, 0xa
xor ebx, edx
mov ecx, ebx
sub eax, ebx
shr ecx, 0xf
xor ecx, eax
cmp r9d, 0xb
ja 0x140199b40
add ecx, r10d
cmp r9d, 0xb
ja case.0x140199c5a.0
lea rdx, [0x1402b1b54]
movsxd rax, dword [rdx + r9*4]
add rax, rdx
jmp rax
movzx edx, byte [r8 + 0xa]
shl edx, 0x18
add eax, edx
movzx edx, byte [r8 + 9]
shl edx, 0x10
add eax, edx
movzx edx, byte [r8 + 8]
shl edx, 8
add eax, edx
movzx edx, byte [r8 + 7]
shl edx, 0x18
add ecx, edx
movzx edx, byte [r8 + 6]
shl edx, 0x10
add ecx, edx
movzx edx, byte [r8 + 5]
shl edx, 8
add ecx, edx
movzx edx, byte [r8 + 4]
add ecx, edx
movzx edx, byte [r8 + 3]
shl edx, 0x18
add r11d, edx
movzx edx, byte [r8 + 2]
shl edx, 0x10
add r11d, edx
movzx edx, byte [r8 + 1]
shl edx, 8
add r11d, edx
movzx edx, byte [r8]
add r11d, edx
lea edx, [rcx + rax]
sub ecx, eax
sub r11d, edx
mov edx, eax
shr edx, 0xd
xor edx, r11d
mov r8d, edx
sub ecx, edx
sub eax, edx
shl r8d, 8
xor r8d, ecx
mov ecx, r8d
sub eax, r8d
sub edx, r8d
shr ecx, 0xd
xor eax, ecx
mov ecx, eax
sub edx, eax
sub r8d, eax
shr ecx, 0xc
xor ecx, edx
mov edx, ecx
sub r8d, ecx
sub eax, ecx
shl edx, 0x10
xor edx, r8d
sub eax, edx
sub ecx, edx
mov r8d, eax
mov eax, edx
shr eax, 5
xor eax, r8d
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 3
xor ecx, r8d
mov r10d, ecx
sub edx, ecx
sub eax, ecx
shl r10d, 0xa
xor r10d, edx
mov rdx, qword [rdi + 0x90]
sub eax, r10d
shr r10d, 0xf
xor r10d, eax
mov eax, dword [rdx + 8]
sub eax, 1
and eax, r10d
shl rax, 4
add rax, qword [rdx]
mov r13, qword [rax]
test r13, r13
je 0x140199b10
mov rax, qword [rdx + 0x20]
mov r8d, r9d
mov r11, rax
sub r13, rax
neg r11
jmp 0x140199d93
mov r13, qword [r13 + 0xb0]
test r13, r13
je 0x140199b10
add r13, r11
cmp r10d, dword [r13 + 0xc4]
jne 0x140199d80
cmp r15d, dword [r13 + 0xc0]
jne 0x140199d80
mov rcx, qword [r13 + 0xb8]
mov rdx, rbx
mov qword [rsp + 0x48], r11
mov dword [rsp + 0x54], r10d
mov qword [rsp + 0x58], r8
call sub.msvcrt.dll_memcmp
mov r8, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x54]
test eax, eax
mov r11, qword [rsp + 0x48]
jne 0x140199d80
mov rcx, r12
call fcn.140030f90
test eax, eax
jne 0x14019a39b
mov rcx, r14
mov r14, r13
call sub.msvcrt.dll_free
jmp 0x140199fcc
movzx eax, byte [r8 + 0xa]
shl eax, 0x18
add ecx, eax
movzx eax, byte [r8 + 9]
shl eax, 0x10
add ecx, eax
movzx eax, byte [r8 + 8]
shl eax, 8
add ecx, eax
movzx eax, byte [r8 + 7]
shl eax, 0x18
add ebx, eax
movzx eax, byte [r8 + 6]
shl eax, 0x10
add ebx, eax
movzx eax, byte [r8 + 5]
shl eax, 8
add ebx, eax
movzx eax, byte [r8 + 4]
add ebx, eax
movzx eax, byte [r8 + 3]
shl eax, 0x18
add r11d, eax
movzx eax, byte [r8 + 2]
shl eax, 0x10
add r11d, eax
movzx eax, byte [r8 + 1]
shl eax, 8
add r11d, eax
movzx eax, byte [r8]
add r11d, eax
lea eax, [rbx + rcx]
mov r8d, ecx
sub ebx, ecx
mov qword [r14 + 0xb8], rsi
sub r11d, eax
shr r8d, 0xd
movd xmm0, r10d
xor r8d, r11d
mov edx, r8d
sub ebx, r8d
sub ecx, r8d
shl edx, 8
xor edx, ebx
mov eax, edx
sub ecx, edx
sub r8d, edx
shr eax, 0xd
xor eax, ecx
mov ecx, eax
sub r8d, eax
sub edx, eax
shr ecx, 0xc
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 0x10
xor edx, r8d
sub eax, edx
sub ecx, edx
mov r8d, eax
mov eax, edx
shr eax, 5
xor eax, r8d
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 3
xor ecx, r8d
mov ebx, ecx
sub edx, ecx
sub eax, ecx
shl ebx, 0xa
xor ebx, edx
sub eax, ebx
shr ebx, 0xf
xor ebx, eax
movd xmm1, ebx
punpckldq xmm0, xmm1
movq qword [r14 + 0xc0], xmm0
test rdi, rdi
je 0x14019a2b2
mov rax, qword [rdi + 0x90]
lea r13, [r14 + 0x90]
mov qword [r14 + 0xa0], 0
mov qword [r14 + 0x90], rax
mov rdx, qword [rdi + 0x90]
mov rax, qword [rdx + 0x18]
sub rax, qword [rdx + 0x20]
mov qword [r14 + 0x98], rax
mov rax, qword [rdi + 0x90]
mov rax, qword [rax + 0x18]
mov qword [rax + 0x10], r14
mov rax, qword [rdi + 0x90]
mov qword [rax + 0x18], r13
mov rsi, qword [rdi + 0x90]
mov eax, dword [rsi + 0x10]
add eax, 1
mov dword [rsi + 0x10], eax
mov rdx, qword [rdi + 0x90]
mov eax, dword [rdx + 8]
sub eax, 1
and eax, ebx
shl rax, 4
add rax, qword [rdx]
mov rdx, qword [rax]
add dword [rax + 8], 1
mov qword [r14 + 0xa8], 0
mov qword [r14 + 0xb0], rdx
mov rdx, qword [rax]
test rdx, rdx
je 0x140199f99
mov qword [rdx + 0x18], r13
mov edx, dword [rax + 0xc]
mov qword [rax], r13
lea edx, [rdx + rdx*4 + 5]
add edx, edx
cmp dword [rax + 8], edx
jb 0x140199fbc
mov rdi, qword [r14 + 0x90]
mov ebx, dword [rdi + 0x34]
test ebx, ebx
je 0x14019a0b8
mov rcx, r12
call fcn.140030f90
test eax, eax
jne 0x14019a39b
lea rsp, [rbp - 0x38]
mov rax, r14
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rsp + 0x30], rax
lea rax, str.Group_name__s_is_too_long___zu__lu_
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rbx
mov r9d, 7
lea r8, str.dap_global_db_mdbx
xor r14d, r14d
mov dword [rsp + 0x38], pe_nt_image_headers64
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x140199fcc
mov r10d, eax
mov r9, rbx
mov ecx, 0xfeedbeef
mov edi, 0x9e3779b9
mov r14d, 0x9e3779b9
jmp 0x140199685
mov ecx, eax
xor r14d, r14d
call fcn.1402218c0
mov dword [rsp + 0x28], edi
mov r9d, 8
lea r8, str.dap_global_db_mdbx
mov qword [rsp + 0x30], rax
lea rax, str.mdbx_txn_begin:___d___s
mov edx, 0xf3
lea rcx, str.s_cre_db_ctx_for_group
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x140199fcc
mov ecx, eax
xor r14d, r14d
call fcn.1402218c0
mov dword [rsp + 0x28], edi
mov r9d, 8
lea r8, str.dap_global_db_mdbx
mov qword [rsp + 0x30], rax
lea rax, str.mdbx_dbi_open:___d___s
mov edx, 0xf6
lea rcx, str.s_cre_db_ctx_for_group
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x140199fcc
mov ecx, dword [rdi + 8]
mov edx, 1
shl rcx, 5
call sub.msvcrt.dll_calloc
mov rsi, rax
test rax, rax
je 0x14019a382
mov edx, dword [rdi + 8]
mov eax, dword [rdi + 0x10]
mov ecx, dword [rdi + 0xc]
lea edx, [rdx + rdx - 1]
test edx, eax
setne dl
add ecx, 1
shr eax, cl
movzx edx, dl
add edx, eax
mov dword [rdi + 0x28], edx
mov rax, qword [r14 + 0x90]
mov dword [rax + 0x2c], 0
mov r8, qword [r14 + 0x90]
mov eax, dword [r8 + 8]
test eax, eax
je 0x14019a1d0
xor r10d, r10d
nop dword [rax + rax]
mov edx, r10d
shl rdx, 4
add rdx, qword [r8]
mov rcx, qword [rdx]
test rcx, rcx
jne 0x14019a15a
jmp 0x14019a1c3
mov qword [rdx + 0x18], rcx
mov r8, qword [r14 + 0x90]
mov qword [rax], rcx
test r9, r9
je 0x14019a1bf
mov eax, dword [r8 + 8]
mov rcx, r9
lea eax, [rax + rax - 1]
and eax, dword [rcx + 0x34]
mov r9, qword [rcx + 0x20]
shl rax, 4
add rax, rsi
mov edi, dword [rax + 8]
lea edx, [rdi + 1]
mov dword [rax + 8], edx
cmp edx, dword [r8 + 0x28]
jbe 0x14019a19c
add dword [r8 + 0x2c], 1
mov r8, qword [r14 + 0x90]
mov edx, dword [rax + 0xc]
mov edi, dword [r8 + 0x28]
imul edi, edx
cmp dword [rax + 8], edi
jbe 0x14019a19c
add edx, 1
mov dword [rax + 0xc], edx
mov qword [rcx + 0x18], 0
mov rdx, qword [rax]
mov qword [rcx + 0x20], rdx
test rdx, rdx
jne 0x14019a140
mov qword [rax], rcx
mov r8, qword [r14 + 0x90]
test r9, r9
jne 0x14019a153
mov eax, dword [r8 + 8]
add r10d, 1
cmp r10d, eax
jb 0x14019a120
mov rcx, qword [r8]
call sub.msvcrt.dll_free
mov rax, qword [r14 + 0x90]
shl dword [rax + 8], 1
mov rax, qword [r14 + 0x90]
add dword [rax + 0xc], 1
mov rax, qword [r14 + 0x90]
mov qword [rax], rsi
mov rax, qword [r14 + 0x90]
mov edx, dword [rax + 0x10]
shr edx, 1
cmp dword [rax + 0x2c], edx
jbe 0x14019a20e
mov esi, dword [rax + 0x30]
lea ebx, [rsi + 1]
mov dword [rax + 0x30], ebx
mov rax, qword [r14 + 0x90]
cmp dword [rax + 0x30], 1
jbe 0x140199fbc
mov dword [rax + 0x34], 1
jmp 0x140199fbc
mov ecx, eax
xor r14d, r14d
call fcn.1402218c0
mov dword [rsp + 0x28], edi
mov r9d, 8
lea r8, str.dap_global_db_mdbx
mov qword [rsp + 0x30], rax
lea rax, str.mdbx_txn_abort:___d___s
mov edx, 0x109
lea rcx, str.s_cre_db_ctx_for_group
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x140199fcc
mov ecx, eax
xor r14d, r14d
call fcn.1402218c0
mov dword [rsp + 0x28], edi
mov r9d, 8
lea r8, str.dap_global_db_mdbx
mov qword [rsp + 0x30], rax
lea rax, str.mdbx_txn_commit:___d___s
mov edx, 0x10d
lea rcx, str.s_cre_db_ctx_for_group
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x140199fcc
pxor xmm0, xmm0
mov ecx, 0x40
movups xmmword [r14 + 0x98], xmm0
call sub.msvcrt.dll_malloc
mov qword [r14 + 0x90], rax
mov rsi, rax
test rax, rax
je 0x14019a382
lea r13, [r14 + 0x90]
mov qword [rax + 0x10], 0
mov edx, 1
mov ecx, 0x200
mov qword [rax + 0x28], 0
mov qword [rax + 0x30], 0
mov qword [rax + 0x38], 0
mov qword [rax + 0x18], r13
mov rax, qword [0x1402b2168]
mov qword [rsi + 0x20], 0x90
mov qword [rsi + 8], rax
call sub.msvcrt.dll_calloc
mov dword [rsi + 0x38], 0xa0111fe1
mov qword [rsi], rax
test rax, rax
je 0x14019a382
mov qword [0x1403eb9e8], r14
mov rdi, r14
mov eax, 1
jmp 0x140199f5b
mov r10d, eax
mov r8, rbx
mov ecx, 0x9e3779b9
mov r13d, 0xfeedbeef
mov r11d, 0x9e3779b9
jmp 0x140199aea
mov r9d, eax
mov r8, rsi
mov ecx, 0xfeedbeef
mov ebx, 0x9e3779b9
mov r11d, 0x9e3779b9
jmp 0x140199c3f
or ecx, 0xffffffff
call sub.msvcrt.dll_exit
mov edx, 0xda
lea rcx, str._pthread_rwlock_rdlock_s_db_ctxs_rwlock_
call fcn.14019b440
mov edx, 0x11a
lea rcx, str._pthread_rwlock_unlock_s_db_ctxs_rwlock_
call fcn.14019b440
call qword [sym.imp.msvcrt.dll__errno]
mov r9d, 7
xor edx, edx
xor ecx, ecx
mov eax, dword [rax]
mov qword [rsp + 0x28], rbx
lea r8, str.dap_global_db_mdbx
mov dword [rsp + 0x30], eax
lea rax, str.Cannot_allocate_DB_context_for__s__errno_d
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x140199fcc
mov edx, 0x112
lea rcx, str._pthread_rwlock_wrlock_s_db_ctxs_rwlock_
call fcn.14019b440
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push rbp
mov rbp, rsp
push r13
mov r13, rdx
mov edx, 0x18
push r12
push rdi
push rsi
push rbx
mov rbx, rcx
mov ecx, 1
and rsp, 0xfffffffffffffff0
sub rsp, 0x30
call sub.msvcrt.dll_calloc
test rax, rax
je 0x14019a6e0
mov edx, 0x38
mov ecx, 1
mov r12, rax
call sub.msvcrt.dll_calloc
movq xmm0, rbx
movq xmm1, rax
mov rsi, rax
punpcklqdq xmm0, xmm1
test rax, rax
je 0x14019a6a9
mov qword [rbx + 0x1b8], r12
xor r9d, r9d
mov rcx, r13
lea r8, str.celled
movups xmmword [r12], xmm0
lea rdx, str.none
call fcn.1400be3d0
mov rcx, qword [rbx + 0x10]
mov byte [rsi], al
call fcn.14009ee00
cmp byte [rsi], 0
mov qword [rsi + 0x18], rbx
mov rdi, rax
je 0x14019a690
mov rax, qword [rbx + 0x38]
mov rdx, qword [rdi + 8]
lea rcx, str.chain_gdb._s.chain__016llX.cell__016llX
mov r8, qword [rbx + 8]
mov r9, qword [rax]
call fcn.1400fc480
mov qword [rsi + 0x10], rax
mov rcx, qword [rdi + 8]
mov r9, r12
lea r8, [0x1401b3280]
lea rdx, str.chain_gdb
lea rdi, [0x140094fc0]
call fcn.1400d1f00
mov r8, rbx
lea rdx, [0x140168160]
mov rcx, rbx
call fcn.140078710
lea rcx, [rsi + 0x20]
xor edx, edx
call fcn.14002ee60
lea rcx, [rsi + 0x28]
xor edx, edx
lea rsi, [0x14016f240]
call fcn.1400304a0
lea rax, [0x1401a09b0]
movq xmm0, rdi
lea rdi, [0x140171120]
movq xmm2, rax
lea rax, [fcn.14016d4e0]
mov qword [rbx + 0xb0], rax
lea rax, [0x1401727b0]
punpcklqdq xmm0, xmm2
mov qword [rbx + 0x1a0], rax
lea rax, [0x140171020]
movq xmm3, rax
movups xmmword [rbx + 0xa0], xmm0
movq xmm0, rdi
lea rax, [0x14016f910]
punpcklqdq xmm0, xmm3
lea rdi, [0x1401704a0]
movq xmm4, rax
movups xmmword [rbx + 0x118], xmm0
movq xmm0, rdi
lea rax, [0x140173dd0]
lea rdi, [0x140172540]
punpcklqdq xmm0, xmm4
movq xmm5, rax
lea rax, [0x14016f330]
movups xmmword [rbx + 0x128], xmm0
movq xmm0, rdi
movq xmm1, rax
lea rdi, [0x14016f810]
punpcklqdq xmm0, xmm5
lea rax, [0x1401701c0]
movups xmmword [rbx + 0xc0], xmm0
movq xmm0, rsi
movq xmm2, rax
lea rsi, [0x14016f1b0]
punpcklqdq xmm0, xmm1
lea rax, [0x14016f270]
movups xmmword [rbx + 0xd0], xmm0
movq xmm0, rdi
movq xmm3, rax
lea rdi, [0x14016fd80]
punpcklqdq xmm0, xmm2
lea rax, [0x140172550]
movups xmmword [rbx + 0xe0], xmm0
movq xmm0, rsi
movq xmm4, rax
lea rsi, [0x1401742d0]
punpcklqdq xmm0, xmm3
lea rax, [0x140172730]
movups xmmword [rbx + 0xf0], xmm0
movq xmm0, rdi
movq xmm5, rax
lea rdi, [0x1401729e0]
punpcklqdq xmm0, xmm4
lea rax, [0x140172d20]
movups xmmword [rbx + 0x100], xmm0
movq xmm0, rsi
movq xmm1, rax
xor eax, eax
punpcklqdq xmm0, xmm5
movups xmmword [rbx + 0x180], xmm0
movq xmm0, rdi
punpcklqdq xmm0, xmm1
movups xmmword [rbx + 0x190], xmm0
lea rsp, [rbp - 0x28]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop rbp
ret
mov rdx, qword [rax + 8]
mov r8, qword [rbx + 8]
lea rcx, str.chain_gdb._s.chain__016llX
call fcn.1400fc480
jmp 0x14019a4b8
lea rax, [0x14029ef52]
mov r9d, 8
lea r8, str.dap_chain_cs_none
mov edx, 0xba
mov qword [rsp + 0x20], rax
lea rcx, str.dap_chain_gdb_new
call fcn.14005a150
mov rcx, r12
call sub.msvcrt.dll_free
or eax, 0xffffffff
jmp 0x14019a67a
lea rax, [0x14029ef52]
mov r9d, 8
lea r8, str.dap_chain_cs_none
mov edx, 0xb5
mov qword [rsp + 0x20], rax
lea rcx, str.dap_chain_gdb_new
call fcn.14005a150
or eax, 0xffffffff
jmp 0x14019a67a