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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rbx, qword [rcx + 0x18]
mov r13, rcx
mov ecx, dword [rcx + 0x40]
xor r14d, r14d
mov r12d, r9d
mov qword [rsp + 0x40], rbx
mov r15, r8
mov dword [rsp + 0x34], ecx
mov rax, qword [rbx + 0x50]
mov rbp, rdx
mov edi, dword [rax + 0x24]
bswap edi
mov dword [rsp + 0x3c], edi
cmp edi, ecx
jb 0x180074ec7
lea rax, [0x1801afe14]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0xefab
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.18006eed0
mov eax, ebx
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret
mov qword [rsp + 0xb8], rsi
test edi, edi
je 0x180075718
movzx eax, byte [rsp + 0xc0]
xor r15b, r15b
mov ebp, dword [rsp + 0x34]
mov ecx, 1
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x38], r14d
cmp al, cl
jne 0x180074f2b
cmp r12d, ebp
ja 0x180074f3a
xor r9d, r9d
lea r8, [rsp + 0xa0]
mov edx, r12d
mov rcx, r13
call fcn.1800e1240
test eax, eax
jne 0x180075871
cmp byte [rsp + 0xa0], 2
jne 0x180074f3a
mov r15b, 1
jmp 0x180074f35
cmp al, 2
movzx r15d, r15b
cmove r15d, ecx
mov dword [rsp + 0x30], r15d
mov rcx, qword [rbx + 0x70]
mov rdx, qword [rcx + 0x20]
mov eax, dword [rdx + 0x30]
test eax, eax
jne 0x180075871
test byte [rcx + 0x2c], 4
je 0x180074f6b
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x180074f6b
cmp dword [rdx + 0x80], r14d
je 0x180074f8d
call fcn.18014be20
jmp 0x180074f85
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x180074f80
call fcn.1800dca40
jmp 0x180074f85
call fcn.1800ddcd0
test eax, eax
jne 0x180075871
mov rax, qword [rbx + 0x50]
lea ecx, [rdi - 1]
bswap ecx
mov dword [rax + 0x24], ecx
nop dword [rax]
mov qword [rsp + 0xa0], r14
mov rsi, r14
test r14, r14
je 0x180074fb8
mov rax, qword [r14 + 0x50]
mov edi, dword [rax]
jmp 0x180074fbf
mov rax, qword [rbx + 0x50]
mov edi, dword [rax + 0x20]
bswap edi
cmp edi, ebp
ja 0x1800756d5
mov ecx, dword [rsp + 0x38]
mov eax, ecx
inc ecx
mov dword [rsp + 0x38], ecx
cmp eax, dword [rsp + 0x3c]
ja 0x1800756d5
mov rcx, qword [r13]
lea r8, [rsp + 0x48]
xor r9d, r9d
mov edx, edi
call fcn.18011f2d0
mov ebx, eax
test eax, eax
jne 0x180075701
mov rcx, qword [rsp + 0x48]
mov r14, qword [rcx + 0x10]
cmp edi, dword [r14 + 0x88]
je 0x180075036
mov rax, qword [rcx + 8]
mov qword [r14 + 0x50], rax
xor eax, eax
cmp edi, 1
mov qword [r14 + 0x70], rcx
mov ecx, 0x64
mov qword [r14 + 0x48], r13
cmove eax, ecx
mov dword [r14 + 0x88], edi
mov byte [r14 + 5], al
mov rcx, qword [r14 + 0x70]
cmp word [rcx + 0x2e], 1
jg 0x1800756c8
mov byte [r14], 0
xor ebx, ebx
mov rsi, qword [r14 + 0x50]
mov ebp, dword [rsi + 4]
bswap ebp
test ebp, ebp
jne 0x1800750e9
test r15b, r15b
jne 0x1800750e9
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x1800756b0
test byte [rcx + 0x2c], 4
je 0x180075095
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x180075095
cmp dword [rdx + 0x80], ebx
je 0x180075091
call fcn.18014be20
jmp 0x1800750af
xor ebx, ebx
jmp 0x1800750b9
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x1800750aa
call fcn.1800dca40
jmp 0x1800750af
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
jne 0x1800756b0
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0xa8]
mov dword [rax], edi
mov rax, qword [r14 + 0x50]
mov rcx, qword [rcx + 0x50]
mov eax, dword [rax]
mov dword [rcx + 0x20], eax
mov qword [rbp], r14
xor r14d, r14d
jmp 0x18007562b
mov eax, dword [r13 + 0x38]
shr eax, 2
sub eax, 2
cmp ebp, eax
ja 0x180075684
test r15b, r15b
je 0x1800753f8
cmp r12d, edi
je 0x180075122
movzx r10d, byte [rsp + 0xc0]
jbe 0x180075401
cmp r10b, 2
jne 0x180075401
mov rax, qword [rsp + 0xb0]
xor r15b, r15b
mov dword [rsp + 0x30], r15d
mov dword [rax], edi
mov rax, qword [rsp + 0xa8]
mov qword [rax], r14
mov rcx, qword [r14 + 0x70]
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x1800756b0
test byte [rcx + 0x2c], 4
je 0x180075173
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x180075173
cmp dword [rdx + 0x80], ebx
je 0x18007516f
call fcn.18014be20
jmp 0x18007518d
xor ebx, ebx
jmp 0x180075197
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x180075188
call fcn.1800dca40
jmp 0x18007518d
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
jne 0x1800756b0
test ebp, ebp
jne 0x180075244
mov rsi, qword [rsp + 0xa0]
test rsi, rsi
jne 0x1800751c6
mov rax, qword [r14 + 0x50]
xor r14d, r14d
mov rcx, qword [rsp + 0x40]
mov eax, dword [rax]
mov rcx, qword [rcx + 0x50]
mov dword [rcx + 0x20], eax
jmp 0x18007562b
mov rcx, qword [rsi + 0x70]
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x1800756b8
test byte [rcx + 0x2c], 4
je 0x18007520c
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x18007520c
cmp dword [rdx + 0x80], ebx
je 0x1800751f6
call fcn.18014be20
jmp 0x180075226
mov rax, qword [r14 + 0x50]
xor ebx, ebx
mov rcx, qword [rsi + 0x50]
xor r14d, r14d
mov eax, dword [rax]
mov dword [rcx], eax
jmp 0x18007562b
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x180075221
call fcn.1800dca40
jmp 0x180075226
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
jne 0x1800756b8
mov rax, qword [r14 + 0x50]
xor r14d, r14d
mov rcx, qword [rsi + 0x50]
mov eax, dword [rax]
mov dword [rcx], eax
jmp 0x18007562b
mov rax, qword [r14 + 0x50]
mov r15d, dword [rax + 8]
mov esi, r15d
bswap esi
cmp esi, dword [rsp + 0x34]
ja 0x18007566e
mov rcx, qword [r13]
lea r8, [rsp + 0x50]
xor r9d, r9d
mov edx, esi
call fcn.18011f2d0
mov ebx, eax
test eax, eax
jne 0x1800756b0
mov rcx, qword [rsp + 0x50]
mov rdi, qword [rcx + 0x10]
cmp esi, dword [rdi + 0x88]
je 0x1800752af
mov rax, qword [rcx + 8]
mov qword [rdi + 0x50], rax
xor eax, eax
cmp esi, 1
mov qword [rdi + 0x70], rcx
mov ecx, 0x64
mov qword [rdi + 0x48], r13
cmove eax, ecx
mov dword [rdi + 0x88], esi
mov byte [rdi + 5], al
mov rcx, qword [rdi + 0x70]
cmp word [rcx + 0x2e], 1
jg 0x180075661
mov byte [rdi], 0
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x180075656
test byte [rcx + 0x2c], 4
je 0x1800752f1
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x1800752f1
cmp dword [rdx + 0x80], ebx
je 0x1800752ed
call fcn.18014be20
jmp 0x18007530b
xor ebx, ebx
jmp 0x180075315
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x180075306
call fcn.1800dca40
jmp 0x18007530b
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
jne 0x180075656
mov rax, qword [r14 + 0x50]
lea r8d, [rbp*4 - 4]
mov rcx, qword [rdi + 0x50]
mov eax, dword [rax]
mov dword [rcx], eax
lea ecx, [rbp - 1]
mov rax, qword [rdi + 0x50]
bswap ecx
mov dword [rax + 4], ecx
mov rdx, qword [r14 + 0x50]
mov rcx, qword [rdi + 0x50]
add rdx, 0xc
add rcx, 8
call fcn.1801625a0
mov rcx, qword [rdi + 0x70]
call fcn.180120c90
mov rsi, qword [rsp + 0xa0]
test rsi, rsi
jne 0x18007537a
mov rcx, qword [rsp + 0x40]
xor r14d, r14d
mov rax, qword [rcx + 0x50]
mov dword [rax + 0x20], r15d
mov r15d, dword [rsp + 0x30]
jmp 0x18007562b
mov rcx, qword [rsi + 0x70]
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x1800756b8
test byte [rcx + 0x2c], 4
je 0x1800753c0
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x1800753c0
cmp dword [rdx + 0x80], ebx
je 0x1800753aa
call fcn.18014be20
jmp 0x1800753da
mov rax, qword [rsi + 0x50]
xor ebx, ebx
xor r14d, r14d
mov dword [rax], r15d
mov r15d, dword [rsp + 0x30]
jmp 0x18007562b
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x1800753d5
call fcn.1800dca40
jmp 0x1800753da
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
jne 0x1800756b8
mov rax, qword [rsi + 0x50]
xor r14d, r14d
mov dword [rax], r15d
mov r15d, dword [rsp + 0x30]
jmp 0x18007562b
movzx r10d, byte [rsp + 0xc0]
test ebp, ebp
je 0x18007562b
xor edi, edi
test r12d, r12d
je 0x1800754b0
cmp r10b, 2
jne 0x18007543d
xor edx, edx
nop dword [rax]
lea eax, [rdx*4 + 8]
mov eax, dword [rax + rsi]
bswap eax
cmp eax, r12d
jbe 0x180075439
inc edx
cmp edx, ebp
jb 0x180075420
jmp 0x1800754b0
mov edi, edx
jmp 0x1800754b0
mov r8d, dword [rsi + 8]
bswap r8d
sub r8d, r12d
jns 0x18007545d
cmp r8d, 0x80000000
jne 0x18007545a
mov r8d, 0x7fffffff
jmp 0x18007545d
neg r8d
mov r9d, 1
cmp ebp, r9d
jbe 0x1800754b0
nop dword [rax + rax]
lea eax, [r9*4 + 8]
mov edx, dword [rax + rsi]
bswap edx
sub edx, r12d
jns 0x180075493
cmp edx, 0x80000000
jne 0x180075491
mov edx, 0x7fffffff
jmp 0x180075493
neg edx
cmp edx, r8d
mov eax, r9d
cmovge eax, edi
inc r9d
cmp edx, r8d
mov edi, eax
cmovge edx, r8d
mov r8d, edx
cmp r9d, ebp
jb 0x180075470
lea r15d, [rdi*4 + 8]
add r15, rsi
mov eax, dword [r15]
bswap eax
cmp eax, dword [rsp + 0x34]
ja 0x18007567c
cmp byte [rsp + 0x30], bl
je 0x1800754e5
cmp eax, r12d
je 0x1800754e5
jae 0x180075626
cmp r10b, 2
jne 0x180075626
mov r8, qword [rsp + 0xb0]
mov dword [r8], eax
mov rcx, qword [r14 + 0x70]
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x1800756b0
test byte [rcx + 0x2c], 4
je 0x180075520
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x180075520
cmp dword [rdx + 0x80], ebx
je 0x18007554c
call fcn.18014be20
jmp 0x18007553a
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x180075535
call fcn.1800dca40
jmp 0x18007553a
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
jne 0x1800756b0
mov r8, qword [rsp + 0xb0]
lea edx, [rbp - 1]
cmp edi, edx
jae 0x180075560
lea eax, [rbp*4 + 4]
mov eax, dword [rax + rsi]
mov dword [r15], eax
bswap edx
mov dword [rsi + 4], edx
mov rcx, qword [r13 + 0x60]
mov ebx, dword [r8]
test rcx, rcx
je 0x180075585
cmp ebx, dword [rcx]
ja 0x180075580
mov edx, ebx
call fcn.1800ef9e0
test eax, eax
je 0x180075585
xor r9d, r9d
jmp 0x18007558b
mov r9d, 1
mov rbp, qword [rsp + 0xa8]
mov edx, ebx
mov r8, rbp
mov rcx, r13
call fcn.18007b040
mov ebx, eax
test eax, eax
jne 0x18007561c
mov rax, qword [rbp]
mov rcx, qword [rax + 0x70]
mov rdx, qword [rcx + 0x20]
mov ebx, dword [rdx + 0x30]
test ebx, ebx
jne 0x180075602
test byte [rcx + 0x2c], 4
je 0x1800755e2
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x1800755e2
cmp dword [rdx + 0x80], ebx
je 0x1800755d6
call fcn.18014be20
jmp 0x1800755fc
xor ebx, ebx
xor r15b, r15b
mov dword [rsp + 0x30], r15d
jmp 0x18007562b
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x1800755f7
call fcn.1800dca40
jmp 0x1800755fc
call fcn.1800ddcd0
mov ebx, eax
test eax, eax
je 0x18007561c
mov rcx, qword [rbp]
test rcx, rcx
je 0x180075614
mov rcx, qword [rcx + 0x70]
call fcn.180120c90
mov qword [rbp], 0
xor r15b, r15b
mov dword [rsp + 0x30], r15d
jmp 0x18007562b
mov r15d, dword [rsp + 0x30]
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x180075641
mov rcx, qword [rcx + 0x70]
call fcn.180120c90
xor esi, esi
test r15b, r15b
je 0x1800756b8
mov rbx, qword [rsp + 0x40]
mov ebp, dword [rsp + 0x34]
jmp 0x180074fa0
mov rcx, qword [rdi + 0x70]
call fcn.180120c90
jmp 0x1800756b0
call fcn.180120c90
mov r9d, 0xe208
jmp 0x18007568a
mov ecx, 0xf022
call fcn.1800f6670
mov ebx, eax
jmp 0x1800756b0
mov r9d, 0xf063
jmp 0x18007568a
mov r9d, 0xf000
lea rax, [0x1801afe14]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.18006eed0
mov rsi, qword [rsp + 0xa0]
test r14, r14
je 0x180075701
mov rcx, qword [r14 + 0x70]
call fcn.180120c90
jmp 0x180075701
call fcn.180120c90
mov r9d, 0xe208
jmp 0x1800756db
mov r9d, 0xefe3
lea rax, [0x1801afe14]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.18006eed0
test rsi, rsi
je 0x18007586f
mov rcx, qword [rsi + 0x70]
call fcn.180120c90
jmp 0x18007586f
mov rcx, qword [rbx + 0x70]
xor esi, esi
cmp byte [r13 + 0x23], sil
sete sil
mov rdx, qword [rcx + 0x20]
mov eax, dword [rdx + 0x30]
test eax, eax
jne 0x180075871
test byte [rcx + 0x2c], 4
je 0x180075753
mov eax, dword [rcx + 0x28]
cmp dword [rdx + 0x20], eax
jb 0x180075753
cmp dword [rdx + 0x80], r14d
je 0x180075775
call fcn.18014be20
jmp 0x18007576d
mov eax, dword [rdx + 0xbc]
cmp dword [rdx + 0xb8], eax
jbe 0x180075768
call fcn.1800dca40
jmp 0x18007576d
call fcn.1800ddcd0
test eax, eax
jne 0x180075871
mov eax, dword [0x1801e5ad0]
xor edx, edx
div dword [r13 + 0x34]
inc dword [r13 + 0x40]
mov r10d, dword [r13 + 0x40]
inc eax
cmp r10d, eax
jne 0x180075797
inc r10d
mov dword [r13 + 0x40], r10d
mov r11d, r10d
cmp byte [r13 + 0x21], r14b
je 0x18007581e
mov edx, r10d
mov rcx, r13
call fcn.1800e1350
cmp eax, r10d
jne 0x18007581e
mov r9d, esi
mov qword [rsp + 0xa0], r14
lea r8, [rsp + 0xa0]
mov edx, r10d
mov rcx, r13
call fcn.18007b040
mov edi, eax
test eax, eax
jne 0x180075889
mov rbx, qword [rsp + 0xa0]
mov rcx, qword [rbx + 0x70]
call fcn.180120d10
mov rcx, qword [rbx + 0x70]
mov edi, eax
call fcn.180120c90
test edi, edi
jne 0x180075889
mov eax, dword [0x1801e5ad0]
xor edx, edx
div dword [r13 + 0x34]
inc dword [r13 + 0x40]
mov r11d, dword [r13 + 0x40]
inc eax
cmp r11d, eax
jne 0x18007581e
inc r11d
mov dword [r13 + 0x40], r11d
mov rax, qword [r13 + 0x18]
mov r9d, esi
bswap r11d
mov r8, rbp
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], r11d
mov rcx, r13
mov edx, dword [r13 + 0x40]
mov dword [r15], edx
call fcn.18007b040
test eax, eax
jne 0x180075871
mov rcx, qword [rbp]
mov rcx, qword [rcx + 0x70]
call fcn.180120d10
mov ebx, eax
test eax, eax
je 0x18007586f
mov rcx, qword [rbp]
test rcx, rcx
je 0x18007586b
mov rcx, qword [rcx + 0x70]
call fcn.180120c90
mov qword [rbp], r14
mov eax, ebx
mov rsi, qword [rsp + 0xb8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret
mov eax, edi
jmp 0x180075871