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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x94
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebx]
push edi
xor edi, edi
xor eax, eax
mov dword [esp + 0x30], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x5c], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x18], esi
cmp dword [ebx + 0x44], edi
jne 0x1004a02e
cmp byte [esi + 0x45], al
jne 0x1004a02e
mov eax, dword [ebp + 0xc]
push ebx
call fcn.10049870
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, edi
je 0x1004a028
push edi
push edi
mov edi, eax
push 0x6d
mov edx, edi
mov eax, ebx
call fcn.10065760
mov esi, eax
xor eax, eax
add esp, 0xc
cmp dword [edi + 0xc], eax
mov dword [esp + 0x7c], esi
setne al
mov dword [esp + 0x58], eax
test esi, esi
jne 0x10049c4c
mov ecx, dword [ebx]
test dword [ecx + 0x18], 0x80000
je 0x10049c42
mov eax, dword [edi]
lea edx, [esp + 0x68]
push edx
push eax
mov eax, dword [edi + 0x40]
add eax, 0x38
call fcn.10008530
add esp, 8
test eax, eax
je 0x10049c3c
cmp dword [eax + 8], esi
jne 0x10049c4c
cmp dword [edi + 0x10], 0
jne 0x10049c4c
mov dword [esp + 0x4c], 0
jmp 0x10049c54
mov dword [esp + 0x4c], 1
mov eax, edi
mov edi, ebx
call fcn.10045030
test eax, eax
jne 0x1004a028
xor ecx, ecx
test esi, esi
setne cl
push ecx
mov ecx, dword [esp + 0x18]
call fcn.10049900
add esp, 4
test eax, eax
jne 0x1004a028
mov edi, dword [esp + 0x14]
mov esi, dword [edi + 0x40]
mov ecx, dword [esp + 0x18]
call fcn.10058ea0
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 0x10]
mov edx, dword [edi]
mov dword [esp + 0x1c], eax
add eax, eax
mov eax, dword [ecx + eax*8]
push eax
push 0
push edx
push 9
mov eax, ebx
call fcn.100419d0
add esp, 0x10
mov dword [esp + 0x2c], eax
cmp eax, 1
je 0x1004a028
mov esi, dword [ebx + 0x48]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x38], esi
inc dword [ebx + 0x48]
mov eax, dword [edi + 8]
mov ecx, dword [ebx + 0x48]
xor edx, edx
mov dword [esp + 0x28], esi
mov dword [esp + 0x68], edx
test eax, eax
je 0x10049cf0
inc ecx
mov dword [ebx + 0x48], ecx
mov eax, dword [eax + 0x14]
inc edx
test eax, eax
jne 0x10049ce0
mov dword [esp + 0x68], edx
cmp dword [esp + 0x58], 0
je 0x10049d0d
mov ecx, dword [ebx + 0x1f0]
mov edx, dword [edi]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], ecx
mov dword [ebx + 0x1f0], edx
mov edi, ebx
call fcn.1005cba0
mov dword [esp + 0x10], eax
test eax, eax
je 0x1004a028
cmp byte [ebx + 0x12], 0
jne 0x10049d2a
or dword [eax + 0x60], 4
mov ecx, dword [esp + 0x1c]
push 1
mov eax, ebx
call fcn.100480c0
add esp, 4
cmp dword [esp + 0x58], 0
je 0x10049d5c
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x14]
push esi
push eax
push ecx
push ebx
call fcn.10049990
add esp, 0x10
mov dword [esp + 0x54], esi
mov dword [esp + 0x30], esi
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
xor eax, eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
lea esi, [esp + 0x80]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], edx
call fcn.10037970
test eax, eax
jne 0x1004a028
mov eax, dword [esp + 0x18]
test byte [eax + 0x18], 0x80
je 0x10049de5
inc dword [ebx + 0x4c]
mov ebx, dword [ebx + 0x4c]
mov eax, dword [esp + 0x10]
mov edi, ebx
mov dword [esp + 0x48], ebx
xor ebx, ebx
lea edx, [ebx + 0x16]
call fcn.10024400
mov ebx, dword [ebp + 8]
cmp dword [esp + 0x2c], 0
mov eax, dword [esp + 0x14]
jne 0x10049e6d
cmp dword [ebp + 0x10], 0
jne 0x10049e6d
cmp dword [esp + 0x4c], 0
jne 0x10049e6d
test byte [eax + 0x2a], 0x10
jne 0x10049e6d
mov ecx, dword [eax]
mov edi, dword [eax + 0x1c]
mov ebx, dword [esp + 0x1c]
mov eax, dword [ebp + 8]
push ecx
push 1
call fcn.10041a60
mov esi, dword [esp + 0x1c]
add esp, 8
test byte [esi + 0x2a], 0x20
mov edi, ebx
jne 0x10049e43
mov edx, dword [esi]
mov eax, dword [esi + 0x1c]
mov ecx, dword [esp + 0x10]
push 0xfffffffffffffffe
push edx
push eax
mov eax, dword [esp + 0x54]
push 0x77
mov edx, edi
call fcn.10024690
add esp, 0x10
mov esi, dword [esi + 8]
test esi, esi
je 0x1004a3d7
mov edi, edi
mov ebx, dword [esi + 0x2c]
mov eax, dword [esp + 0x10]
mov edx, 0x77
call fcn.10024400
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x10049e50
jmp 0x1004a3d7
mov ecx, dword [esp + 0x4c]
neg ecx
sbb ecx, ecx
and ecx, 0xffffe000
add ecx, 0x2000
or cx, 0xc
test byte [eax + 0x2a], 0x20
movzx edx, cx
mov dword [esp + 0x2c], edx
jne 0x10049ec0
mov eax, 1
add dword [ebx + 0x4c], eax
mov edi, dword [ebx + 0x4c]
mov dword [esp + 0x50], eax
lea edx, [eax + 0x18]
mov eax, dword [esp + 0x10]
xor ebx, ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x60], edi
call fcn.10024400
mov esi, dword [ebp + 8]
jmp 0x10049f12
call fcn.10042e10
mov esi, eax
movzx ecx, word [esi + 0x32]
mov eax, dword [ebx + 0x4c]
lea edx, [eax + 1]
movsx edi, cx
add eax, edi
mov dword [ebx + 0x4c], eax
mov eax, dword [ebx + 0x48]
mov dword [esp + 0x50], ecx
lea ecx, [eax + 1]
mov dword [ebx + 0x48], ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x34], eax
mov ebx, eax
mov eax, dword [esp + 0x10]
mov edx, 0x39
mov dword [esp + 0x24], esi
call fcn.10024400
mov ecx, esi
mov esi, dword [ebp + 8]
mov dword [esp + 0x38], eax
mov eax, esi
call fcn.10025030
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebp + 0x10]
inc edx
push edx
mov edx, dword [ebp + 0xc]
push eax
push 0
push 0
push ecx
push edx
push esi
call fcn.10073a40
add esp, 0x1c
mov dword [esp + 0x2c], eax
test eax, eax
je 0x1004a028
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x40]
movzx eax, byte [eax + 0x28]
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x18]
test byte [ecx + 0x18], 0x80
mov dword [esp + 0x78], edx
mov dword [esp + 0x1c], eax
je 0x10049f73
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x10]
mov edi, 1
lea edx, [edi + 0x24]
call fcn.10024400
cmp dword [esp + 0x24], 0
je 0x10049fbe
movsx ebx, word [esp + 0x50]
xor edi, edi
test ebx, ebx
jle 0x10049fb4
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x24]
lea eax, [edi + edx]
mov edx, dword [ecx + 4]
mov ecx, dword [esp + 0x28]
push eax
movsx eax, word [edx + edi*2]
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
call fcn.1003b7a0
inc edi
add esp, 0x10
cmp edi, ebx
jl 0x10049f85
mov eax, dword [esp + 0x40]
mov dword [esp + 0x20], eax
jmp 0x10049fe7
mov eax, dword [esi + 0x4c]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
push 0
inc eax
push eax
push ecx
push 0xffffffffffffffff
push edx
mov edi, esi
call fcn.1003b8b0
add esp, 0x14
mov dword [esp + 0x20], eax
cmp eax, dword [esi + 0x4c]
jle 0x10049fe7
mov dword [esi + 0x4c], eax
cmp dword [esp + 0x1c], 0
je 0x1004a0e0
mov ebx, dword [esp + 0x68]
movzx ecx, word [esp + 0x50]
lea eax, [ebx + 2]
cdq
push edx
push eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x4c], ecx
call fcn.10004420
mov edi, eax
add esp, 8
mov dword [esp + 0x5c], edi
test edi, edi
jne 0x1004a089
mov edx, dword [esp + 0x2c]
push edx
call fcn.10074490
add esp, 4
mov esi, dword [esp + 0x18]
xor edi, edi
mov eax, dword [esp + 0x70]
cmp eax, edi
je 0x1004a040
mov ecx, dword [esp + 0x6c]
mov dword [eax + 0x1f0], ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, esi
call fcn.10047860
mov eax, dword [ebp + 0x10]
add esp, 4
push eax
push esi
call fcn.10038a50
mov eax, dword [esp + 0x64]
add esp, 8
cmp eax, edi
je 0x1004a48b
cmp esi, edi
je 0x1004a482
cmp dword [esi + 0x1c8], edi
je 0x1004a457
mov ecx, esi
call fcn.100040f0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 1]
push eax
push 1
push edi
call fcn.100a6a70
add esp, 0xc
cmp dword [esp + 0x74], 0
mov byte [ebx + edi + 1], 0
jl 0x1004a0b0
mov eax, dword [esp + 0x74]
sub eax, dword [esp + 0x28]
mov byte [eax + edi], 0
mov eax, dword [esp + 0x78]
test eax, eax
js 0x1004a0c0
sub eax, dword [esp + 0x28]
mov byte [eax + edi], 0
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x10]
test eax, eax
je 0x1004a0d3
mov ecx, ebx
call fcn.10024e80
mov eax, ebx
call fcn.10024930
mov dword [esp + 0x64], eax
jmp 0x1004a157
cmp dword [esp + 0x24], 0
je 0x1004a1ae
movsx ebx, word [esp + 0x50]
inc dword [esi + 0x4c]
mov edi, dword [esi + 0x4c]
mov esi, dword [esp + 0x24]
push ebx
push ecx
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
mov dword [esp + 0x28], edi
mov dword [esp + 0x4c], 0
call fcn.100509e0
mov edx, dword [esp + 0x48]
mov esi, dword [esp + 0x18]
add esp, 4
push eax
push edx
push 0x31
mov eax, edi
mov edx, ebx
mov ecx, esi
call fcn.10024690
mov ebx, dword [esp + 0x44]
add esp, 0x10
mov edx, 0x6e
mov eax, esi
call fcn.10024400
mov esi, dword [ebp + 8]
mov eax, dword [esp + 0x2c]
push eax
call fcn.10074490
mov edi, dword [esp + 0x60]
mov ebx, dword [esp + 0x14]
add esp, 4
cmp dword [esp + 0x58], 0
jne 0x1004a1d1
cmp dword [esp + 0x1c], 2
mov dword [esp + 0x38], 0
jne 0x1004a178
mov eax, esi
call fcn.10039f30
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x34]
push edx
push edi
push eax
push 8
push 0x37
push ecx
push esi
call fcn.10053b90
add esp, 0x20
cmp dword [esp + 0x1c], 2
jne 0x1004a1d1
mov ecx, dword [esp + 0x38]
mov eax, ebx
call fcn.10024c90
jmp 0x1004a1d8
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x60]
mov eax, dword [esp + 0x10]
mov edx, 0x81
mov dword [esp + 0x44], 1
call fcn.10024400
jmp 0x1004a142
cmp dword [esp + 0x1c], 0
je 0x1004a211
mov edx, dword [esp + 0x14]
test byte [edx + 0x2a], 0x10
jne 0x1004a268
sub edi, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
cmp byte [edi + eax], 0
je 0x1004a268
movsx ecx, word [esp + 0x44]
mov edx, dword [esp + 0x64]
push ecx
push eax
mov eax, dword [esp + 0x28]
push 0x44
mov ecx, ebx
call fcn.100247f0
add esp, 0xc
jmp 0x1004a268
cmp dword [esp + 0x24], 0
je 0x1004a24a
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
mov ebx, 0x6c
call fcn.100243a0
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x10]
mov edx, 0x65
call fcn.10024400
mov ebx, dword [esp + 0x10]
jmp 0x1004a268
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x60]
push edx
push 0
push eax
push 0x82
push ebx
call fcn.100242d0
add esp, 0x14
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
test byte [eax + 0x2a], 0x10
je 0x1004a2da
mov edi, dword [eax + 0x38]
test edi, edi
je 0x1004a28b
mov eax, dword [esp + 0x18]
lea ecx, [ecx]
cmp dword [edi], eax
je 0x1004a28b
mov edi, dword [edi + 0x18]
test edi, edi
jne 0x1004a280
mov ecx, dword [esp + 0x14]
push ecx
mov eax, esi
call fcn.1006a180
mov eax, dword [esp + 0x24]
add esp, 4
push 0xfffffffffffffff6
push edi
push 0
push 0xc
mov edx, 1
mov ecx, ebx
call fcn.10024690
push 2
mov ecx, ebx
call fcn.10024c70
add esp, 0x14
mov ecx, esi
call fcn.10048130
cmp dword [esp + 0x1c], 1
jne 0x1004a32b
cmp dword [esi + 0x1a0], 0
jne 0x1004a332
mov byte [esi + 0x14], 0
jmp 0x1004a332
xor ecx, ecx
cmp byte [esi + 0x12], cl
sete cl
or eax, 0xffffffff
cmp dword [esp + 0x4c], 0
jne 0x1004a2f8
mov edx, dword [esp + 0x78]
cmp edx, dword [esp + 0x30]
je 0x1004a2f8
mov eax, edx
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x48]
push edx
mov edx, dword [esp + 0x5c]
push 0xa
push ecx
mov ecx, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x94]
push edx
mov edx, dword [esp + 0x30]
push eax
push ecx
push edx
push esi
call fcn.1004a4a0
add esp, 0x2c
cmp dword [esp + 0x1c], 0
je 0x1004a350
mov eax, dword [esp + 0x64]
push eax
mov ecx, ebx
call fcn.10024980
mov ecx, dword [esp + 0x30]
add esp, 4
push ecx
call fcn.10074490
add esp, 4
jmp 0x1004a38c
cmp dword [esp + 0x24], 0
je 0x1004a378
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
lea edi, [esi + 1]
mov edx, 7
call fcn.10024400
mov eax, dword [esp + 0x10]
mov ecx, esi
jmp 0x1004a387
mov edi, dword [esp + 0x3c]
mov eax, ebx
call fcn.10024460
mov ecx, edi
mov eax, ebx
call fcn.10024c90
cmp dword [esp + 0x58], 0
jne 0x1004a3d7
mov esi, dword [esp + 0x14]
test byte [esi + 0x2a], 0x10
jne 0x1004a3d7
cmp dword [esp + 0x24], 0
jne 0x1004a3b6
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x10]
mov ebx, 0x3d
call fcn.100243a0
mov esi, dword [esi + 8]
test esi, esi
je 0x1004a3d7
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0x10]
mov ebx, 0x3d
call fcn.100243a0
mov esi, dword [esi + 0x14]
inc edi
test esi, esi
jne 0x1004a3c1
mov esi, dword [ebp + 8]
cmp byte [esi + 0x12], 0
jne 0x1004a3fb
cmp dword [esi + 0x1a4], 0
jne 0x1004a3fb
cmp dword [esi + 0x19c], 0
je 0x1004a3fb
push esi
call fcn.10050f80
add esp, 4
mov edx, dword [esp + 0x18]
test byte [edx + 0x18], 0x80
je 0x1004a450
cmp byte [esi + 0x12], 0
jne 0x1004a450
cmp dword [esi + 0x1a4], 0
jne 0x1004a450
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x48]
mov edi, 1
lea edx, [edi + 0x20]
mov eax, esi
call fcn.10024400
push edi
mov ebx, esi
call fcn.100261b0
add esp, 4
push 0
push str.rows_deleted
push 0
push 0
mov ecx, esi
call fcn.10026290
add esp, 0x10
jmp 0x1004a028
mov esi, edx
jmp 0x1004a02c
cmp eax, dword [esi + 0x120]
jb 0x1004a482
cmp eax, dword [esi + 0x124]
jae 0x1004a482
mov ecx, dword [esi + 0x11c]
mov dword [eax], ecx
dec dword [esi + 0x108]
mov dword [esi + 0x11c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push eax
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret