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

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rsi
push rdi
push r13
sub rsp, 0x68
mov r13, qword [rcx]
mov rbx, r8
mov rdi, rdx
mov qword [rsp + 0x40], r13
mov rsi, rcx
cmp byte [r13 + 0x63], 0
jne 0x140059ab4
mov r9, qword [rdx + 8]
mov qword [rsp + 0xa0], rbp
xor ebp, ebp
mov qword [rsp + 0x58], r14
test r9, r9
je 0x1400594ca
mov rdx, qword [r13 + 0x20]
mov ecx, ebp
cmp qword [rdx + 0x18], r9
lea rax, [rdx + 0x18]
je 0x1400594bd
inc ecx
lea rax, [rax + 0x20]
cmp qword [rax], r9
jne 0x1400594b2
movsxd rax, ecx
shl rax, 5
mov r9, qword [rax + rdx]
jmp 0x1400594ce
mov r9, qword [rdx + 0x10]
mov r8, qword [rdi + 0x18]
xor edx, edx
mov rcx, rsi
call fcn.14007cb30
mov r14, rax
test rax, rax
je 0x140059aa7
mov rdx, rax
mov rcx, rsi
call fcn.140042cd0
test eax, eax
jne 0x140059aa7
cmp qword [r14 + 0x18], rbp
lea r9, str.view
cmove r9, rbp
cmp dword [r14 + 0x54], ebp
je 0x140059519
lea r9, str.virtual_table
jmp 0x14005951e
test r9, r9
je 0x140059541
mov rax, qword [r14]
lea r8, str.drop_column_from
lea rdx, str.cannot__s__s___s_
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.1400692d0
jmp 0x140059aa7
mov rdx, rbx
mov qword [rsp + 0x60], r12
mov rcx, r13
call fcn.14007d900
mov qword [rsp + 0x38], rax
mov r12, rax
test rax, rax
je 0x140059aa2
mov rdx, rax
mov rcx, r14
call fcn.1400630b0
mov dword [rsp + 0x90], eax
test eax, eax
jns 0x14005958f
mov r8, r12
lea rdx, str.no_such_column:___s_
mov rcx, rsi
call fcn.1400692d0
jmp 0x140059a40
mov qword [rsp + 0x50], r15
movsxd r15, eax
mov rax, qword [r14 + 8]
shl r15, 5
movzx ecx, word [rax + r15 + 0x1c]
test cl, 9
je 0x1400595d6
test cl, 1
lea rax, str.PRIMARY_KEY
lea r8, str.UNIQUE
mov r9, r12
cmovne r8, rax
lea rdx, str.cannot_drop__s_column:___s_
mov rcx, rsi
call fcn.1400692d0
jmp 0x140059a3b
cmp word [r14 + 0x46], 1
jg 0x1400595f5
mov r8, r12
lea rdx, str.cannot_drop_column___s_:_no_other_columns_exist
mov rcx, rsi
call fcn.1400692d0
jmp 0x140059a3b
mov rcx, qword [r14 + 0x70]
xor edx, edx
mov ebp, 0xffff8000
test rcx, rcx
je 0x14005961f
mov rax, qword [r13 + 0x20]
mov ebp, edx
add rax, 0x18
cmp qword [rax], rcx
je 0x14005961f
inc ebp
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x140059614
mov rax, qword [r13 + 0x20]
lea r9, [0x140285030]
mov ebx, edx
mov dword [rsp + 0x20], edx
movsxd rcx, ebp
shl rcx, 5
cmp ebp, 1
sete bl
mov rdi, qword [rcx + rax]
mov r8d, ebx
mov rdx, rdi
mov rcx, rsi
call fcn.140051910
mov r8d, ebx
mov rdx, rdi
mov rcx, rsi
call fcn.140051190
mov rax, qword [r14]
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__sqlite_drop_column__d__sql___d__WHERE__typetable_AND_tbl_name_Q_COLLATE_nocase_
mov qword [rsp + 0x28], rax
mov r9d, ebp
mov eax, dword [rsp + 0x90]
mov r8, rdi
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.14007d9e0
mov r8d, 2
mov edx, ebp
mov rcx, rsi
call fcn.140051450
lea r9, str.after_drop_column
mov dword [rsp + 0x20], 1
mov r8d, ebx
mov rdx, rdi
mov rcx, rsi
call fcn.140051910
cmp dword [rsi + 0x30], 0
jne 0x140059a33
mov rax, qword [r14 + 8]
test byte [rax + r15 + 0x1c], 0x20
jne 0x140059a33
mov rdi, qword [rsi + 0x10]
xor eax, eax
mov ebx, eax
mov r15d, eax
test rdi, rdi
jne 0x1400596fd
cmp qword [rsi + 0xa0], rax
jne 0x1400596f2
mov rax, qword [rsi]
test byte [rax + 0x5c], 8
jne 0x1400596f2
mov byte [rsi + 0x23], 1
mov rcx, rsi
call fcn.1400966b0
mov rdi, rax
mov eax, dword [rsi + 0x34]
mov r8d, ebp
mov r9, r14
mov dword [rsp + 0xa8], eax
mov edx, eax
mov dword [rsp + 0x20], 0x63
mov ebp, eax
lea ecx, [rax + 1]
mov dword [rsi + 0x34], ecx
mov rcx, rsi
call fcn.14007dd90
mov r8d, ebp
mov edx, 0x25
mov rcx, rdi
call fcn.1400959f0
inc dword [rsi + 0x38]
test byte [r14 + 0x40], 0x80
mov edx, dword [rsi + 0x38]
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x30], edx
jne 0x14005976c
mov r9d, edx
mov r8d, ebp
mov edx, 0x83
mov rcx, rdi
call fcn.140095a60
movsx ecx, word [r14 + 0x46]
add ecx, dword [rsi + 0x38]
jmp 0x14005982f
mov rbx, qword [r14 + 0x10]
test rbx, rbx
je 0x140059787
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140059787
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140059775
movzx ecx, word [rbx + 0x60]
xor r8d, r8d
add ecx, edx
mov ebp, r8d
mov dword [rsi + 0x38], ecx
movzx eax, word [rbx + 0x5e]
cmp r8w, ax
jae 0x140059824
mov r12d, dword [rsp + 0xa8]
lea r15d, [rdx + 1]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1400597df
lea eax, [r15 + rbp]
mov r9d, ebp
mov r8d, r12d
mov dword [rsp + 0x20], eax
mov edx, 0x5b
mov rcx, rdi
call fcn.1400417b0
xor r8d, r8d
jmp 0x140059812
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x5b
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], ebp
lea rdx, [rax + rcx*8]
lea eax, [r15 + rbp]
mov qword [rdx + 0x10], r8
mov dword [rdx + 0xc], eax
movzx eax, word [rbx + 0x5e]
inc ebp
cmp ebp, eax
jl 0x1400597b0
mov ecx, dword [rsi + 0x38]
mov r12, qword [rsp + 0x38]
mov ebp, dword [rsp + 0xa8]
movzx r15d, ax
lea eax, [rcx + 1]
xor edx, edx
mov dword [rsi + 0x38], eax
mov esi, edx
mov dword [rsp + 0xa8], eax
cmp dx, word [r14 + 0x46]
jge 0x140059997
mov r10d, dword [rsp + 0x90]
lea r11d, [rdx - 1]
mov r12d, dword [rsp + 0x30]
xor r13d, r13d
nop
cmp esi, r10d
je 0x140059977
mov rax, qword [r14 + 8]
movsxd rcx, esi
shl rcx, 5
test byte [rcx + rax + 0x1c], 0x20
jne 0x140059977
test rbx, rbx
je 0x1400598e9
movzx edx, word [rbx + 0x60]
mov ecx, r13d
test edx, edx
je 0x1400598a3
mov r8, qword [rbx + 8]
movsxd rax, ecx
cmp si, word [r8 + rax*2]
je 0x1400598e3
inc ecx
cmp ecx, edx
jl 0x140059893
mov r8d, r11d
test edx, edx
je 0x1400598c1
mov r9, qword [rbx + 8]
mov ecx, r13d
movsxd rax, ecx
cmp r10w, word [r9 + rax*2]
je 0x1400598c5
inc ecx
cmp ecx, edx
jl 0x1400598b1
movzx ecx, r11w
movzx eax, word [rbx + 0x5e]
cmp r8d, eax
jl 0x140059977
movsx eax, cx
mov ecx, r13d
cmp r8d, eax
setg cl
sub r8d, ecx
jmp 0x1400598ec
movsx r8d, cx
jmp 0x1400598aa
mov r8d, r15d
movsx eax, word [r14 + 0x44]
lea edx, [r12 + 1]
add edx, r8d
cmp esi, eax
jne 0x140059951
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x140059925
xor r8d, r8d
mov dword [rsp + 0x20], r13d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x48]
call fcn.1400417b0
jmp 0x140059966
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x48
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
jmp 0x140059974
mov dword [rsp + 0x20], edx
mov r9d, esi
mov rdx, r14
mov r8d, ebp
mov rcx, rdi
call fcn.14006ab80
mov r10d, dword [rsp + 0x90]
mov r11d, 0xffffffff
inc r15d
movsx eax, word [r14 + 0x46]
inc esi
cmp esi, eax
jl 0x140059860
mov r12, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
mov eax, dword [rsp + 0xa8]
mov r14d, dword [rsp + 0x30]
mov r9d, r15d
mov edx, 0x5d
mov dword [rsp + 0x20], eax
mov rcx, rdi
lea esi, [r14 + 1]
mov r8d, esi
call fcn.140095ad0
mov r9d, dword [rsp + 0xa8]
mov r8d, ebp
mov rcx, rdi
test rbx, rbx
je 0x1400599e2
movzx eax, word [rbx + 0x5e]
mov edx, 0x86
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
call fcn.140095c70
jmp 0x1400599f1
mov edx, 0x7c
mov dword [rsp + 0x20], r14d
call fcn.140095ad0
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x140059a11
lea rcx, [rax + rax*2]
mov edx, 2
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov ebx, dword [rsp + 0x34]
mov r8d, ebp
mov edx, 5
mov rcx, rdi
lea r9d, [rbx + 1]
call fcn.140095a60
mov edx, ebx
mov rcx, rdi
call fcn.1400a0c50
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0x50]
cmp qword [r13 + 0x2e0], 0
je 0x140059a57
mov rdx, r12
mov rcx, r13
call fcn.140045520
jmp 0x140059aa2
cmp r12, qword [r13 + 0x1d0]
jae 0x140059a9a
cmp r12, qword [r13 + 0x1c0]
jb 0x140059a7d
mov rax, qword [r13 + 0x1b8]
mov qword [r12], rax
mov qword [r13 + 0x1b8], r12
jmp 0x140059aa2
cmp r12, qword [r13 + 0x1c8]
jb 0x140059a9a
mov rax, qword [r13 + 0x1a8]
mov qword [r12], rax
mov qword [r13 + 0x1a8], r12
jmp 0x140059aa2
mov rcx, r12
call fcn.140015cb0
mov r12, qword [rsp + 0x60]
mov rbp, qword [rsp + 0xa0]
mov r14, qword [rsp + 0x58]
mov rdx, rdi
mov rcx, r13
add rsp, 0x68
pop r13
pop rdi
pop rsi
pop rbx
jmp fcn.14008edb0