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

Disassembly:
sub esp, 0x34
push ebp
mov ebp, dword [esp + 0x3c]
push esi
mov esi, dword [ebp]
push edi
mov dword [esp + 0x10], esi
call fcn.00440080
mov edi, eax
mov dword [ebp + 0xc], edi
test edi, edi
je 0x47329c
push ebx
call fcn.00432ad0
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x4c]
push ebp
lea ecx, [esp + 0x34]
mov dword [ebp + 0x48], 2
call fcn.00441680
mov ebx, eax
add esp, 4
test ebx, ebx
jl 0x47329b
shl eax, 4
add eax, dword [esi + 8]
mov dword [esp + 0x18], eax
cmp ebx, 1
jne 0x47184d
mov eax, ebp
call fcn.0045f630
test eax, eax
jne 0x47329b
mov eax, dword [esp + 0x30]
mov edx, esi
call fcn.0043bc00
mov dword [esp + 0x1c], eax
test eax, eax
je 0x47329b
cmp dword [esp + 0x58], 0
mov eax, dword [esp + 0x54]
je 0x47187f
push eax
push 0x4a57ec
call fcn.0043e590
add esp, 8
jmp 0x471886
mov edx, esi
call fcn.0043bc00
mov ecx, dword [esp + 0x50]
cmp dword [ecx + 4], 0
mov dword [esp + 0x10], eax
jbe 0x47189c
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
jmp 0x47189e
xor eax, eax
mov ecx, dword [esp + 0x1c]
push eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x14]
push eax
push ecx
push 0x13
mov eax, ebp
call fcn.00441440
add esp, 0x10
test eax, eax
jne 0x47327e
mov esi, dword [esp + 0x1c]
mov edx, str.default_cache_size
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x4719a8
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov ecx, ebx
mov edx, edi
call fcn.00432ba0
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x471952
lea eax, [ecx + 1]
mov esi, edi
call fcn.00440430
push 0
push str.cache_size
push 0
push 0
mov ecx, edi
call fcn.00446c40
add dword [ebp + 0x48], 2
push 0x49faa0
push 8
push edi
call fcn.0043a0b0
add esp, 0x1c
mov edx, ebx
mov ecx, edi
mov esi, eax
call fcn.00432af0
lea eax, [esi + 1]
mov ecx, edi
call fcn.00432af0
lea eax, [esi + 6]
mov edx, 0x7d0
mov ecx, edi
call fcn.00432af0
jmp 0x47324b
call fcn.0042e400
call fcn.0042e9d0
mov esi, eax
push 0
mov ecx, ebx
mov eax, ebp
call fcn.0045f790
mov eax, 1
push edi
mov ecx, esi
lea edx, [eax + 6]
call fcn.0043a030
push 1
push 3
push ebx
push 0x25
mov eax, edi
call fcn.00439f90
mov eax, dword [esp + 0x30]
mov edx, dword [eax + 0xc]
mov dword [edx + 0x50], esi
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0x50]
mov eax, dword [eax + 4]
push edx
call fcn.00432080
add esp, 0x1c
jmp 0x47324b
mov edx, str.page_size
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471a1e
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 4]
test ecx, ecx
jne 0x4719ed
test esi, esi
je 0x4719d4
mov eax, esi
call fcn.00432110
jmp 0x4719d6
xor eax, eax
cdq
push edx
push eax
push str.page_size
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
call fcn.0042e400
mov ecx, dword [esp + 0x14]
push 0
push eax
mov dword [ecx + 0x24], eax
push esi
or eax, 0xffffffff
call fcn.00439a10
add esp, 0xc
cmp eax, 7
jne 0x47324b
mov edx, dword [esp + 0x14]
mov byte [edx + 0x1e], 1
jmp 0x47324b
mov edx, str.secure_delete
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471ab1
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 4]
or edi, 0xffffffff
cmp dword [esp + 0x10], 0
mov dword [esp + 0x48], ecx
je 0x471a53
mov ebx, dword [esp + 0x10]
call fcn.004350d0
movzx edi, al
mov edx, dword [esp + 0x50]
cmp dword [edx + 4], 0
jne 0x471a8f
test edi, edi
jl 0x471a8f
mov eax, dword [esp + 0x14]
xor esi, esi
cmp dword [eax + 4], esi
jle 0x471a8f
xor ebx, ebx
mov edi, edi
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 8]
mov ecx, dword [ebx + edx + 4]
mov eax, edi
call fcn.00432170
mov eax, dword [esp + 0x14]
inc esi
add ebx, 0x10
cmp esi, dword [eax + 4]
jl 0x471a70
mov ecx, dword [esp + 0x48]
mov eax, edi
call fcn.00432170
cdq
push edx
push eax
push str.secure_delete
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
mov edx, str.page_count
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x4731bd
mov edx, str.max_page_count
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x4731bd
mov edx, str.locking_mode
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471bb9
mov esi, dword [esp + 0x10]
mov ebp, str.normal
mov dword [esp + 0x48], ebp
call fcn.004350e0
mov ecx, dword [esp + 0x50]
mov edx, eax
mov eax, dword [ecx + 4]
test eax, eax
jne 0x471b55
cmp edx, 0xffffffff
jne 0x471b1b
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + 0x1f]
jmp 0x471b68
test eax, eax
jne 0x471b55
mov esi, dword [esp + 0x14]
mov ebx, 2
cmp dword [esi + 4], ebx
jle 0x471b52
mov ebp, 0x20
mov eax, dword [esi + 8]
mov eax, dword [eax + ebp + 4]
call fcn.00432560
mov ecx, eax
call fcn.00439050
inc ebx
add ebp, 0x10
cmp ebx, dword [esi + 4]
jl 0x471b32
mov ebp, dword [esp + 0x48]
mov byte [esi + 0x1f], dl
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 4]
call fcn.00432560
mov ecx, eax
call fcn.00439050
cmp eax, 1
jne 0x471b72
mov ebp, str.exclusive
mov eax, 1
mov esi, edi
call fcn.00440430
push 0
push str.locking_mode
push 0
push 0
mov ecx, edi
call fcn.00446c40
push 0
push ebp
xor eax, eax
push 0x5e
lea ecx, [eax + 1]
xor edx, edx
call fcn.004400c0
mov eax, 1
push edi
mov ecx, eax
lea edx, [eax + 0xf]
call fcn.0043a030
add esp, 0x20
jmp 0x47324b
mov edx, str.journal_mode
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471cf9
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, 1
mov esi, edi
call fcn.00440430
push 0
push str.journal_mode
push 0
push 0
mov ecx, edi
call fcn.00446c40
add esp, 0x10
cmp dword [esp + 0x10], 0
jne 0x471c0e
mov dword [esp + 0x48], 0xffffffff
jmp 0x471c76
mov ecx, dword [esp + 0x10]
call fcn.0042dae0
mov dword [esp + 0x30], eax
xor eax, eax
xor ebp, ebp
call fcn.004351f0
mov esi, eax
test esi, esi
je 0x471c67
lea ebx, [ebx]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x10]
push edx
push esi
push eax
call fcn.0042dc00
add esp, 0xc
test eax, eax
je 0x471c5f
inc ebp
mov eax, ebp
call fcn.004351f0
mov esi, eax
test esi, esi
jne 0x471c30
mov dword [esp + 0x48], 0xffffffff
jmp 0x471c76
mov dword [esp + 0x48], ebp
test esi, esi
jne 0x471c71
mov dword [esp + 0x48], 0xffffffff
jmp 0x471c76
cmp ebp, 0xffffffff
jne 0x471c89
mov eax, dword [esp + 0x50]
cmp dword [eax + 4], 0
jne 0x471c89
xor ebx, ebx
mov dword [eax + 4], 1
mov ecx, dword [esp + 0x14]
mov esi, dword [ecx + 4]
sub esi, 1
js 0x471ce1
mov ebp, esi
shl ebp, 4
lea ebx, [ebx]
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 8]
cmp dword [eax + ebp + 4], 0
je 0x471cd9
cmp esi, ebx
je 0x471cbc
mov ecx, dword [esp + 0x50]
cmp dword [ecx + 4], 0
jne 0x471cd9
mov ecx, esi
mov edx, edi
call fcn.00432ba0
mov edx, dword [esp + 0x48]
push edx
push 1
push esi
push 0x7e
mov eax, edi
call fcn.00439f90
add esp, 0x10
dec esi
sub ebp, 0x10
test esi, esi
jge 0x471ca0
mov eax, 1
push edi
mov ecx, eax
lea edx, [eax + 0xf]
call fcn.0043a030
add esp, 4
jmp 0x47324b
mov edx, str.journal_size_limit
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471d7c
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 4]
call fcn.00432560
mov ecx, dword [esp + 0x10]
mov esi, eax
or eax, 0xffffffff
mov edx, 0xfffffffe
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], eax
test ecx, ecx
je 0x471d62
lea edx, [esp + 0x3c]
push edx
mov al, 1
mov edx, 0xf4240
call fcn.0042e1c0
mov eax, dword [esp + 0x44]
add esp, 4
cmp eax, 0xffffffff
jg 0x471d5e
jl 0x471d57
mov edx, dword [esp + 0x3c]
cmp edx, 0xffffffff
jae 0x471d62
or edx, 0xffffffff
or eax, edx
jmp 0x471d62
mov edx, dword [esp + 0x3c]
push eax
push edx
call fcn.00439080
push edx
push eax
push str.journal_size_limit
mov eax, ebp
call fcn.00448f60
jmp 0x473248
mov edx, str.auto_vacuum
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471e77
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 4]
mov esi, ebp
mov dword [esp + 0x48], ecx
call fcn.0046bd00
test eax, eax
jne 0x47327e
cmp dword [esp + 0x10], eax
jne 0x471dd8
mov eax, dword [esp + 0x48]
test eax, eax
je 0x471dbf
call fcn.00432210
jmp 0x471dc1
xor eax, eax
cdq
push edx
push eax
push str.auto_vacuum
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
mov esi, dword [esp + 0x10]
call fcn.00435110
mov edx, dword [esp + 0x14]
mov dword [esp + 0x2c], eax
mov byte [edx + 0x20], al
test eax, eax
jl 0x47324b
push eax
mov eax, dword [esp + 0x4c]
call fcn.004321b0
add esp, 4
test eax, eax
jne 0x47324b
mov eax, dword [esp + 0x2c]
cmp eax, 1
je 0x471e1b
cmp eax, 2
jne 0x47324b
push 0x49fac0
push 6
push edi
call fcn.0043a0b0
add esp, 0xc
mov edx, ebx
mov ecx, edi
mov esi, eax
call fcn.00432af0
lea eax, [esi + 1]
mov ecx, edi
call fcn.00432af0
lea ebp, [esi + 4]
lea eax, [esi + 2]
mov edx, ebp
mov ecx, edi
call fcn.00432b00
mov edx, dword [esp + 0x2c]
dec edx
mov eax, ebp
mov ecx, edi
call fcn.00432af0
lea eax, [esi + 5]
mov edx, ebx
mov ecx, edi
call fcn.00432af0
mov ecx, ebx
mov edx, edi
call fcn.00432ba0
jmp 0x47324b
mov edx, str.incremental_vacuum
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471f29
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, dword [esp + 0x10]
test eax, eax
je 0x471ebc
lea ecx, [esp + 0x48]
push ecx
push eax
call fcn.0042e330
add esp, 8
test eax, eax
je 0x471ebc
mov esi, dword [esp + 0x48]
test esi, esi
jg 0x471ec1
mov esi, SysReAllocString
push 0
mov ecx, ebx
mov eax, ebp
call fcn.0045f790
mov eax, 1
push edi
mov ecx, esi
lea edx, [eax + 6]
call fcn.0043a030
push edi
mov eax, ebx
mov ecx, 0x80
call fcn.0043a010
mov esi, eax
mov eax, 1
push edi
lea ecx, [eax + 0xf]
call fcn.0043a010
or eax, 0xffffffff
push edi
lea ecx, [eax + 2]
lea edx, [eax + 0x15]
call fcn.0043a030
mov ecx, 1
push edi
mov eax, esi
lea edx, [ecx + 0x77]
call fcn.0043a030
add esp, 0x18
mov eax, esi
mov ecx, edi
call fcn.00432b40
jmp 0x47324b
mov edx, str.cache_size
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471f9c
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x471f71
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
push str.cache_size
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
call fcn.0042e400
call fcn.0042e9d0
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0xc]
mov dword [edx + 0x50], eax
mov eax, dword [ecx + 0xc]
mov edx, dword [eax + 0x50]
mov eax, dword [ecx + 4]
push edx
call fcn.00432080
add esp, 4
jmp 0x47324b
mov edx, str.temp_store
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x471fdf
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x471fd3
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + 0x1d]
cdq
push edx
push eax
push str.temp_store
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
mov edi, ebp
call fcn.0045f8f0
jmp 0x47324b
mov edx, str.temp_store_directory
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x4720b8
mov esi, dword [esp + 0x10]
test esi, esi
jne 0x472031
cmp dword [0x4b3130], esi
je 0x47324b
lea eax, [esi + 1]
mov esi, edi
call fcn.00440430
push 0
push str.temp_store_directory
push 0
push 0
mov ecx, edi
call fcn.00446c40
mov ecx, dword [0x4b3130]
push 0
push ecx
jmp 0x471b93
cmp byte [esi], 0
je 0x47206c
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
push esi
lea ecx, [esp + 0x4c]
mov edx, 1
call fcn.0042d330
add esp, 4
test eax, eax
jne 0x472058
cmp dword [esp + 0x48], eax
jne 0x47206c
push str.not_a_writable_directory
mov edi, ebp
call fcn.0043e7b0
add esp, 4
jmp 0x47327e
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x1d], 1
ja 0x47207d
mov eax, ebp
call fcn.0045f890
mov edx, dword [0x4b3130]
push edx
call fcn.0042d800
add esp, 4
cmp byte [esi], 0
je 0x4720a9
push esi
push 0x49b31c
call fcn.0043e650
add esp, 8
mov dword [0x4b3130], eax
jmp 0x47324b
mov dword [0x4b3130], 0
jmp 0x47324b
mov edx, str.synchronous
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472132
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
cmp dword [esp + 0x10], eax
jne 0x4720fd
mov eax, dword [esp + 0x18]
movzx eax, byte [eax + 9]
dec eax
cdq
push edx
push eax
push str.synchronous
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x1c], 0
jne 0x47211b
push str.Safety_level_may_not_be_changed_inside_a_transaction
mov edi, ebp
call fcn.0043e7b0
add esp, 4
jmp 0x47324b
mov ebx, dword [esp + 0x10]
call fcn.00435070
mov edx, dword [esp + 0x18]
inc al
mov byte [edx + 9], al
jmp 0x47324b
mov eax, dword [esp + 0x10]
push eax
mov eax, esi
mov ecx, ebp
call fcn.00448fe0
add esp, 4
test eax, eax
jne 0x47324b
mov edx, str.table_info
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472317
cmp dword [esp + 0x10], eax
je 0x472317
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push ecx
push edx
push eax
call fcn.004343f0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x47324b
mov eax, 6
mov esi, edi
mov dword [esp + 0x48], 0
call fcn.00440430
push 0
push 0x4a56ac
push 0
push 0
mov ecx, edi
mov dword [ebp + 0x48], 6
call fcn.00446c40
push 0
push str.name
push 0
push 1
mov ecx, edi
call fcn.00446c40
push 0
push str.type
push 0
push 2
mov ecx, edi
call fcn.00446c40
push 0
push str.notnull
push 0
push 3
mov ecx, edi
call fcn.00446c40
add esp, 0x40
push 0
push str.dflt_value
push 0
push 4
mov ecx, edi
call fcn.00446c40
push 0
push 0x4a568c
push 0
push 5
mov ecx, edi
call fcn.00446c40
push ebx
push ebp
call fcn.00470860
mov esi, dword [ebx + 0xc]
xor ebp, ebp
add esp, 0x28
cmp dword [ebx + 8], ebp
jle 0x47324b
jmp 0x472240
cmp byte [esi + 0x17], 0
je 0x47224f
inc dword [esp + 0x48]
jmp 0x472305
mov ecx, ebp
sub ecx, dword [esp + 0x48]
mov eax, 1
push edi
lea edx, [eax + 6]
call fcn.0043a030
mov ecx, dword [esi]
push 0
push ecx
xor eax, eax
push 0x5e
lea ecx, [eax + 2]
xor edx, edx
call fcn.004400c0
mov eax, dword [esi + 0xc]
add esp, 0x10
test eax, eax
jne 0x472285
mov eax, 0x494702
push 0
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
call fcn.004400c0
xor ecx, ecx
cmp byte [esi + 0x14], cl
mov eax, 4
setne cl
push edi
lea edx, [eax + 3]
call fcn.0043a030
mov eax, dword [esi + 8]
add esp, 0x10
test eax, eax
je 0x4722cc
push 0
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 5]
xor edx, edx
call fcn.004400c0
add esp, 0xc
jmp 0x4722df
mov eax, 5
push edi
xor ecx, ecx
lea edx, [eax + 5]
call fcn.0043a030
add esp, 4
movzx ecx, byte [esi + 0x15]
mov eax, 6
push edi
lea edx, [eax + 1]
call fcn.0043a030
mov eax, 6
push edi
lea ecx, [eax - 5]
lea edx, [eax + 0xa]
call fcn.0043a030
add esp, 8
inc ebp
add esi, 0x18
cmp ebp, dword [ebx + 8]
jl 0x472240
jmp 0x47324b
mov edx, str.index_info
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472426
cmp dword [esp + 0x10], eax
je 0x472426
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x18]
push eax
call fcn.00434480
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x47324b
mov ecx, dword [ebx + 0x10]
mov eax, 3
mov esi, edi
mov dword [esp + 0x48], ecx
call fcn.00440430
push 0
push str.seqno
push 0
push 0
mov ecx, edi
mov dword [ebp + 0x48], 3
call fcn.00446c40
push 0
push 0x4a56ac
push 0
push 1
mov ecx, edi
call fcn.00446c40
push 0
push str.name
push 0
push 2
mov ecx, edi
call fcn.00446c40
xor esi, esi
add esp, 0x30
cmp dword [ebx + 4], esi
jle 0x47324b
mov edx, dword [ebx + 8]
mov ebp, dword [edx + esi*4]
mov eax, 1
push edi
mov ecx, esi
lea edx, [eax + 6]
call fcn.0043a030
mov eax, 2
push edi
mov ecx, ebp
lea edx, [eax + 5]
call fcn.0043a030
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0xc]
lea eax, [ebp + ebp*2]
mov eax, dword [edx + eax*8]
push 0
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
call fcn.004400c0
mov eax, 3
push edi
lea ecx, [eax - 2]
lea edx, [eax + 0xd]
call fcn.0043a030
inc esi
add esp, 0x18
cmp esi, dword [ebx + 4]
jl 0x4723c2
jmp 0x47324b
mov edx, str.index_list
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x47253c
cmp dword [esp + 0x10], eax
je 0x47253c
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push ecx
push edx
push eax
call fcn.004343f0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x47324b
mov edi, ebp
call fcn.004435d0
mov ebx, dword [ebx + 0x10]
mov esi, eax
test ebx, ebx
je 0x47324b
mov eax, 3
mov dword [esp + 0x48], 0
call fcn.00440430
push 0
push 0x4a5668
push 0
push 0
mov ecx, esi
mov dword [ebp + 0x48], 3
call fcn.00446c40
push 0
push str.name
push 0
push 1
mov ecx, esi
call fcn.00446c40
push 0
push str.unique
push 0
push 2
mov ecx, esi
call fcn.00446c40
mov ebp, dword [esp + 0x78]
add esp, 0x30
mov edi, edi
mov eax, 1
push esi
mov ecx, ebp
lea edx, [eax + 6]
call fcn.0043a030
mov ecx, dword [ebx]
push 0
push ecx
xor eax, eax
push 0x5e
lea ecx, [eax + 2]
xor edx, edx
mov edi, esi
call fcn.004400c0
xor ecx, ecx
cmp byte [ebx + 0x18], cl
mov eax, 3
setne cl
push esi
lea edx, [eax + 4]
call fcn.0043a030
mov eax, 3
push esi
lea ecx, [eax - 2]
lea edx, [eax + 0xd]
call fcn.0043a030
mov ebx, dword [ebx + 0x20]
add esp, 0x18
inc ebp
test ebx, ebx
jne 0x4724e0
jmp 0x47324b
mov edx, str.database_list
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472633
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, 3
mov esi, edi
call fcn.00440430
push 0
push 0x4a5668
push 0
push 0
mov ecx, edi
mov dword [ebp + 0x48], 3
call fcn.00446c40
push 0
push str.name
push 0
push 1
mov ecx, edi
call fcn.00446c40
push 0
push str.file
push 0
push 2
mov ecx, edi
call fcn.00446c40
mov edx, dword [esp + 0x44]
xor ebp, ebp
add esp, 0x30
cmp dword [edx + 4], ebp
jle 0x47324b
xor esi, esi
mov ebx, edx
mov edi, edi
mov eax, dword [ebx + 8]
cmp dword [esi + eax + 4], 0
je 0x472625
mov eax, 1
push edi
mov ecx, ebp
lea edx, [eax + 6]
call fcn.0043a030
mov ecx, dword [ebx + 8]
mov edx, dword [esi + ecx]
push 0
push edx
xor eax, eax
push 0x5e
lea ecx, [eax + 2]
xor edx, edx
call fcn.004400c0
mov eax, dword [ebx + 8]
mov eax, dword [esi + eax + 4]
add esp, 0x10
push 0
call fcn.00432570
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
call fcn.004400c0
mov eax, 3
push edi
lea ecx, [eax - 2]
lea edx, [eax + 0xd]
call fcn.0043a030
add esp, 0x10
inc ebp
add esi, 0x10
cmp ebp, dword [ebx + 4]
jl 0x4725c0
jmp 0x47324b
mov edx, str.collation_list
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x4726d7
xor ebx, ebx
lea eax, [ebx + 2]
mov esi, edi
call fcn.00440430
push ebx
push 0x4a5668
push ebx
push ebx
mov ecx, edi
mov dword [ebp + 0x48], 2
call fcn.00446c40
push ebx
push str.name
push ebx
push 1
mov ecx, edi
call fcn.00446c40
mov ecx, dword [esp + 0x34]
mov esi, dword [ecx + 0x1a4]
add esp, 0x20
test esi, esi
je 0x47324b
mov edi, edi
mov ebp, dword [esi + 8]
mov eax, 1
push edi
mov ecx, ebx
lea edx, [eax + 6]
call fcn.0043a030
mov edx, dword [ebp]
push 0
push edx
xor eax, eax
push 0x5e
lea ecx, [eax + 2]
xor edx, edx
inc ebx
call fcn.004400c0
mov eax, 2
push edi
lea ecx, [eax - 1]
lea edx, [eax + 0xe]
call fcn.0043a030
mov esi, dword [esi]
add esp, 0x14
test esi, esi
jne 0x472690
jmp 0x47324b
mov edx, str.foreign_key_list
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x47290e
cmp dword [esp + 0x10], eax
je 0x47290e
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push eax
push ecx
push edx
call fcn.004343f0
mov esi, eax
add esp, 0xc
mov dword [esp + 0x30], esi
test esi, esi
je 0x47324b
mov edi, ebp
call fcn.004435d0
mov ebx, dword [esi + 0x24]
mov edi, eax
test ebx, ebx
je 0x47324b
mov eax, 8
mov esi, edi
mov dword [esp + 0x2c], 0
call fcn.00440430
push 0
push 0x4a5628
push 0
push 0
mov ecx, edi
mov dword [ebp + 0x48], 8
call fcn.00446c40
push 0
push 0x4a5668
push 0
push 1
mov ecx, edi
call fcn.00446c40
push 0
push str.table
push 0
push 2
mov ecx, edi
call fcn.00446c40
push 0
push str.from
push 0
push 3
mov ecx, edi
call fcn.00446c40
add esp, 0x40
push 0
push 0x4a5624
push 0
push 4
mov ecx, edi
call fcn.00446c40
push 0
push str.on_update
push 0
push 5
mov ecx, edi
call fcn.00446c40
push 0
push str.on_delete
push 0
push 6
mov ecx, edi
call fcn.00446c40
push 0
push str.match
push 0
push 7
mov ecx, edi
call fcn.00446c40
add esp, 0x40
mov edi, edi
xor ebp, ebp
cmp dword [ebx + 0x14], ebp
jle 0x4728fa
lea eax, [ebx + 0x24]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x48]
mov al, byte [ebx + 0x19]
mov esi, dword [ecx + 4]
call fcn.004351b0
mov dword [esp + 0x24], eax
mov al, byte [ebx + 0x1a]
call fcn.004351b0
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
mov eax, 1
push edi
lea edx, [eax + 6]
call fcn.0043a030
mov eax, 2
push edi
mov ecx, ebp
lea edx, [eax + 5]
call fcn.0043a030
mov edx, dword [ebx + 8]
push 0
push edx
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
call fcn.004400c0
mov eax, dword [esp + 0x5c]
mov eax, dword [eax]
mov edx, dword [esp + 0x44]
lea ecx, [eax + eax*2]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + ecx*8]
push 0
push ecx
xor eax, eax
push 0x5e
lea ecx, [eax + 4]
xor edx, edx
call fcn.004400c0
push 0
push esi
neg esi
sbb esi, esi
and esi, 0x54
xor eax, eax
add esi, 0xa
push esi
lea ecx, [eax + 5]
xor edx, edx
call fcn.004400c0
mov edx, dword [esp + 0x54]
push 0
push edx
xor eax, eax
push 0x5e
lea ecx, [eax + 6]
xor edx, edx
call fcn.004400c0
mov eax, dword [esp + 0x5c]
push 0
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 7]
xor edx, edx
call fcn.004400c0
add esp, 0x44
push 0
xor eax, eax
push str.NONE
push 0x5e
lea ecx, [eax + 8]
xor edx, edx
call fcn.004400c0
mov eax, 8
push edi
lea ecx, [eax - 7]
lea edx, [eax + 8]
call fcn.0043a030
add esp, 0x10
inc ebp
add dword [esp + 0x48], 8
cmp ebp, dword [ebx + 0x14]
jl 0x472802
mov ebx, dword [ebx + 4]
inc dword [esp + 0x2c]
test ebx, ebx
jne 0x4727f0
jmp 0x47324b
mov edx, str.case_sensitive_like
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472942
cmp dword [esp + 0x10], eax
je 0x47324b
mov ebx, dword [esp + 0x10]
call fcn.004350d0
mov esi, dword [esp + 0x14]
movzx ebx, al
call fcn.00453fd0
jmp 0x47324b
mov edx, str.integrity_check
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x472d4a
mov edx, str.quick_check
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x472d4a
mov edx, str.encoding
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472a64
mov esi, dword [esp + 0x10]
test esi, esi
jne 0x4729eb
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, 1
mov esi, edi
call fcn.00440430
push 0
push str.encoding
push 0
push 0
mov ecx, edi
call fcn.00446c40
mov eax, 1
push edi
xor ecx, ecx
lea edx, [eax + 0x5d]
call fcn.0043a030
mov ecx, dword [ebp]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
movzx ecx, byte [eax + 0x4d]
mov edx, dword [ecx*8 + 0x49fb10]
push edx
push edi
mov ecx, 0xfffffffe
or eax, 0xffffffff
call fcn.0043a2f0
jmp 0x471ba1
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0xc]
movzx eax, word [edx + 0x4e]
test al, 1
je 0x472a05
test al, 4
je 0x47324b
mov edx, dword [str.UTF8]
mov edi, 0x49fb10
test edx, edx
je 0x472a4f
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x472a2b
mov edx, dword [edi + 8]
add edi, 8
test edx, edx
jne 0x472a14
jmp 0x472a4f
mov al, byte [edi + 4]
test al, al
movzx eax, al
jne 0x472a3a
mov eax, 2
mov ecx, dword [ebp]
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0xc]
mov byte [ecx + 0x4d], al
cmp dword [edi], 0
jne 0x47324b
push esi
push str.unsupported_encoding:__s
mov edi, ebp
call fcn.0043e7b0
add esp, 8
jmp 0x47324b
mov edx, str.schema_version
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x472c58
mov edx, str.user_version
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x472c58
mov edx, str.freelist_count
mov ecx, esi
call fcn.0042dbb0
test eax, eax
je 0x472c58
mov edx, str.compile_options
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472b17
xor ebx, ebx
lea eax, [ebx + 1]
mov esi, edi
call fcn.00440430
push ebx
push str.compile_option
push ebx
push ebx
mov ecx, edi
mov dword [ebp + 0x48], 1
call fcn.00446c40
push ebx
call fcn.0042ca40
add esp, 0x14
test eax, eax
je 0x47324b
push 0
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 1]
xor edx, edx
inc ebx
call fcn.004400c0
mov eax, 1
push edi
mov ecx, eax
lea edx, [eax + 0xf]
call fcn.0043a030
push ebx
call fcn.0042ca40
add esp, 0x14
test eax, eax
jne 0x472ae3
jmp 0x47324b
mov edx, str.wal_checkpoint
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472bf6
mov edx, dword [esp + 0x50]
mov dword [esp + 0x48], ebx
cmp dword [edx], eax
jne 0x472b3f
mov dword [esp + 0x48], 0xa
mov esi, dword [esp + 0x10]
xor ebx, ebx
test esi, esi
je 0x472b71
mov edx, str.full
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472b5e
lea ebx, [eax + 1]
jmp 0x472b71
mov edx, str.restart
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x472b71
lea ebx, [eax + 2]
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, 3
mov esi, edi
call fcn.00440430
push 0
push str.busy
push 0
push 0
mov ecx, edi
mov dword [ebp + 0x48], 3
call fcn.00446c40
push 0
push 0x4a5538
push 0
push 1
mov ecx, edi
call fcn.00446c40
push 0
push str.checkpointed
push 0
push 2
mov ecx, edi
call fcn.00446c40
mov eax, dword [esp + 0x78]
push 1
push ebx
push eax
push 0x7d
mov eax, edi
call fcn.00439f90
mov eax, 3
add esp, 0x40
push edi
lea ecx, [eax - 2]
lea edx, [eax + 0xd]
call fcn.0043a030
add esp, 4
jmp 0x47324b
mov edx, str.wal_autocheckpoint
mov ecx, esi
call fcn.0042dbb0
test eax, eax
jne 0x47324b
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x472c27
call fcn.0042e400
mov esi, dword [esp + 0x14]
push eax
push esi
call fcn.004624c0
add esp, 8
jmp 0x472c2b
mov esi, dword [esp + 0x14]
cmp dword [esi + 0xc0], 0x462490
jne 0x472c3f
mov eax, dword [esi + 0xc4]
jmp 0x472c41
xor eax, eax
cdq
push edx
push eax
push str.wal_autocheckpoint
mov eax, ebp
call fcn.00448f60
add esp, 0xc
jmp 0x47324b
mov ecx, ebx
mov edx, edi
call fcn.00432ba0
movsx eax, byte [esi]
add eax, 0xffffffba
cmp eax, 0x2d
ja case.0x472c73.71
movzx ecx, byte [eax + 0x4732b0]
jmp dword [ecx*4 + 0x4732a4]
mov dword [esp + 0x48], 0
jmp 0x472c96
mov dword [esp + 0x48], 1
jmp 0x472c96
mov dword [esp + 0x48], 6
mov esi, dword [esp + 0x10]
test esi, esi
je 0x472cf5
cmp dword [esp + 0x48], 0
je 0x472cf5
push 0x49fb58
push 3
push edi
call fcn.0043a0b0
add esp, 0xc
mov edx, ebx
mov ecx, edi
mov ebp, eax
call fcn.00432af0
mov ecx, esi
call fcn.0042e400
lea ecx, [ebp + 1]
mov edx, eax
mov eax, ecx
mov ecx, edi
call fcn.00432af0
add ebp, 2
mov edx, ebx
mov eax, ebp
mov ecx, edi
call fcn.00432af0
mov edx, dword [esp + 0x48]
mov eax, ebp
mov ecx, edi
call fcn.00432b00
jmp 0x47324b
push 0x49fb64
push 3
push edi
call fcn.0043a0b0
mov edx, ebx
mov ecx, edi
mov esi, eax
call fcn.00432af0
inc esi
mov eax, esi
mov ecx, edi
call fcn.00432af0
mov edx, dword [esp + 0x54]
mov eax, esi
mov ecx, edi
call fcn.00432b10
mov eax, 1
mov esi, edi
call fcn.00440430
mov edx, dword [esp + 0x28]
push 0xffffffffffffffff
push edx
push 0
push 0
mov ecx, edi
call fcn.00446c40
add esp, 0x1c
jmp 0x47324b
mov eax, esi
movzx ecx, byte [eax]
xor edx, edx
cmp byte [ecx + 0x49ee48], 0x71
mov esi, ebp
sete dl
mov dword [esp + 0x34], edx
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov eax, 1
mov esi, edi
mov dword [ebp + 0x48], 6
call fcn.00440430
push 0
push str.integrity_check
push 0
push 0
mov ecx, edi
call fcn.00446c40
mov eax, dword [esp + 0x20]
add esp, 0x10
mov ecx, 0x64
mov dword [esp + 0x2c], ecx
test eax, eax
je 0x472dc6
lea ecx, [esp + 0x2c]
push ecx
push eax
call fcn.0042e330
mov ecx, dword [esp + 0x34]
add esp, 8
test ecx, ecx
jg 0x472dc6
mov ecx, 0x64
mov dword [esp + 0x2c], ecx
mov eax, 1
push edi
lea edx, [eax + 6]
call fcn.0043a030
mov edx, dword [esp + 0x18]
add esp, 4
cmp dword [edx + 4], 0
mov dword [esp + 0x24], 0
jle 0x47317f
mov dword [esp + 0x28], 0
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x48]
xor ebx, ebx
call fcn.0045f6c0
push edi
lea eax, [ebx + 1]
lea ecx, [ebx + 0x78]
call fcn.0043a010
mov esi, eax
push edi
xor eax, eax
xor ecx, ecx
lea edx, [ebx + 6]
call fcn.0043a030
add esp, 8
mov eax, esi
mov ecx, edi
call fcn.00432b40
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x28]
mov ebp, dword [edx + ecx + 0xc]
mov eax, dword [ebp + 0x10]
add ebp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x472e9d
jmp 0x472e50
mov eax, dword [esp + 0x20]
mov esi, dword [eax + 8]
mov ecx, dword [esi + 0x14]
lea eax, [ebx + 2]
push edi
mov edx, 7
call fcn.0043a030
mov esi, dword [esi + 0x10]
add esp, 4
inc ebx
test esi, esi
je 0x472e8f
mov ecx, dword [esi + 0x14]
lea eax, [ebx + 2]
push edi
mov edx, 7
call fcn.0043a030
mov esi, dword [esi + 0x20]
add esp, 4
inc ebx
test esi, esi
jne 0x472e73
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x472e50
mov ecx, dword [esp + 0x48]
lea eax, [ebx + 4]
cmp dword [ecx + 0x48], eax
jge 0x472eac
mov dword [ecx + 0x48], eax
push 1
push ebx
push 2
push 0x6f
mov eax, edi
call fcn.00439f90
mov dl, byte [esp + 0x34]
mov eax, edi
call fcn.00432b20
mov eax, 2
push edi
lea ecx, [eax + 0x47]
call fcn.0043a010
mov esi, dword [esp + 0x28]
mov edx, dword [esi + 8]
add esp, 0x14
mov ebx, eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + edx]
push 0xffffffffffffffff
push ecx
push str._in_database__s__n
call fcn.0043e590
add esp, 8
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
call fcn.004400c0
push 1
push 4
push 2
push 0xd
mov eax, edi
call fcn.00439f90
push 2
push 3
push 4
push 0x5b
mov eax, edi
call fcn.00439f90
mov eax, 1
push edi
lea ecx, [eax + 1]
lea edx, [eax + 0xf]
call fcn.0043a030
add esp, 0x30
mov eax, ebx
mov ecx, edi
call fcn.00432b40
mov ebp, dword [ebp + 8]
mov dword [esp + 0x20], ebp
test ebp, ebp
je 0x473164
jmp 0x472f55
mov ebp, dword [esp + 0x20]
cmp dword [esp + 0x34], 0
jne 0x473164
mov ebp, dword [ebp + 8]
cmp dword [ebp + 0x10], 0
mov dword [esp + 0x30], ebp
je 0x473152
mov eax, 1
push edi
lea ecx, [eax + 0x77]
call fcn.0043a010
mov esi, eax
xor eax, eax
push edi
xor ecx, ecx
lea edx, [eax + 6]
call fcn.0043a030
mov eax, esi
mov ecx, edi
call fcn.00432b40
mov edx, dword [esp + 0x50]
push 0x27
push 1
mov esi, ebp
push esi
push edx
call fcn.0044f510
mov eax, 2
push edi
xor ecx, ecx
lea edx, [eax + 5]
call fcn.0043a030
xor eax, eax
push edi
lea ecx, [eax + 1]
lea edx, [eax + 0x48]
call fcn.0043a030
mov dword [esp + 0x5c], eax
mov eax, 1
push edi
lea ecx, [eax + 1]
lea edx, [eax + 0x13]
call fcn.0043a030
mov esi, dword [esi + 0x10]
add esp, 0x24
test esi, esi
je 0x47307c
mov ebp, 2
mov edi, edi
mov eax, dword [esp + 0x48]
push 0
push 3
push 1
push esi
push eax
call fcn.00453ea0
mov ecx, dword [esi + 4]
inc ecx
push ecx
push 0x34
xor ecx, ecx
mov edx, ebp
call fcn.00440140
push 0x49f6e4
push 0xb
push edi
mov dword [esp + 0x60], eax
call fcn.0043a0b0
mov ebx, eax
push str.rowid
lea eax, [ebx + 1]
push edi
mov ecx, 0xfffffffe
call fcn.0043a2f0
push str._missing_from_index
lea eax, [ebx + 3]
push edi
mov ecx, 0xfffffffe
call fcn.0043a2f0
mov edx, dword [esi]
push edx
lea eax, [ebx + 4]
push edi
xor ecx, ecx
call fcn.0043a2f0
add esp, 0x40
lea eax, [ebx + 9]
mov ecx, edi
call fcn.00432b40
mov eax, dword [esp + 0x38]
mov ecx, edi
call fcn.00432b40
mov esi, dword [esi + 0x20]
inc ebp
test esi, esi
jne 0x472ff0
mov esi, dword [esp + 0x3c]
mov ecx, 1
lea eax, [esi + 1]
push edi
lea edx, [ecx + 0x5e]
call fcn.0043a030
add esp, 4
mov eax, esi
mov ecx, edi
call fcn.00432b40
mov eax, dword [esp + 0x30]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x473152
mov ebp, 2
mov eax, 1
push edi
lea ecx, [eax + 0x77]
call fcn.0043a010
mov esi, eax
xor eax, eax
push edi
xor ecx, ecx
lea edx, [eax + 6]
call fcn.0043a030
mov eax, esi
mov ecx, edi
call fcn.00432b40
push 0x49fae8
push 0xa
push edi
call fcn.0043a0b0
mov esi, eax
lea eax, [esi + 1]
mov edx, ebp
mov ecx, edi
call fcn.00432af0
lea edx, [esi + 4]
lea eax, [esi + 1]
mov ecx, edi
call fcn.00432b00
lea eax, [esi + 3]
mov edx, ebp
mov ecx, edi
call fcn.00432af0
lea edx, [esi + 2]
lea eax, [esi + 3]
mov ecx, edi
call fcn.00432b00
lea eax, [esi + 4]
mov ecx, edi
call fcn.00432b40
push str.wrong__of_entries_in_index
lea eax, [esi + 6]
push edi
mov ecx, 0xfffffffe
call fcn.0043a2f0
mov ecx, dword [ebx]
push ecx
lea eax, [esi + 7]
push edi
xor ecx, ecx
call fcn.0043a2f0
mov ebx, dword [ebx + 0x20]
add esp, 0x24
inc ebp
test ebx, ebx
jne 0x4730b1
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x472f51
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
add dword [esp + 0x28], 0x10
inc eax
cmp eax, dword [ecx + 4]
mov dword [esp + 0x24], eax
jl 0x472df5
push 0x49fad8
push 4
push edi
call fcn.0043a0b0
mov edx, dword [esp + 0x38]
neg edx
mov ecx, edi
mov esi, eax
call fcn.00432b00
lea eax, [esi + 1]
mov ecx, edi
call fcn.00432b40
push 0x4a54b8
lea eax, [esi + 2]
push edi
mov ecx, 0xfffffffe
call fcn.0043a2f0
jmp 0x473248
mov esi, ebp
call fcn.0046bd00
test eax, eax
jne 0x47327e
mov esi, ebx
mov eax, ebp
call fcn.0045f6c0
inc dword [ebp + 0x48]
mov edx, dword [esp + 0x1c]
movzx eax, byte [edx]
cmp byte [eax + 0x49ee48], 0x70
mov ebp, dword [ebp + 0x48]
jne 0x4731ff
push edi
mov eax, ebp
mov ecx, ebx
mov edx, 0x92
call fcn.0043a030
add esp, 4
jmp 0x47321a
mov ecx, dword [esp + 0x10]
call fcn.0042e400
push eax
push ebp
push ebx
push 0x93
mov eax, edi
call fcn.00439f90
add esp, 0x10
mov eax, 1
push edi
mov ecx, ebp
lea edx, [eax + 0xf]
call fcn.0043a030
mov eax, 1
mov esi, edi
call fcn.00440430
mov ecx, dword [esp + 0x20]
push 0xffffffffffffffff
push ecx
push 0
push 0
mov ecx, edi
call fcn.00446c40
add esp, 0x14
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x1c], 0
je 0x47327e
mov eax, edx
mov eax, dword [eax + 0xc]
mov ecx, eax
shr ecx, 0x16
shr eax, 0x15
and ecx, 1
and eax, 1
push ecx
push eax
mov eax, dword [esp + 0x20]
movzx edx, byte [eax + 9]
mov eax, dword [eax + 4]
push edx
call fcn.004320b0
add esp, 0xc
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
push eax
push esi
call fcn.0042d860
mov ecx, dword [esp + 0x18]
push ecx
push esi
call fcn.0042d860
add esp, 0x10
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x34
ret