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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc4
mov eax, dword [0x100d2170]
xor eax, esp
mov dword [esp + 0xc0], eax
mov eax, dword [ebp + 0xc]
push ebx
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0x18]
push esi
mov dword [esp + 0x6c], ecx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x80], edx
mov edx, dword [ecx]
push edi
xor edi, edi
cmp byte [edx + 3], 0x34
mov dword [esp + 0x4c], ecx
sete al
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x60], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x38], edi
xor ebx, ebx
mov dword [esp + 0x30], edi
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x1007e002
sub eax, esi
inc eax
mov dword [esp + 0x28], eax
mov eax, dword [ecx + 8]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e016
mov esi, dword [ebp + 0x10]
sub eax, edx
inc eax
mov dword [esp + 0x6c], eax
lea esi, [esi*4 - 8]
call sym.SQLite3Encrypt.dll_sqlite3_initialize
test eax, eax
je 0x1007e03b
xor eax, eax
jmp 0x1007e050
cmp esi, edi
jg 0x1007e043
xor eax, eax
jmp 0x1007e050
mov eax, esi
cdq
push edx
push eax
call fcn.10003d80
add esp, 8
mov dword [esp + 0x54], eax
mov dword [esp + 0x2c], eax
cmp eax, edi
je 0x1007ead4
push esi
push edi
push eax
call fcn.100a6a70
add esp, 0xc
call sym.SQLite3Encrypt.dll_sqlite3_initialize
test eax, eax
jne 0x1007ead4
cmp esi, edi
jle 0x1007ead4
mov eax, esi
cdq
push edx
push eax
call fcn.10003d80
add esp, 8
mov dword [esp + 0x1c], eax
cmp eax, edi
je 0x1007ead0
push esi
push edi
push eax
call fcn.100a6a70
add esp, 0xc
mov dword [esp + 0x64], 3
lea esp, [esp]
mov eax, dword [esp + 0x64]
cmp eax, dword [ebp + 0x10]
jge 0x1007e521
cmp dword [esp + 0x44], 0
mov ecx, dword [esp + 0x4c]
mov esi, dword [ecx + eax*4]
mov dword [esp + 0x78], esi
jne 0x1007e14d
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e0d4
sub eax, edx
cmp eax, 8
jbe 0x1007e14d
push 8
push str.tokenize
push esi
call sym.SQLite3Encrypt.dll_sqlite3_strnicmp
add esp, 0xc
test eax, eax
jne 0x1007e14d
mov al, byte [esi + 8]
test al, al
js 0x1007e14d
movsx edx, al
cmp byte [edx + 0x100bc4f0], 0
jne 0x1007e14d
add esi, 9
push esi
push 0x100bd55c
call sym.SQLite3Encrypt.dll_sqlite3_mprintf
add esp, 8
test eax, eax
jne 0x1007e12c
mov eax, 7
mov dword [esp + 0x10], eax
jmp 0x1007e4a5
push eax
mov eax, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x78]
lea ecx, [esp + 0x4c]
push ecx
push esi
call fcn.10088740
add esp, 0x10
mov dword [esp + 0x10], eax
jmp 0x1007e4a5
cmp dword [esp + 0x60], 0
je 0x1007e479
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x84]
push eax
mov edx, esi
call fcn.1007d7a0
add esp, 8
test eax, eax
je 0x1007e479
mov ebx, dword [esp + 0x34]
mov eax, 0xa
mov ecx, 7
mov dword [esp + 0x88], str.matchinfo
mov dword [esp + 0x8c], 9
mov dword [esp + 0x90], str.prefix
mov dword [esp + 0x94], 6
mov dword [esp + 0x98], str.compress
mov dword [esp + 0x9c], 8
mov dword [esp + 0xa0], str.uncompress
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], str.order
mov dword [esp + 0xac], 5
mov dword [esp + 0xb0], str.content
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], str.languageid
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], str.notindexed
mov dword [esp + 0xc4], eax
test ebx, ebx
jne 0x1007e232
mov dword [esp + 0x10], ecx
jmp 0x1007e4a5
xor edi, edi
lea esi, [esp + 0x8c]
jmp 0x1007e240
mov eax, dword [esi]
cmp dword [esp + 0x80], eax
jne 0x1007e261
mov ecx, dword [esi - 4]
mov edx, dword [esp + 0x78]
push eax
push ecx
push edx
call sym.SQLite3Encrypt.dll_sqlite3_strnicmp
add esp, 0xc
test eax, eax
je 0x1007e26a
inc edi
add esi, 8
cmp edi, 8
jl 0x1007e240
cmp edi, 8
jne 0x1007e29b
mov eax, dword [esp + 0x78]
mov esi, dword [esp + 0x24]
push eax
push str.unrecognized_parameter:__s
call fcn.1007d2d0
add esp, 8
push ebx
mov dword [esp + 0x14], 1
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
cmp edi, 7
ja case.default.0x1007e2a4
jmp dword [edi*4 + 0x1007ee84]
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e2b0
sub eax, edx
cmp eax, 4
jne 0x1007e2d1
push eax
push str.fts3
push ebx
call sym.SQLite3Encrypt.dll_sqlite3_strnicmp
add esp, 0xc
test eax, eax
je 0x1007e2eb
mov esi, dword [esp + 0x24]
push ebx
push str.unrecognized_matchinfo:__s
call fcn.1007d2d0
add esp, 8
mov dword [esp + 0x10], 1
push ebx
mov dword [esp + 0x80], 1
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov ecx, dword [esp + 0x50]
push ecx
call sym.SQLite3Encrypt.dll_sqlite3_free
mov dword [esp + 0x54], ebx
xor ebx, ebx
add esp, 4
push ebx
mov dword [esp + 0x38], ebx
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov edx, dword [esp + 0x40]
push edx
call sym.SQLite3Encrypt.dll_sqlite3_free
mov dword [esp + 0x44], ebx
xor ebx, ebx
add esp, 4
push ebx
mov dword [esp + 0x38], ebx
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov eax, dword [esp + 0x3c]
push eax
call sym.SQLite3Encrypt.dll_sqlite3_free
mov dword [esp + 0x40], ebx
xor ebx, ebx
add esp, 4
push ebx
mov dword [esp + 0x38], ebx
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e378
sub eax, edx
cmp eax, 3
jne 0x1007e399
push eax
push 0x100c1390
push ebx
call sym.SQLite3Encrypt.dll_sqlite3_strnicmp
add esp, 0xc
test eax, eax
je 0x1007e3db
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e3a0
sub eax, edx
cmp eax, 4
jne 0x1007e3c1
push eax
push str.desc
push ebx
call sym.SQLite3Encrypt.dll_sqlite3_strnicmp
add esp, 0xc
test eax, eax
je 0x1007e3db
mov esi, dword [esp + 0x24]
push ebx
push str.unrecognized_order:__s
call fcn.1007d2d0
add esp, 8
mov dword [esp + 0x10], 1
mov al, byte [ebx]
cmp al, 0x64
je 0x1007e3fb
cmp al, 0x44
je 0x1007e3fb
push ebx
mov dword [esp + 0x5c], 0
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
push ebx
mov dword [esp + 0x5c], 1
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov ecx, dword [esp + 0x48]
push ecx
call sym.SQLite3Encrypt.dll_sqlite3_free
mov dword [esp + 0x4c], ebx
xor ebx, ebx
add esp, 4
push ebx
mov dword [esp + 0x38], ebx
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov edx, dword [esp + 0x38]
push edx
call sym.SQLite3Encrypt.dll_sqlite3_free
mov dword [esp + 0x3c], ebx
xor ebx, ebx
add esp, 4
push ebx
mov dword [esp + 0x38], ebx
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + eax*4], ebx
inc eax
xor ebx, ebx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ebx
push ebx
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
jmp 0x1007e4a5
mov eax, esi
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e480
mov ecx, dword [esp + 0x54]
sub eax, edx
mov edx, dword [esp + 0x20]
lea eax, [edx + eax + 1]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14]
mov dword [ecx + eax*4], esi
inc eax
mov dword [esp + 0x14], eax
inc dword [esp + 0x64]
cmp dword [esp + 0x10], 0
je 0x1007e0b0
mov esi, dword [esp + 0x50]
test esi, esi
je 0x1007eaf0
cmp dword [0x100d33d0], 0
je 0x1007eae6
mov eax, dword [0x100d8cc0]
test eax, eax
je 0x1007e4e0
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
add esp, 4
mov edi, 1
sub dword [0x100d8b2c], edi
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007eafa
push eax
call dword [0x100d3430]
add esp, 4
jmp 0x1007eaf5
xor edi, edi
cmp dword [esp + 0x10], edi
jne 0x1007e4b4
mov esi, dword [esp + 0x48]
cmp esi, edi
je 0x1007e5f8
mov edx, dword [esp + 0x40]
push edx
call sym.SQLite3Encrypt.dll_sqlite3_free
mov eax, dword [esp + 0x40]
add esp, 4
push eax
call sym.SQLite3Encrypt.dll_sqlite3_free
add esp, 4
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], edi
cmp dword [esp + 0x14], edi
jne 0x1007e61c
mov ecx, dword [esp + 0x54]
push ecx
call sym.SQLite3Encrypt.dll_sqlite3_free
mov edx, dword [esp + 0x28]
add esp, 4
push edx
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x58]
mov ecx, dword [ecx + 4]
lea edx, [esp + 0x38]
push edx
mov edx, dword [esp + 0x84]
mov eax, esi
mov dword [esp + 0x3c], edi
call fcn.1007dc70
add esp, 0x10
mov dword [esp + 0x10], eax
cmp eax, edi
jne 0x1007e4b4
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x38], edi
je 0x1007e5fc
xor esi, esi
cmp ebx, edi
jle 0x1007e5fc
lea ebx, [ebx]
mov edi, dword [esp + 0x2c]
mov eax, dword [edi + esi*4]
test eax, eax
je 0x1007e5d8
mov ecx, dword [esp + 0x38]
call fcn.10007010
test eax, eax
je 0x1007e5df
inc esi
cmp esi, ebx
jl 0x1007e5c0
jmp 0x1007e5fc
mov eax, esi
cmp esi, ebx
jge 0x1007e5f1
mov edx, dword [edi + eax*4 + 4]
mov dword [edi + eax*4], edx
inc eax
cmp eax, ebx
jl 0x1007e5e5
dec ebx
mov dword [esp + 0x14], ebx
jmp 0x1007e5fc
mov ebx, dword [esp + 0x14]
xor edi, edi
cmp ebx, edi
jne 0x1007e61c
mov eax, dword [esp + 0x2c]
mov dword [eax], str.content
mov dword [esp + 0x20], 8
mov dword [esp + 0x14], 1
cmp dword [esp + 0x44], edi
jne 0x1007e667
push str.simple
push 0x100bd55c
call sym.SQLite3Encrypt.dll_sqlite3_mprintf
add esp, 8
cmp eax, edi
jne 0x1007e63f
mov eax, 7
jmp 0x1007e65b
mov ecx, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x74]
push ecx
lea edx, [esp + 0x4c]
push edx
push str.simple
call fcn.10088740
add esp, 0x10
mov dword [esp + 0x10], eax
cmp eax, edi
jne 0x1007e4b4
mov esi, dword [esp + 0x50]
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x6c]
push ecx
mov eax, esi
call fcn.1007db60
add esp, 8
mov dword [esp + 0x10], eax
cmp eax, 1
jne 0x1007e69f
push esi
mov esi, dword [esp + 0x28]
push str.error_parsing_prefix_parameter:__s
call fcn.1007d2d0
add esp, 8
jmp 0x1007e4b4
cmp eax, edi
jne 0x1007e4b4
mov ebx, dword [esp + 0x68]
mov eax, dword [esp + 0x14]
lea edi, [ebx + ebx*2]
add edi, edi
add edi, edi
add eax, 0x38
add edi, edi
lea esi, [edi + eax*4]
add esi, eax
add esi, dword [esp + 0x6c]
add esi, dword [esp + 0x28]
add esi, dword [esp + 0x20]
call sym.SQLite3Encrypt.dll_sqlite3_initialize
test eax, eax
je 0x1007e6ea
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 7
jmp 0x1007e4b4
test esi, esi
jg 0x1007e703
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 7
jmp 0x1007e4b4
mov eax, esi
cdq
push edx
push eax
call fcn.10003d80
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
jne 0x1007e725
mov dword [esp + 0x10], 7
jmp 0x1007e4b4
mov edx, dword [esp + 0x18]
push esi
push 0
push edx
call fcn.100a6a70
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x20]
mov dword [ecx + 0xc], eax
lea eax, [ecx + 0x118]
mov dword [ecx + 0x18], edx
mov dword [ecx + 0x104], 0
mov dword [ecx + 0x1c], eax
mov edx, dword [esp + 0x50]
mov dword [ecx + 0x24], edx
mov dword [ecx + 0x100], 0x100000
mov ecx, dword [esp + 0x6c]
add esp, 0xc
test ecx, ecx
je 0x1007e784
cmp dword [esp + 0x7c], 0
jne 0x1007e784
mov edx, 1
jmp 0x1007e786
xor edx, edx
mov esi, dword [esp + 0x18]
mov byte [esi + 0xe5], cl
mov byte [esi + 0xe4], cl
mov cl, byte [esp + 0x58]
mov byte [esi + 0xe7], cl
mov ecx, dword [esp + 0x38]
mov byte [esi + 0xe6], dl
mov edx, dword [esp + 0x48]
mov dword [esi + 0x2c], ecx
xor ecx, ecx
mov dword [esi + 0x28], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x5c]
push edi
lea eax, [eax + edx*4]
push ecx
push eax
mov dword [esi + 0x30], 0xff
mov dword [esi + 0xfc], eax
call fcn.100aace0
xor edx, edx
add esp, 0xc
mov dword [esi + 0xf8], ebx
cmp ebx, edx
jle 0x1007e811
xor ecx, ecx
nop
mov eax, dword [esi + 0xfc]
lea eax, [ecx + eax + 4]
add ecx, 0x18
dec ebx
mov word [eax], 0x101
mov dword [eax + 8], edx
mov dword [eax + 4], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
jne 0x1007e7f0
mov ebx, dword [esp + 0x18]
mov esi, dword [ebx + 0xfc]
mov eax, dword [esp + 0x4c]
add esi, edi
mov edi, dword [esp + 0x6c]
mov dword [ebx + 0x20], esi
add esi, dword [esp + 0x14]
push edi
mov dword [ebx + 0x14], esi
mov ecx, dword [eax + 8]
push ecx
push esi
call fcn.100aace0
mov edx, dword [esp + 0x58]
add esi, edi
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [ebx + 0x10], esi
mov eax, dword [edx + 4]
push edi
push eax
push esi
call fcn.100aace0
xor ebx, ebx
add esp, 0xc
add esi, edi
cmp dword [esp + 0x14], ebx
jle 0x1007e8ad
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + ebx*4]
lea ecx, [esp + 0x28]
push ecx
mov dword [esp + 0x2c], 0
call fcn.10088610
mov edi, dword [esp + 0x2c]
add esp, 4
push edi
push eax
push esi
call fcn.100aace0
add esp, 0xc
mov ecx, esi
mov byte [edi + esi], 0
call fcn.1007cf00
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x1c]
mov dword [ecx + ebx*4], esi
inc ebx
lea esi, [edi + esi + 1]
cmp ebx, dword [esp + 0x14]
jl 0x1007e862
cmp dword [esp + 0x14], 0
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x20], 0
jle 0x1007e9c0
mov edx, dword [ebx + 0x1c]
mov eax, dword [esp + 0x20]
mov eax, dword [edx + eax*4]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e8d1
sub eax, edx
xor edi, edi
mov dword [esp + 0x28], eax
cmp dword [esp + 0x30], edi
jle 0x1007e9ad
lea ebx, [ebx]
mov ecx, dword [esp + 0x1c]
mov esi, dword [ecx + edi*4]
test esi, esi
je 0x1007e9a2
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007e904
sub eax, edx
cmp dword [esp + 0x28], eax
jne 0x1007e9a2
mov edx, dword [esp + 0x28]
mov eax, dword [ebx + 0x1c]
mov ecx, dword [esp + 0x20]
push edx
mov edx, dword [eax + ecx*4]
push esi
push edx
call sym.SQLite3Encrypt.dll_sqlite3_strnicmp
add esp, 0xc
test eax, eax
jne 0x1007e9a2
mov eax, dword [ebx + 0x20]
mov ecx, dword [esp + 0x20]
mov byte [ecx + eax], 1
cmp dword [0x100d33d0], 0
je 0x1007e98d
mov eax, dword [0x100d8cc0]
test eax, eax
je 0x1007e95b
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
dec dword [0x100d8b2c]
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007e997
push eax
call dword [0x100d3430]
jmp 0x1007e994
push esi
call dword [0x100d33fc]
add esp, 4
mov edx, dword [esp + 0x1c]
mov dword [edx + edi*4], 0
inc edi
cmp edi, dword [esp + 0x30]
jl 0x1007e8f0
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x14]
jl 0x1007e8c4
mov esi, dword [esp + 0x24]
xor edi, edi
cmp dword [esp + 0x30], edi
jle 0x1007e9fd
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + edi*4]
test eax, eax
je 0x1007e9ee
push eax
push str.no_such_column:__s
call fcn.1007d2d0
add esp, 8
mov ecx, 1
inc edi
cmp edi, dword [esp + 0x30]
jl 0x1007e9d0
mov dword [esp + 0x10], ecx
test ecx, ecx
jne 0x1007ea3b
mov edi, dword [esp + 0x40]
xor ecx, ecx
cmp dword [esp + 0x3c], ecx
sete cl
xor edx, edx
test edi, edi
sete dl
cmp edx, ecx
je 0x1007ea3f
mov eax, str.compress
test edi, edi
je 0x1007ea23
mov eax, str.uncompress
push eax
push str.missing__s_parameter_in_fts4_constructor
mov dword [esp + 0x18], 1
call fcn.1007d2d0
add esp, 8
jmp 0x1007ea3f
mov edi, dword [esp + 0x40]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x40]
mov esi, ebx
call fcn.1007d8e0
lea ecx, [esp + 0x14]
add esp, 4
mov dword [ebx + 0xd8], eax
push ecx
mov eax, edi
call fcn.1007da70
add esp, 4
cmp dword [esp + 0x10], 0
mov dword [ebx + 0xdc], eax
jne 0x1007e4b4
mov esi, dword [ebp + 8]
test esi, esi
je 0x1007ea8e
mov edi, dword [esp + 0x18]
call fcn.1007d560
mov dword [esp + 0x10], eax
mov ebx, edi
cmp dword [esp + 0x60], 0
jne 0x1007eaa0
test esi, esi
jne 0x1007eaa0
mov byte [ebx + 0xe5], 2
lea edx, [esp + 0x10]
push edx
call fcn.1007d700
mov eax, dword [ebx + 0xec]
sub eax, 0x23
lea ecx, [esp + 0x14]
add esp, 4
mov dword [ebx + 0xe0], eax
push ecx
mov eax, ebx
call fcn.1007d3e0
add esp, 4
jmp 0x1007e4b4
mov ebx, dword [esp + 0x1c]
mov eax, dword [0x100d8cc0]
mov dword [esp + 0x10], 7
jmp 0x1007ecde
push esi
call dword [0x100d33fc]
add esp, 4
mov edi, 1
mov eax, dword [0x100d8cc0]
mov esi, dword [esp + 0x5c]
test esi, esi
je 0x1007eb5a
cmp dword [0x100d33d0], 0
je 0x1007eb4b
test eax, eax
je 0x1007eb19
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
sub dword [0x100d8b2c], edi
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007eb5a
push eax
call dword [0x100d3430]
jmp 0x1007eb52
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
mov esi, dword [esp + 0x40]
test esi, esi
je 0x1007ebba
cmp dword [0x100d33d0], 0
je 0x1007ebab
test eax, eax
je 0x1007eb79
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
sub dword [0x100d8b2c], edi
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007ebba
push eax
call dword [0x100d3430]
jmp 0x1007ebb2
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x1007ec1a
cmp dword [0x100d33d0], 0
je 0x1007ec0b
test eax, eax
je 0x1007ebd9
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
sub dword [0x100d8b2c], edi
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007ec1a
push eax
call dword [0x100d3430]
jmp 0x1007ec12
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
mov esi, dword [esp + 0x48]
test esi, esi
je 0x1007ec7a
cmp dword [0x100d33d0], 0
je 0x1007ec6b
test eax, eax
je 0x1007ec39
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
sub dword [0x100d8b2c], edi
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007ec7a
push eax
call dword [0x100d3430]
jmp 0x1007ec72
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
mov esi, dword [esp + 0x38]
test esi, esi
je 0x1007ecda
cmp dword [0x100d33d0], 0
je 0x1007eccb
test eax, eax
je 0x1007ec99
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
sub dword [0x100d8b2c], edi
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007ecda
push eax
call dword [0x100d3430]
jmp 0x1007ecd2
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
mov ebx, dword [esp + 0x1c]
xor edi, edi
cmp dword [esp + 0x30], edi
jle 0x1007ed4c
mov esi, dword [ebx + edi*4]
test esi, esi
je 0x1007ed45
cmp dword [0x100d33d0], 0
je 0x1007ed36
test eax, eax
je 0x1007ed04
push eax
call dword [0x100d3428]
add esp, 4
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
dec dword [0x100d8b2c]
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007ed45
push eax
call dword [0x100d3430]
jmp 0x1007ed3d
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
inc edi
cmp edi, dword [esp + 0x30]
jl 0x1007ece6
cmp dword [esp + 0x2c], 0
je 0x1007edb3
cmp dword [0x100d33d0], 0
je 0x1007eda0
test eax, eax
je 0x1007ed6a
push eax
call dword [0x100d3428]
add esp, 4
mov esi, dword [esp + 0x2c]
push esi
call dword [0x100d3404]
sub dword [0x100d8b08], eax
dec dword [0x100d8b2c]
add esp, 4
push esi
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007edb3
push eax
call dword [0x100d3430]
jmp 0x1007edab
mov edx, dword [esp + 0x2c]
push edx
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test ebx, ebx
je 0x1007ee0a
cmp dword [0x100d33d0], 0
je 0x1007ee00
test eax, eax
je 0x1007edce
push eax
call dword [0x100d3428]
add esp, 4
push ebx
call dword [0x100d3404]
sub dword [0x100d8b08], eax
dec dword [0x100d8b2c]
add esp, 4
push ebx
call dword [0x100d33fc]
mov eax, dword [0x100d8cc0]
add esp, 4
test eax, eax
je 0x1007ee0a
push eax
call dword [0x100d3430]
jmp 0x1007ee07
push ebx
call dword [0x100d33fc]
add esp, 4
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
test esi, esi
je 0x1007ee64
test eax, eax
je 0x1007ee3a
push eax
call fcn.1007d040
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.100a3aa6
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x44]
test eax, eax
je 0x1007ee6d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.100a3aa6
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x84]
mov dword [ecx], eax
mov ecx, dword [esp + 0xcc]
pop edi
mov eax, esi
pop esi
pop ebx
xor ecx, esp
call fcn.100a3aa6
mov esp, ebp
pop ebp
ret