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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov r15, qword [rsp + 0xc0]
xor r14d, r14d
mov ebx, r9d
mov rdi, r8
mov rsi, rdx
mov r12, rcx
test rdx, rdx
jne 0x1400b3d3d
cmp byte [rcx], r14b
jne 0x1400b3d33
movzx r10d, byte [rcx + 1]
test r10b, 2
je 0x1400b3d33
mov rax, qword [rcx + 0x30]
cmp rax, r8
jne 0x1400b3ce8
mov rax, r15
mov dword [rax], r14d
xor eax, eax
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
jge 0x1400b3d33
test r10b, 8
jne 0x1400b3db7
inc rax
cmp rax, rdi
jne 0x1400b3d33
xor edx, edx
mov dword [r15], r14d
call fcn.1400b43c0
test eax, eax
jne 0x1400b3d2a
mov rcx, r12
call fcn.1400b2fe0
cmp qword [r12 + 0x30], rdi
jne 0x1400b3d33
xor eax, eax
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp eax, 0x65
jne 0x1400b418e
mov rbp, r14
mov qword [rsp + 0x38], r14
jmp 0x1400b3da2
mov rcx, qword [rdx]
cmp word [rcx + 8], 0xd
ja 0x1400b3d92
mov rax, qword [rdx + 8]
movzx edx, word [rax + 8]
mov rax, qword [rcx + 0x18]
movzx ecx, byte [rax]
test cl, cl
je 0x1400b3d65
test cl, 2
jne 0x1400b3d92
mov al, 0xff
mov cl, 1
jmp 0x1400b3d69
mov al, 1
mov cl, 0xff
mov byte [rsi + 0x14], cl
mov byte [rsi + 0x15], al
test dl, 4
je 0x1400b3d7d
lea rbp, [0x1400c37b0]
jmp 0x1400b3d99
test dl, 0x39
jne 0x1400b3d92
mov rax, qword [rsi]
lea rbp, [0x1400c3980]
cmp qword [rax + 0x20], r14
je 0x1400b3d99
lea rbp, [0x1400c37a0]
mov qword [rsp + 0x38], rbp
mov byte [rsi + 0x13], r14b
mov rcx, r12
call fcn.1400b3890
test eax, eax
je 0x1400b3dcf
cmp eax, 0x10
jne 0x1400b418e
mov dword [r15], 0xffffffff
xor eax, eax
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, 1
mov qword [rsp + 0xa0], r13
sub eax, ebx
mov dword [rsp + 0x30], eax
mov r13, qword [r12 + 0x88]
mov r15d, r14d
mov ecx, eax
movzx r14d, word [r13 + 0x18]
lea rdx, [r13 + 0x60]
dec r14d
mov qword [rsp + 0x40], rdx
mov edi, r14d
lea r8, [r13 + 0x1a]
sar edi, cl
mov word [r12 + 0x56], di
mov qword [rsp + 0x48], r8
test rbp, rbp
jne 0x1400b3f10
mov rbx, qword [rdx]
movzx esi, word [r8]
mov rbp, qword [r13 + 0x68]
nop dword [rax + rax]
lea eax, [rdi + rdi]
movsxd rcx, eax
movzx eax, word [rcx + rbx]
ror ax, 8
movzx ecx, ax
movzx eax, si
and rcx, rax
add rcx, rbp
cmp byte [r13 + 3], 0
je 0x1400b3e74
cmp byte [rcx], 0x80
jb 0x1400b3e71
mov rax, qword [r13 + 0x58]
nop word [rax + rax]
inc rcx
cmp rcx, rax
jae 0x1400b40b9
cmp byte [rcx], 0x80
jae 0x1400b3e60
inc rcx
lea rdx, [rsp + 0x50]
call fcn.14009e4f0
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0xb0]
jge 0x1400b3ed0
lea r15d, [rdi + 1]
cmp r15d, r14d
jle 0x1400b3edb
mov ebx, 0xffffffff
cmp byte [r13 + 8], 0
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
jne 0x1400b4109
movzx eax, word [r13 + 0x18]
cmp r15d, eax
jl 0x1400b4063
movzx ecx, byte [r13 + 9]
mov rax, qword [r13 + 0x50]
mov edx, dword [rcx + rax + 8]
jmp 0x1400b4086
jle 0x1400b3eed
lea r14d, [rdi - 1]
cmp r15d, r14d
jg 0x1400b3ee6
lea edi, [r14 + r15]
sar edi, 1
jmp 0x1400b3e30
mov ebx, 1
jmp 0x1400b3e9b
mov word [r12 + 0x56], di
cmp byte [r13 + 8], 0
jne 0x1400b40ea
mov rdx, qword [rsp + 0x40]
mov r15d, edi
mov r8, qword [rsp + 0x48]
jmp 0x1400b3eb0
lea eax, [rdi + rdi]
movsxd rcx, eax
mov rax, qword [rdx]
movzx edx, word [rcx + rax]
movzx eax, word [r8]
ror dx, 8
movzx edx, dx
and rdx, rax
movzx eax, byte [r13 + 0xb]
add rdx, qword [r13 + 0x68]
movzx ecx, byte [rdx]
cmp ecx, eax
ja 0x1400b3f4a
mov r8, rsi
inc rdx
call rbp
mov ebx, eax
jmp 0x1400b4031
movzx eax, byte [rdx + 1]
test al, al
js 0x1400b3f76
and ecx, 0x7f
movzx eax, al
shl ecx, 7
add ecx, eax
movzx eax, word [r13 + 0xe]
cmp ecx, eax
ja 0x1400b3f76
add rdx, 2
mov r8, rsi
call rbp
mov ebx, eax
jmp 0x1400b4031
movzx eax, byte [r13 + 0xa]
lea r8, [r12 + 0x30]
sub rdx, rax
mov rcx, r13
call qword [r13 + 0x80]
movsxd rbx, dword [r12 + 0x30]
cmp ebx, 2
jl 0x1400b4150
mov rcx, qword [r12 + 0x20]
xor edx, edx
mov eax, ebx
div dword [rcx + 0x34]
cmp eax, dword [rcx + 0x3c]
ja 0x1400b4150
lea eax, [rbx + 0x12]
movsxd rcx, eax
call fcn.140099f70
mov rsi, rax
test rax, rax
je 0x1400b4149
mov r9, rax
mov word [r12 + 0x56], di
mov r8d, ebx
mov dword [rsp + 0x20], 0
xor edx, edx
mov rcx, r12
call fcn.1400b3310
mov ebp, eax
xor eax, eax
mov qword [rbx + rsi], rax
mov qword [rbx + rsi + 8], rax
mov word [rbx + rsi + 0x10], ax
and byte [r12 + 1], 0xfb
test ebp, ebp
jne 0x1400b413f
mov r8, qword [rsp + 0xa8]
xor r9d, r9d
mov rdx, rsi
mov ecx, ebx
call fcn.1400c2ee0
mov rcx, rsi
mov ebx, eax
call fcn.14009a1b0
mov rsi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0x38]
test ebx, ebx
jns 0x1400b403b
lea r15d, [rdi + 1]
jmp 0x1400b4045
jle 0x1400b411f
lea r14d, [rdi - 1]
cmp r15d, r14d
jg 0x1400b3e9b
mov rdx, qword [rsp + 0x40]
lea edi, [r14 + r15]
mov r8, qword [rsp + 0x48]
sar edi, 1
jmp 0x1400b3f10
lea eax, [r15 + r15]
movsxd rcx, eax
mov rax, qword [rdx]
movzx edx, word [rcx + rax]
movzx eax, word [r8]
ror dx, 8
movzx ecx, dx
and rcx, rax
mov rax, qword [r13 + 0x50]
mov edx, dword [rcx + rax]
bswap edx
mov rcx, r12
mov word [r12 + 0x56], r15w
call fcn.1400b3760
mov ebp, eax
test eax, eax
jne 0x1400b417c
mov rsi, qword [rsp + 0xa8]
xor r14d, r14d
mov rbp, qword [rsp + 0x38]
mov eax, dword [rsp + 0x30]
jmp 0x1400b3de2
lea rax, [0x1401e14a4]
mov ebp, 0xb
mov ecx, ebp
mov qword [rsp + 0x20], rax
mov r9d, 0x10fdc
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.14009cbe0
jmp 0x1400b4184
mov rcx, qword [rsp + 0xc0]
or byte [r12 + 1], 2
mov qword [r12 + 0x30], rax
xor eax, eax
mov word [r12 + 0x46], ax
mov dword [rcx], eax
jmp 0x1400b4186
mov rcx, qword [rsp + 0xc0]
xor eax, eax
mov word [r12 + 0x56], di
mov ebp, eax
mov dword [rcx], ebx
jmp 0x1400b417e
mov rcx, qword [rsp + 0xc0]
xor ebp, ebp
mov word [r12 + 0x56], di
mov dword [rcx], ebp
cmp byte [rsi + 0x13], bpl
je 0x1400b417c
mov r9d, 0x11047
jmp 0x1400b4156
mov rcx, rsi
call fcn.14009a1b0
jmp 0x1400b417c
mov ebp, 7
jmp 0x1400b417c
mov r9d, 0x11027
lea rax, [0x1401e14a4]
mov ebp, 0xb
mov ecx, ebp
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.14009cbe0
xor eax, eax
mov word [r12 + 0x46], ax
mov eax, ebp
mov r13, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret