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

Disassembly:
sub esp, 0xb0
mov eax, dword [0x101a2ce4]
xor eax, esp
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xc0]
push ebp
mov ebp, dword [esp + 0xc0]
push esi
mov esi, dword [ecx + 8]
mov dword [esp + 0x14], eax
mov eax, dword [ecx]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x2c], ebp
mov dword [esp + 8], eax
mov dword [esp + 0x40], esi
push edi
mov edi, dword [esp + 0xc4]
test esi, esi
je 0x101286a6
mov dword [esp + 0x7c], esi
jmp 0x101286d1
cmp dword [ecx + 0x78], 0
jne 0x101286b6
test byte [eax + 0x50], 8
jne 0x101286b6
mov byte [ecx + 0x17], 1
push ecx
call fcn.1013a130
mov esi, eax
add esp, 4
mov dword [esp + 0x44], esi
mov dword [esp + 0x7c], esi
test esi, esi
je 0x1012cb2f
mov ecx, dword [esi + 0x6c]
lea eax, [esi + 0x70]
push ebx
lea ebx, [esi + 0x6c]
mov dword [esp + 0x44], eax
mov dword [esp + 0x24], ebx
cmp dword [eax], ecx
jg 0x101286fd
push 0
push 1
push 1
push 0xa6
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012872f
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa6
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x20]
push ecx
push ebp
push edi
push eax
mov dword [eax + 0x2c], 2
call fcn.10136720
mov edx, eax
add esp, 0x10
mov dword [esp + 0x38], edx
test edx, edx
js 0x1012cb2e
mov ecx, dword [esp + 0x10]
shl eax, 4
mov dword [esp + 0x54], eax
mov edi, dword [ecx + 0x10]
add edi, eax
mov dword [esp + 0x6c], edi
cmp edx, 1
jne 0x10128785
push dword [esp + 0x14]
call fcn.101258f0
add esp, 4
test eax, eax
jne 0x1012cb2e
push dword [esp + 0x20]
push dword [esp + 0x14]
call fcn.101252a0
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
je 0x1012cb2e
cmp dword [esp + 0xd4], 0
push dword [esp + 0x1c]
je 0x101287c2
push 0x10195454
push dword [esp + 0x18]
call fcn.10124b40
add esp, 0xc
jmp 0x101287ce
push dword [esp + 0x14]
call fcn.101252a0
add esp, 8
cmp dword [ebp + 4], 0
mov dword [esp + 0x18], eax
jbe 0x101287dc
mov ebp, dword [edi]
jmp 0x101287de
xor ebp, ebp
push ebp
push eax
push dword [esp + 0x38]
mov dword [esp + 0x48], ebp
push 0x13
push dword [esp + 0x24]
call fcn.101095e0
add esp, 0x14
test eax, eax
jne 0x1012cb08
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0
mov eax, dword [ecx + 0xc]
mov dword [ecx + 0x1c8], 0
mov dword [esp + 0x2c], 1
test eax, eax
je 0x10128851
push eax
call dword [0x101a11a0]
mov ecx, dword [esp + 0x14]
add esp, 4
test ebp, ebp
je 0x1012886a
push ebp
push ecx
call fcn.1011a6b0
mov ebp, eax
add esp, 8
test ebp, ebp
jns 0x1012886c
jmp 0x101288f5
xor ebp, ebp
mov eax, dword [esp + 0x10]
add ebp, ebp
mov eax, dword [eax + 0x10]
mov ebp, dword [eax + ebp*8 + 4]
test ebp, ebp
je 0x101288f5
cmp byte [ebp + 9], 0
je 0x10128895
inc dword [ebp + 0xc]
cmp byte [ebp + 0xa], 0
jne 0x10128895
push ebp
call fcn.100dea30
add esp, 4
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [ecx + 0x1c8]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x101288bb
mov dword [esp + 0x2c], 0xc
jmp 0x101288d2
lea edx, [esp + 0xac]
push edx
push 0xe
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
mov dword [ecx + 0x1c8], eax
cmp byte [ebp + 9], 0
je 0x101288f5
add dword [ebp + 0xc], 0xffffffff
jne 0x101288f5
push ebp
call fcn.10153430
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1012890a
push eax
call dword [0x101a11a8]
add esp, 4
mov ebp, dword [esp + 0x2c]
test ebp, ebp
jne 0x10128a13
push 1
push esi
call fcn.10146a70
push 0xffffffffffffffff
push dword [esp + 0xb8]
push ebp
push ebp
push esi
call fcn.10146a20
mov edi, dword [esp + 0xc8]
add esp, 0x1c
test edi, edi
je 0x1012cb08
push ebp
push edi
push ebp
push 1
push ebp
push 0x75
push esi
call fcn.10139bc0
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012896e
push ebp
push 1
push 1
push 0x54
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x101289a0
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edi, dword [esp + 0xac]
test edi, edi
je 0x1012cb08
cmp dword [0x101a1150], 0
je 0x10128a04
mov eax, dword [0x101a3b70]
test eax, eax
je 0x101289cb
push eax
call dword [0x101a11a0]
add esp, 4
push edi
call dword [0x101a117c]
sub dword [0x101a3b10], eax
dec dword [0x101a3b34]
push edi
call dword [0x101a1174]
mov eax, dword [0x101a3b70]
add esp, 8
test eax, eax
je 0x1012cb08
push eax
call dword [0x101a11a8]
add esp, 4
jmp 0x1012cb08
push edi
call dword [0x101a1174]
add esp, 4
jmp 0x1012cb08
cmp ebp, 0xc
je 0x10128abc
mov eax, dword [esp + 0xac]
test eax, eax
je 0x10128aad
push eax
push 0x1019248c
push dword [esp + 0x1c]
call fcn.10114f40
mov esi, dword [esp + 0xb8]
add esp, 0xc
test esi, esi
je 0x10128aad
cmp dword [0x101a1150], 0
je 0x10128aa3
mov eax, dword [0x101a3b70]
test eax, eax
je 0x10128a64
push eax
call dword [0x101a11a0]
add esp, 4
push esi
call dword [0x101a117c]
sub dword [0x101a3b10], eax
dec dword [0x101a3b34]
push esi
call dword [0x101a1174]
mov eax, dword [0x101a3b70]
add esp, 8
test eax, eax
je 0x10128aad
push eax
call dword [0x101a11a8]
mov eax, dword [esp + 0x18]
add esp, 4
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebp
jmp 0x1012cb08
push esi
call dword [0x101a1174]
add esp, 4
mov eax, dword [esp + 0x14]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebp
jmp 0x1012cb08
push dword [esp + 0x30]
call fcn.100fe920
mov ebp, eax
add esp, 4
mov dword [esp + 0x78], ebp
test ebp, ebp
je 0x1012cb08
test byte [ebp + 5], 1
je 0x10128af0
push dword [esp + 0x14]
call fcn.1012ddb0
add esp, 4
test eax, eax
jne 0x1012cb08
mov al, byte [ebp + 5]
test al, 2
jne 0x10128b0d
test al, 4
je 0x10128b03
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x10128b11
push ebp
push esi
call fcn.10106570
add esp, 8
mov edx, dword [esp + 0x18]
movzx eax, byte [ebp + 4]
dec eax
cmp eax, 0x2a
ja case.0x10128b1f.5
jmp dword [eax*4 + 0x1012cb48]
mov ebx, dword [esp + 0x38]
push ebx
push esi
call fcn.10147330
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
jne 0x10128b75
mov eax, dword [esp + 0x14]
push 0
push 0x1018fa18
push 9
add dword [eax + 0x2c], 2
push esi
call fcn.10139cd0
push dword [esp + 0x40]
push dword [esp + 0x24]
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x7c], 0xfffff830
call fcn.10112cf0
add esp, 0x18
jmp 0x1012cb2e
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push ecx
push eax
call fcn.10120010
push dword [esp + 0x24]
call fcn.101069f0
push ebx
push 0
push dword [esp + 0x28]
mov edi, eax
call fcn.1010a090
push edi
push 3
push ebx
push 0x64
push esi
call fcn.10139b60
mov ecx, dword [esp + 0x98]
mov eax, dword [ecx + 0xc]
mov dword [eax + 0x50], edi
mov eax, dword [ecx + 0xc]
push dword [eax + 0x50]
push dword [ecx + 4]
call fcn.1010da10
push dword [esp + 0x64]
push dword [esp + 0x48]
call fcn.10112cf0
mov eax, dword [esp + 0x54]
add esp, 0x3c
jmp 0x1012cb21
mov edi, dword [edi + 4]
test edx, edx
jne 0x10128c2e
test edi, edi
je 0x10128c0e
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x24]
cdq
push edx
push eax
push esi
call fcn.10103f00
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10112cf0
add esp, 0x14
jmp 0x1012cb2e
xor eax, eax
cdq
push edx
push eax
push esi
call fcn.10103f00
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10112cf0
add esp, 0x14
jmp 0x1012cb2e
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
push edx
call fcn.10120010
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
push 0
push 0
push eax
push edi
mov dword [ecx + 0x64], eax
call fcn.1010dab0
add esp, 0x18
cmp eax, 7
jne 0x1012cb08
mov edi, dword [esp + 0x10]
push edi
call fcn.10125540
push dword [esp + 0x34]
push edi
call fcn.10112cf0
mov eax, dword [esp + 0x24]
add esp, 0xc
jmp 0x1012cb21
mov eax, dword [edi + 4]
or ecx, 0xffffffff
mov dword [esp + 0x20], eax
mov dword [esp + 0x40], ecx
test edx, edx
je 0x10128cc1
push str.fast
push edx
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10128cac
lea ecx, [eax + 2]
jmp 0x10128cbd
push 0
push dword [esp + 0x1c]
call fcn.1011fdb0
add esp, 8
movzx ecx, al
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x34]
cmp dword [eax + 4], 0
jne 0x10128d5c
test ecx, ecx
js 0x10128d5c
mov eax, dword [esp + 0x10]
xor ebx, ebx
cmp dword [eax + 0x14], ebx
jle 0x10128d5c
mov esi, dword [esp + 0x40]
xor ebp, ebp
mov ecx, 0xfff3
nop dword [eax]
mov eax, dword [eax + 0x10]
mov edi, dword [eax + ebp + 4]
test edi, edi
je 0x10128d47
cmp byte [edi + 9], 0
je 0x10128d18
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x10128d18
push edi
call fcn.100dea30
add esp, 4
mov ecx, 0xfff3
mov eax, dword [edi + 4]
and word [eax + 0x18], cx
lea eax, [esi*4]
mov ecx, dword [edi + 4]
or word [ecx + 0x18], ax
cmp byte [edi + 9], 0
je 0x10128d42
add dword [edi + 0xc], 0xffffffff
jne 0x10128d42
push edi
call fcn.10153430
add esp, 4
mov ecx, 0xfff3
mov eax, dword [esp + 0x10]
inc ebx
add ebp, 0x10
cmp ebx, dword [eax + 0x14]
jl 0x10128cf0
mov esi, dword [esp + 0x48]
mov ecx, dword [esp + 0x40]
push ecx
push dword [esp + 0x24]
call fcn.1010d920
cdq
push edx
push eax
push esi
call fcn.10103f00
add esp, 0x14
jmp 0x1012cb08
mov ebp, dword [esp + 0x38]
xorps xmm0, xmm0
mov ebx, dword [esp + 0x14]
push ebp
push ebx
movlpd qword [esp + 0xa8], xmm0
call fcn.1010fdc0
mov eax, dword [esp + 0x38]
add esp, 8
inc dword [ebx + 0x2c]
mov edi, dword [ebx + 0x2c]
movzx eax, byte [eax]
cmp byte [eax + 0x1018ff38], 0x70
jne 0x10128dce
push edi
push ebp
push 0xb1
push esi
call fcn.10139b00
add esp, 0x10
push 1
push edi
push 0x54
push esi
call fcn.10139b00
add esp, 0x10
jmp 0x1012cb08
mov eax, dword [esp + 0x18]
test eax, eax
je 0x10128e20
lea ecx, [esp + 0xa0]
push ecx
push eax
call fcn.10113160
add esp, 8
test eax, eax
jne 0x10128e20
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0xa0]
test ecx, ecx
jg 0x10128e0e
jl 0x10128e20
test eax, eax
jb 0x10128e20
test ecx, ecx
jl 0x10128e33
jg 0x10128e0e
cmp eax, 0xfffffffe
jbe 0x10128e33
mov eax, 0xfffffffe
mov dword [esp + 0xa4], 0
jmp 0x10128e33
xorps xmm0, xmm0
movlpd qword [esp + 0xa0], xmm0
mov eax, dword [esp + 0xa0]
push eax
push edi
push ebp
push 0xb2
push esi
call fcn.10139b60
add esp, 0x14
push 1
push edi
push 0x54
push esi
call fcn.10139b00
add esp, 0x10
jmp 0x1012cb08
test edx, edx
je 0x10128e8b
push str.exclusive
push edx
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10128e72
lea ecx, [eax + 1]
jmp 0x10128e8e
push str.normal
push dword [esp + 0x1c]
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10128e8b
xor ecx, ecx
jmp 0x10128e8e
or ecx, 0xffffffff
mov eax, dword [esp + 0x34]
cmp dword [eax + 4], 0
jne 0x10128efd
mov eax, dword [esp + 0x10]
cmp ecx, 0xffffffff
jne 0x10128ea7
movzx eax, byte [eax + 0x59]
jmp 0x10128f0e
mov edx, 2
cmp dword [eax + 0x14], edx
jle 0x10128efa
mov ebx, 0x20
mov edi, eax
nop dword [eax + eax]
mov eax, dword [edi + 0x10]
mov eax, dword [eax + ebx + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
test ecx, ecx
js 0x10128ee9
cmp byte [eax + 0xc], 0
jne 0x10128ee9
mov ebp, dword [eax + 0xe8]
test ebp, ebp
je 0x10128ee6
cmp byte [ebp + 0x2b], 2
je 0x10128ee9
mov byte [eax + 4], cl
inc edx
add ebx, 0x10
cmp edx, dword [edi + 0x14]
jl 0x10128ec0
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x10]
mov byte [eax + 0x59], cl
mov eax, dword [edi + 4]
push ecx
mov eax, dword [eax + 4]
push dword [eax]
call fcn.10126270
add esp, 8
cmp eax, 1
mov edx, str.exclusive
mov ecx, str.normal
cmove ecx, edx
push ecx
push esi
call fcn.10103f90
add esp, 8
jmp 0x1012cb08
test edx, edx
je 0x10128fcb
mov ecx, edx
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10128f40
sub ecx, edx
and ecx, 0x3fffffff
xor ebp, ebp
mov dword [esp + 0x20], ecx
cmp ebp, 6
je 0x10128fcb
mov edi, dword [ebp*4 + 0x1018fa00]
test edi, edi
je 0x10128fcb
mov ebx, dword [esp + 0x18]
mov edx, ecx
test ecx, ecx
je 0x10128f91
nop
mov al, byte [ebx]
dec edx
test al, al
je 0x10128f92
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x1018ff38]
cmp al, byte [ecx + 0x1018ff38]
jne 0x10128f92
inc ebx
inc edi
test edx, edx
jg 0x10128f70
dec edx
test edx, edx
js 0x10128fb5
movzx eax, byte [edi]
movzx ecx, byte [eax + 0x1018ff38]
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x1018ff38]
sub eax, ecx
je 0x10128fb5
mov ecx, dword [esp + 0x20]
inc ebp
jmp 0x10128f55
cmp ebp, 2
jne 0x10128fe7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x10128fec
or ebp, 0xffffffff
mov ecx, dword [esp + 0x34]
cmp dword [ecx + 4], 0
jne 0x10128ff0
xor edx, edx
mov dword [ecx + 4], 1
mov dword [esp + 0x38], edx
jmp 0x10128ff4
cmp ebp, 0xffffffff
je 0x10128fce
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x14]
sub edi, 1
js 0x101290bb
mov ebx, edi
shl ebx, 4
nop dword [eax]
mov eax, dword [eax + 0x10]
cmp dword [eax + ebx + 4], 0
je 0x101290a3
cmp edi, edx
je 0x10129028
cmp dword [ecx + 4], 0
jne 0x101290a3
mov eax, dword [esi + 0x9c]
bts eax, edi
mov dword [esi + 0x9c], eax
cmp edi, 1
je 0x1012905a
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ebx + 4]
cmp byte [eax + 9], 0
je 0x1012905a
mov eax, dword [esi + 0xa0]
bts eax, edi
mov dword [esi + 0xa0], eax
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov edx, dword [ecx]
cmp dword [eax], edx
jg 0x10129079
push ebp
push 1
push edi
push 4
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x101290a3
lea eax, [edx + 1]
mov dword [ecx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 4
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], ebp
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x34]
sub ebx, 0x10
sub edi, 1
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x38]
jns 0x10129010
push 1
push 1
push 0x54
push esi
call fcn.10139b00
add esp, 0x10
jmp 0x1012cb08
mov eax, dword [edi + 4]
or ecx, 0xffffffff
mov dword [esp + 0xa4], ecx
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov eax, 0xfffffffe
mov dword [esp + 0xa0], eax
test edx, edx
je 0x1012912a
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.10113160
mov ecx, dword [esp + 0xac]
add esp, 8
cmp ecx, 0xffffffff
jg 0x10129123
jl 0x1012911c
mov eax, dword [esp + 0xa0]
cmp eax, 0xffffffff
jae 0x1012912a
or eax, 0xffffffff
or ecx, eax
jmp 0x1012912a
mov eax, dword [esp + 0xa0]
cmp ecx, 0xffffffff
jl 0x10129152
jg 0x10129136
cmp eax, 0xffffffff
jb 0x10129152
mov edx, dword [edi + 0xe8]
mov dword [edi + 0xb0], eax
mov dword [edi + 0xb4], ecx
test edx, edx
je 0x10129152
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
push dword [edi + 0xb4]
push dword [edi + 0xb0]
jmp 0x1012caff
mov edi, dword [edi + 4]
test edx, edx
jne 0x1012918e
push edi
call fcn.1010bb60
cdq
push edx
push eax
push esi
call fcn.10103f00
push dword [esp + 0x40]
push dword [esp + 0x24]
call fcn.10112cf0
add esp, 0x18
jmp 0x1012cb2e
push str.none
push edx
call fcn.101353f0
add esp, 8
test eax, eax
je 0x101291fe
mov ebp, dword [esp + 0x18]
push str.full
push ebp
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x101291bd
mov eax, 1
jmp 0x101291fe
push str.incremental
push ebp
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x101291d6
mov eax, 2
jmp 0x101291fe
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
push ebp
call fcn.10120010
mov eax, dword [esp + 0x24]
xor edx, edx
add esp, 8
movzx ecx, al
cmp eax, 2
cmova ecx, edx
movzx eax, cl
mov ecx, dword [esp + 0x10]
push eax
push edi
mov dword [esp + 0x48], eax
mov byte [ecx + 0x5a], al
call fcn.1010d990
add esp, 8
test eax, eax
jne 0x1012cb08
mov ebp, dword [esp + 0x40]
cmp ebp, 1
je 0x1012922d
cmp ebp, 2
jne 0x1012cb08
mov edi, dword [ebx]
push 0
push 0x1018fa44
push 5
push esi
call fcn.10139cd0
mov edx, dword [esp + 0x48]
lea ecx, [edi + 4]
push edx
push esi
mov dword [eax + 0x30], ecx
lea ecx, [ebp - 1]
mov dword [eax + 4], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], ecx
call fcn.10147330
push dword [esp + 0x48]
push dword [esp + 0x2c]
call fcn.10112cf0
mov eax, dword [esp + 0x38]
add esp, 0x20
jmp 0x1012cb21
mov dword [esp + 0x1c], 0
test edx, edx
je 0x1012929d
lea eax, [esp + 0x1c]
push eax
push edx
call fcn.10120010
add esp, 8
test eax, eax
je 0x1012929d
mov edi, dword [esp + 0x1c]
test edi, edi
jg 0x101292a2
mov edi, 0x7fffffff
mov ebx, dword [esp + 0x38]
push ebx
push 0
push dword [esp + 0x1c]
call fcn.1010a090
push 1
push edi
push 0x47
push esi
call fcn.10139b00
push ebx
push 0x3e
push esi
call fcn.10139aa0
push 1
push 0x54
push esi
mov edi, eax
call fcn.10139aa0
push 0xffffffffffffffff
push 1
push 0x56
push esi
call fcn.10139b00
add esp, 0x44
push edi
push 1
push 0x3b
push esi
call fcn.10139b00
push edi
push esi
call fcn.10143e90
add esp, 0x18
jmp 0x1012cb08
test edx, edx
jne 0x10129323
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
push esi
call fcn.10103f00
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10112cf0
add esp, 0x14
jmp 0x1012cb2e
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
push edx
call fcn.10120010
mov ecx, dword [edi + 0xc]
mov eax, dword [esp + 0x24]
mov dword [ecx + 0x50], eax
mov eax, dword [edi + 0xc]
push dword [eax + 0x50]
push dword [edi + 4]
call fcn.1010da10
push dword [esp + 0x40]
push dword [esp + 0x24]
call fcn.10112cf0
mov eax, dword [esp + 0x30]
add esp, 0x18
jmp 0x1012cb21
test edx, edx
jne 0x10129394
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x20
or eax, edx
jne 0x10129380
cdq
push edx
jmp 0x1012996f
push 0
push dword [edi + 4]
call fcn.1010dc80
add esp, 8
cdq
push edx
jmp 0x1012996f
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 1
push eax
push edx
call fcn.10120010
mov esi, dword [esp + 0x24]
add esp, 8
test eax, eax
je 0x101293be
push esi
push dword [edi + 4]
call fcn.1010dc80
add esp, 8
test esi, esi
setne al
movzx eax, al
push eax
push dword [esp + 0x1c]
call fcn.1011fdb0
mov edx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [edx + 0x20]
mov edx, dword [edx + 0x24]
test al, al
je 0x101293e6
or ecx, 0x20
jmp 0x101293e9
and ecx, 0xffffffdf
mov eax, dword [esp + 0x10]
push eax
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], edx
call fcn.10106270
push dword [esp + 0x34]
push dword [esp + 0x18]
call fcn.10112cf0
mov eax, dword [esp + 0x24]
add esp, 0xc
jmp 0x1012cb21
test edx, edx
je 0x10129533
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.10113160
add esp, 8
cmp dword [esp + 0xa4], 0
jg 0x1012945a
jl 0x10129441
cmp dword [esp + 0xa0], 0
jae 0x1012945a
mov eax, dword [0x101a11f8]
mov ecx, dword [0x101a11fc]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x10]
cmp dword [eax + 4], 0
jne 0x1012947c
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov dword [edx + 0x30], eax
mov dword [edx + 0x34], ecx
mov ebx, dword [edx + 0x14]
sub ebx, 1
js 0x10129533
mov esi, dword [esp + 0x34]
mov ebp, ebx
shl ebp, 4
mov eax, dword [edx + 0x10]
mov edi, dword [eax + ebp + 4]
test edi, edi
je 0x10129523
cmp ebx, dword [esp + 0x38]
je 0x101294ac
cmp dword [esi + 4], 0
jne 0x10129523
cmp byte [edi + 9], 0
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x84], eax
mov eax, dword [edi + 4]
mov dword [esp + 0x20], eax
je 0x101294e8
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x101294e8
push edi
call fcn.100dea30
mov eax, dword [esp + 0x24]
add esp, 4
mov eax, dword [eax]
mov ecx, dword [esp + 0x70]
push eax
mov dword [eax + 0x88], ecx
mov ecx, dword [esp + 0x88]
mov dword [eax + 0x8c], ecx
call fcn.100fa5e0
add esp, 4
cmp byte [edi + 9], 0
je 0x1012951f
add dword [edi + 0xc], 0xffffffff
jne 0x1012951f
push edi
call fcn.10153430
add esp, 4
mov edx, dword [esp + 0x10]
sub ebp, 0x10
sub ebx, 1
jns 0x10129491
mov esi, dword [esp + 0x48]
mov ecx, dword [esp + 0x10]
mov ebx, 1
mov dword [esp + 0xa0], 0xffffffff
mov dword [esp + 0xa4], 0xffffffff
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x10129567
push eax
call dword [0x101a11a0]
mov ecx, dword [esp + 0x14]
add esp, 4
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x10129584
push eax
push ecx
call fcn.1011a6b0
mov edi, eax
add esp, 8
test edi, edi
jns 0x10129586
jmp 0x10129600
xor edi, edi
mov eax, dword [esp + 0x10]
add edi, edi
mov eax, dword [eax + 0x10]
mov edi, dword [eax + edi*8 + 4]
test edi, edi
je 0x10129600
cmp byte [edi + 9], 0
je 0x101295af
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x101295af
push edi
call fcn.100dea30
add esp, 4
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov ebp, dword [ecx + 0x1c8]
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x101295cc
lea ebx, [ecx + 0xc]
jmp 0x101295e1
lea edx, [esp + 0xa0]
push edx
push 0x12
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov ebx, eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1c8], ebp
cmp byte [edi + 9], 0
je 0x10129604
add dword [edi + 0xc], 0xffffffff
jne 0x10129604
push edi
call fcn.10153430
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x10129615
push eax
call dword [0x101a11a8]
add esp, 4
test ebx, ebx
jne 0x1012962c
push dword [esp + 0xa4]
push dword [esp + 0xa4]
jmp 0x1012caff
mov ebp, dword [esp + 0x10]
cmp ebx, 0xc
je 0x1012cb0c
mov eax, dword [esp + 0x14]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebx
jmp 0x1012cb0c
test edx, edx
jne 0x1012965b
mov ebx, dword [esp + 0x10]
movzx eax, byte [ebx + 0x56]
cdq
push edx
jmp 0x1012996f
mov cl, byte [edx]
mov al, cl
sub al, 0x30
cmp al, 2
ja 0x1012966d
movsx ebx, cl
sub ebx, 0x30
jmp 0x1012969f
push str.file
push edx
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10129684
lea ebx, [eax + 1]
jmp 0x1012969f
push str.memory
push dword [esp + 0x1c]
call fcn.101353f0
add esp, 8
neg eax
sbb ebx, ebx
and ebx, 0xfffffffe
add ebx, 2
mov ecx, dword [esp + 0x14]
mov esi, dword [ecx]
movzx eax, byte [esi + 0x56]
cmp eax, ebx
je 0x1012cb08
push ecx
call fcn.100f1ba0
add esp, 4
test eax, eax
jne 0x1012cb08
mov byte [esi + 0x56], bl
jmp 0x10129833
cmp byte [0x101a1154], 0
je 0x101296ec
push 0xb
call dword [0x101a1198]
add esp, 4
test eax, eax
je 0x101296ec
push eax
call dword [0x101a11a0]
add esp, 4
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x10129708
push dword [0x101a3aa0]
push esi
call fcn.10103f90
add esp, 8
jmp 0x10129782
cmp byte [ecx], 0
je 0x10129736
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
push 1
push ecx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x10129800
cmp dword [esp + 0x20], eax
je 0x10129800
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x56], 1
ja 0x1012974c
push dword [esp + 0x14]
call fcn.100f1ba0
add esp, 4
push dword [0x101a3aa0]
call fcn.100d72a0
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x10129778
push eax
push 0x1019248c
call fcn.100d6fc0
add esp, 8
mov dword [0x101a3aa0], eax
jmp 0x10129782
mov dword [0x101a3aa0], 0
cmp byte [0x101a1154], 0
je 0x1012cb08
push 0xb
call dword [0x101a1198]
add esp, 4
jmp 0x101289ed
cmp byte [0x101a1154], 0
je 0x101297c1
push 0xb
call dword [0x101a1198]
add esp, 4
test eax, eax
je 0x101297c1
push eax
call dword [0x101a11a0]
add esp, 4
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x101297da
push dword [0x101a3aa4]
push esi
call fcn.10103f90
add esp, 8
jmp 0x10129782
cmp byte [ecx], 0
je 0x1012984c
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
push 1
push ecx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x10129800
cmp dword [esp + 0x20], eax
jne 0x1012984c
push str.not_a_writable_directory
push dword [esp + 0x18]
call fcn.10114f40
add esp, 8
cmp byte [0x101a1154], 0
je 0x10129833
push 0xb
call dword [0x101a1198]
add esp, 4
test eax, eax
je 0x10129833
push eax
call dword [0x101a11a8]
add esp, 4
push dword [esp + 0x30]
push dword [esp + 0x14]
call fcn.10112cf0
mov eax, dword [esp + 0x20]
add esp, 8
jmp 0x1012cb21
push dword [0x101a3aa4]
call fcn.100d72a0
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x1012987b
push eax
push 0x1019248c
call fcn.100d6fc0
add esp, 8
mov dword [0x101a3aa4], eax
jmp 0x10129782
mov dword [0x101a3aa4], 0
jmp 0x10129782
test edx, edx
jne 0x101298b6
movzx eax, byte [edi + 8]
cdq
sub eax, 1
sbb edx, 0
push edx
push eax
push esi
call fcn.10103f00
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10112cf0
add esp, 0x14
jmp 0x1012cb2e
mov ebp, dword [esp + 0x10]
cmp byte [ebp + 0x55], 0
jne 0x101298e4
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0x18]
call fcn.10114f40
push dword [esp + 0x38]
push ebp
call fcn.10112cf0
mov eax, dword [esp + 0x28]
add esp, 0x10
jmp 0x1012cb21
cmp dword [esp + 0x38], 1
je 0x1012cb0c
push 1
push 0
push edx
call fcn.100f0940
inc eax
mov ecx, 1
and eax, 7
mov byte [edi + 9], cl
cmove eax, ecx
mov byte [edi + 8], al
mov edi, ebp
push edi
call fcn.10106270
push dword [esp + 0x40]
push edi
call fcn.10112cf0
mov eax, dword [esp + 0x30]
add esp, 0x18
jmp 0x1012cb21
test edx, edx
jne 0x10129988
push ebp
push esi
call fcn.10106570
mov ebx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [ebx + 0x20]
mov eax, dword [ebx + 0x24]
and ecx, dword [ebp + 8]
and eax, dword [ebp + 0xc]
or ecx, eax
je 0x10129954
mov eax, 1
xor ecx, ecx
jmp 0x1012996e
xorps xmm0, xmm0
movlpd qword [esp + 0xa0], xmm0
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0xa0]
push ecx
push eax
push esi
call fcn.10103f00
push dword [esp + 0x3c]
push ebx
call fcn.10112cf0
add esp, 0x14
jmp 0x1012cb2e
mov eax, dword [esp + 0x10]
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
cmp byte [eax + 0x55], 0
jne 0x1012999e
and edi, 0xffffbfff
push 0
push edx
call fcn.1011fdb0
mov ecx, dword [esp + 0x18]
add esp, 8
mov edx, dword [ecx + 0x20]
mov ebp, dword [ecx + 0x24]
test al, al
je 0x101299c3
or edx, edi
or ebp, ebx
mov dword [ecx + 0x20], edx
mov dword [ecx + 0x24], ebp
jmp 0x10129a1c
mov ecx, edi
mov eax, ebx
not ecx
not eax
and ecx, edx
and eax, ebp
mov edx, dword [esp + 0x10]
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], eax
cmp edi, 0x80000
jne 0x101299f3
test ebx, ebx
jne 0x101299f3
mov dword [edx + 0x208], ebx
mov dword [edx + 0x20c], ebx
jmp 0x10129a1c
and edi, 1
or edi, 0
je 0x10129a1c
push str.reset
push dword [esp + 0x1c]
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10129a1c
push dword [esp + 0x10]
call fcn.1012e8e0
add esp, 4
push 0xa6
push esi
call fcn.10139a50
mov esi, dword [esp + 0x18]
push esi
call fcn.10106270
push dword [esp + 0x3c]
push esi
call fcn.10112cf0
mov eax, dword [esp + 0x2c]
add esp, 0x14
jmp 0x1012cb21
test edx, edx
je 0x1012cb08
mov ebx, dword [esp + 0x3c]
push ebx
push dword [esp + 0x18]
call fcn.1010fd40
push ebx
push dword [esp + 0x24]
mov ebx, dword [esp + 0x24]
push 2
push ebx
call fcn.101245b0
mov edi, eax
add esp, 0x18
mov dword [esp + 0x60], edi
test edi, edi
je 0x1012cb08
push edi
mov dword [esp + 0x60], 0
call fcn.1012d2e0
push edi
push ebx
mov dword [esp + 0x2c], eax
mov dword [ebx + 0x2c], 7
call fcn.10147420
movzx eax, word [edi + 0x22]
xor ecx, ecx
mov ebx, dword [edi + 4]
xor edx, edx
add esp, 0xc
mov dword [esp + 0x40], ecx
cmp dx, ax
jge 0x1012cb08
mov dword [esp + 0x7c], eax
nop
movzx edx, word [ebx + 0xe]
xor edi, edi
mov esi, edx
mov dword [esp + 0x84], esi
mov esi, dword [esp + 0x48]
test dl, 0x62
je 0x10129b05
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
jne 0x10129ae9
inc dword [esp + 0x5c]
jmp 0x10129c2e
mov eax, dword [esp + 0x7c]
test dl, 0x20
je 0x10129af9
mov edi, 2
jmp 0x10129b05
movzx edi, dl
and edi, 0x40
or edi, 0x20
shr edi, 5
test dl, 1
jne 0x10129b0e
xor edx, edx
jmp 0x10129b45
mov ecx, dword [esp + 0x20]
mov edx, 1
test ecx, ecx
je 0x10129b45
cwde
mov dword [esp + 0x70], eax
cmp eax, edx
jl 0x10129b45
mov ecx, dword [ecx + 4]
mov ebp, eax
nop dword [eax]
movsx eax, word [ecx]
cmp eax, dword [esp + 0x40]
je 0x10129b41
inc edx
add ecx, 2
cmp edx, ebp
jle 0x10129b30
mov ebp, dword [esp + 0x78]
movzx eax, word [ebx + 0xc]
test ax, ax
jne 0x10129b52
xor eax, eax
jmp 0x10129b7a
mov ecx, dword [esp + 0x60]
cmp byte [ecx + 0x2b], 0
je 0x10129b60
xor eax, eax
jmp 0x10129b7a
mov ecx, dword [ecx + 0x34]
test ecx, ecx
jne 0x10129b6b
xor eax, eax
jmp 0x10129b7a
cmp dword [ecx], eax
jge 0x10129b73
xor eax, eax
jmp 0x10129b7a
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 - 0xc]
cmp edi, 2
jae 0x10129b8c
test eax, eax
je 0x10129b8c
mov ecx, dword [eax + 8]
mov dword [esp + 0x1c], ecx
jmp 0x10129b94
mov dword [esp + 0x1c], 0
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
mov dword [esp + 0x6c], str.issisii
jne 0x10129bac
mov dword [esp + 0x6c], str.issisi
test byte [esp + 0x84], 4
je 0x10129bd2
mov ecx, dword [ebx]
lea eax, [ecx + 1]
mov dword [esp + 0x70], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10129bc0
mov eax, dword [ebx]
sub ecx, dword [esp + 0x70]
inc eax
add ecx, eax
jmp 0x10129beb
mov eax, dword [ebx + 4]
shr eax, 4
and eax, 0xf
je 0x10129be6
mov ecx, dword [eax*4 + 0x101a1274]
jmp 0x10129beb
mov ecx, 0x10183be2
push edi
push edx
push dword [esp + 0x24]
mov eax, ebx
mov dword [esp + 0x38], 4
mov edx, dword [esp + 0x38]
test byte [eax + edx], 0xf
mov eax, 0
setne al
push eax
mov eax, dword [esp + 0x50]
sub eax, dword [esp + 0x6c]
push ecx
push dword [ebx]
push eax
push dword [esp + 0x88]
push 1
push esi
call fcn.101459a0
mov ecx, dword [esp + 0x68]
add esp, 0x28
mov eax, dword [esp + 0x60]
inc ecx
add ebx, 0x10
mov dword [esp + 0x40], ecx
movzx eax, word [eax + 0x22]
mov edx, eax
cwde
cmp ecx, eax
mov dword [esp + 0x7c], edx
mov eax, edx
jl 0x10129ac0
jmp 0x10129833
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x3c]
push ebx
push eax
mov dword [eax + 0x2c], 6
call fcn.1010fd40
mov ebp, dword [esp + 0x18]
add esp, 8
mov dword [esp + 0x78], 0
cmp dword [ebp + 0x14], 0
jle 0x1012cb0c
xor edi, edi
mov dword [esp + 0x74], edi
nop dword [eax]
test ebx, ebx
je 0x10129cb4
mov eax, dword [ebp + 0x10]
mov eax, dword [edi + eax]
test eax, eax
je 0x10129f82
push eax
push ebx
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10129f82
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x10]
mov edx, dword [eax + edi + 0xc]
add edx, 8
mov ebx, dword [edx + 4]
test ebx, ebx
je 0x10129e2e
nop dword [eax]
mov eax, dword [edx + 8]
dec ebx
mov dword [esp + 0x60], ebx
test eax, eax
je 0x10129e2e
mov ecx, dword [eax + 8]
cmp word [ecx + 0x22], 0
je 0x10129cf5
mov eax, dword [eax]
test eax, eax
jne 0x10129ce0
jmp 0x10129e2e
push dword [ecx]
push str.SELECTFROM__w_
push dword [esp + 0x18]
call fcn.10124b40
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x10129dea
push 0
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push 0
push 0
push 0xffffffffffffffff
push ebp
push dword [esp + 0x28]
call fcn.101247d0
mov edi, dword [esp + 0x38]
add esp, 0x1c
test edi, edi
je 0x10129dd9
mov ebx, dword [edi]
test ebx, ebx
jne 0x10129d72
push str.API_called_with_finalized_prepared_statement
push 0x15
call fcn.100c9ef0
push 0x10196e4c
push 0x15593
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.100c9ef0
add esp, 0x1c
jmp 0x10129dd5
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x10129d83
push eax
call dword [0x101a11a0]
add esp, 4
cmp dword [edi + 0x8c], 0
jl 0x10129da1
jg 0x10129d97
cmp dword [edi + 0x88], 0
jbe 0x10129da1
push edi
push ebx
call fcn.100f1bf0
add esp, 8
push edi
call fcn.10146690
push edi
mov dword [esp + 0x74], eax
call fcn.1013a1f0
mov eax, dword [esp + 0x74]
add esp, 8
cmp byte [ebx + 0x57], 0
jne 0x10129dc2
test eax, eax
je 0x10129dcc
push eax
push ebx
call fcn.100db280
add esp, 8
push ebx
call fcn.10123b60
add esp, 4
mov ebx, dword [esp + 0x60]
push ebp
push dword [esp + 0x14]
call fcn.10112cf0
mov edi, dword [esp + 0x7c]
add esp, 8
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x57], 0
je 0x10129e1c
push str.out_of_memory
push dword [eax + 0x10c]
call fcn.10114f40
mov eax, dword [esp + 0x18]
add esp, 8
mov eax, dword [eax + 0x10c]
mov dword [eax + 0xc], 7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
mov edx, dword [eax + edi + 0xc]
add edx, 8
test ebx, ebx
jne 0x10129cd0
mov edi, dword [edx + 8]
mov dword [esp + 0x68], edi
test edi, edi
je 0x10129f76
mov ecx, dword [esp + 0x18]
mov ebx, dword [edi + 8]
test ecx, ecx
je 0x10129e64
mov eax, dword [ebx]
test eax, eax
je 0x10129f68
push eax
push ecx
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10129f64
mov al, byte [ebx + 0x2b]
cmp al, 2
jne 0x10129e75
mov dword [esp + 0x2c], str.view
jmp 0x10129e9b
cmp al, 1
jne 0x10129e83
mov dword [esp + 0x2c], str.virtual
jmp 0x10129e9b
test dword [ebx + 0x1c], 0x1000
mov eax, str.shadow
mov ecx, str.table
cmove eax, ecx
mov dword [esp + 0x2c], eax
mov ebp, dword [ebx]
mov edx, 7
test ebp, ebp
je 0x10129f26
mov edi, ebp
mov ebx, str.sqlite_
mov al, byte [edi]
dec edx
test al, al
je 0x10129ed3
movzx ecx, byte [ebx]
movzx eax, al
mov al, byte [eax + 0x1018ff38]
cmp al, byte [ecx + 0x1018ff38]
jne 0x10129ed3
inc edi
inc ebx
test edx, edx
jg 0x10129eb1
dec edx
test edx, edx
js 0x10129eef
movzx eax, byte [edi]
movzx ecx, byte [eax + 0x1018ff38]
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x1018ff38]
sub ecx, eax
jne 0x10129f22
lea edi, [ebp + 7]
push 0x10192ecf
push edi
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10129f0b
mov ebp, str.sqlite_schema
jmp 0x10129f22
push 0x1019461b
push edi
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x10129f22
mov ebp, str.sqlite_temp_schema
mov edi, dword [esp + 0x68]
mov edx, dword [edi + 8]
mov ecx, dword [edx + 0x1c]
mov eax, ecx
shr eax, 0x10
and eax, 1
shr ecx, 7
push eax
movsx eax, word [edx + 0x22]
and ecx, 1
push ecx
mov ecx, dword [esp + 0x7c]
push eax
mov eax, dword [esp + 0x1c]
push dword [esp + 0x38]
push ebp
mov eax, dword [eax + 0x10]
push dword [eax + ecx]
push str.sssiii
push 1
push esi
call fcn.101459a0
add esp, 0x24
mov ecx, dword [esp + 0x18]
mov edi, dword [edi]
mov dword [esp + 0x68], edi
test edi, edi
jne 0x10129e41
mov ebp, dword [esp + 0x10]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x74]
mov eax, dword [esp + 0x78]
add edi, 0x10
inc eax
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], eax
cmp eax, dword [ebp + 0x14]
jl 0x10129c90
jmp 0x1012cb0c
test edx, edx
je 0x1012cb08
push dword [esp + 0x3c]
push edx
push dword [esp + 0x18]
call fcn.1011b260
mov edi, eax
add esp, 0xc
mov dword [esp + 0x2c], edi
test edi, edi
jne 0x1012a002
push dword [esp + 0x3c]
push dword [esp + 0x1c]
push 2
push dword [esp + 0x20]
call fcn.101245b0
add esp, 0x10
test eax, eax
je 0x1012cb08
test byte [eax + 0x1c], 0x80
je 0x1012cb08
push eax
call fcn.1012d2e0
mov edi, eax
mov dword [esp + 0x30], eax
add esp, 4
test edi, edi
je 0x1012cb08
push dword [edi + 0x18]
push dword [esp + 0x14]
call fcn.101303d0
mov ecx, dword [ebp + 8]
add esp, 8
or ecx, dword [ebp + 0xc]
mov edx, eax
je 0x1012a026
movzx eax, word [edi + 0x34]
mov ecx, 6
jmp 0x1012a02f
movzx eax, word [edi + 0x32]
mov ecx, 3
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x14]
push edx
push dword [esp + 0x18]
mov dword [eax + 0x2c], ecx
mov eax, dword [edi + 0xc]
mov dword [esp + 0x28], eax
call fcn.1010fdc0
xor edi, edi
add esp, 8
cmp word [esp + 0x5c], di
je 0x1012cb08
nop dword [eax + eax]
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
movzx eax, word [eax + edi*2]
movsx edx, ax
test ax, ax
jns 0x1012a077
xor eax, eax
jmp 0x1012a085
mov eax, dword [esp + 0x20]
mov ecx, edx
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
push eax
push edx
push edi
push str.iisX
push 1
push esi
call fcn.101459a0
mov eax, dword [ebp + 8]
add esp, 0x18
or eax, dword [ebp + 0xc]
je 0x1012a0cd
mov ecx, dword [esp + 0x2c]
movzx eax, word [ecx + 0x32]
cmp edi, eax
sbb eax, eax
neg eax
push eax
mov eax, dword [ecx + 0x20]
push dword [eax + edi*4]
mov eax, dword [ecx + 0x1c]
movzx eax, byte [eax + edi]
push eax
push str.isiX
push 4
push esi
call fcn.101459a0
add esp, 0x18
mov eax, dword [esp + 0x14]
mov ecx, dword [ebx]
mov edx, dword [eax + 0x2c]
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1012a0f0
push 0
push edx
push 1
push 0x54
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012a122
mov ebp, dword [esp + 0x78]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x5c]
inc edi
movzx eax, cx
cmp edi, eax
jl 0x1012a060
jmp 0x10129833
test edx, edx
je 0x1012cb08
push dword [esp + 0x3c]
push edx
push dword [esp + 0x18]
call fcn.1011b310
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1012cb08
push dword [edi + 0x3c]
push dword [esp + 0x14]
call fcn.101303d0
mov ecx, dword [esp + 0x1c]
push eax
push ecx
mov dword [ecx + 0x2c], 5
call fcn.1010fdc0
mov edi, dword [edi + 8]
add esp, 0x10
xor ebx, ebx
test edi, edi
je 0x1012cb08
mov dword [esp + 0xa0], 0x101954fc
mov dword [esp + 0xa4], 0x10195500
mov dword [esp + 0xa8], 0x10191600
nop dword [eax]
xor eax, eax
cmp dword [edi + 0x24], eax
setne al
push eax
mov eax, dword [edi + 0x38]
and eax, 3
push dword [esp + eax*4 + 0xa4]
xor eax, eax
cmp byte [edi + 0x36], al
setne al
push eax
push dword [edi]
push ebx
push str.isisi
push 1
push esi
call fcn.101459a0
mov edi, dword [edi + 0x14]
add esp, 0x20
inc ebx
test edi, edi
jne 0x1012a1b0
jmp 0x10129833
mov eax, dword [esp + 0x14]
xor edi, edi
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 3
cmp dword [ebp + 0x14], edi
jle 0x1012cb0c
xor ebx, ebx
nop dword [eax + eax]
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + ebx + 4]
test eax, eax
je 0x1012a248
mov eax, dword [eax + 4]
mov eax, dword [eax]
cmp byte [eax + 0xf], 0
je 0x1012a22d
mov eax, 0x1018e588
jmp 0x1012a233
mov eax, dword [eax + 0xb8]
push eax
push dword [ecx + ebx]
push edi
push 0x1019550c
push 1
push esi
call fcn.101459a0
add esp, 0x18
inc edi
add ebx, 0x10
cmp edi, dword [ebp + 0x14]
jl 0x1012a210
jmp 0x1012cb0c
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 2
mov edi, dword [edi + 0x1b8]
test edi, edi
je 0x1012cb08
mov eax, dword [edi + 8]
push dword [eax]
push ebx
push 0x10195510
push 1
push esi
call fcn.101459a0
mov edi, dword [edi]
add esp, 0x14
inc ebx
test edi, edi
jne 0x1012a275
jmp 0x1012cb08
mov eax, dword [esp + 0x10]
mov ebp, 0x101a3ab0
mov ebx, dword [eax + 0x18]
mov eax, dword [esp + 0x14]
shr ebx, 5
and ebx, 1
mov dword [eax + 0x2c], 6
mov edi, dword [ebp]
test edi, edi
je 0x1012a2d4
nop dword [eax + eax]
push ebx
push 1
push edi
push esi
call fcn.100fe890
mov edi, dword [edi + 0x24]
add esp, 0x10
test edi, edi
jne 0x1012a2c0
add ebp, 4
cmp ebp, 0x101a3b0c
jl 0x1012a2b4
mov edi, dword [esp + 0x10]
mov edi, dword [edi + 0x1a8]
test edi, edi
je 0x1012cb08
push ebx
push 0
push dword [edi + 8]
push esi
call fcn.100fe890
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x1012a2f1
jmp 0x1012cb08
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 1
mov edi, dword [edi + 0x18c]
test edi, edi
je 0x1012cb08
nop dword [eax + eax]
mov eax, dword [edi + 8]
push dword [eax + 4]
push 0x101934d0
push 1
push esi
call fcn.101459a0
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x1012a330
jmp 0x1012cb08
mov edi, 0x1018f540
push dword [edi]
push 0x101934d0
push 1
push esi
call fcn.101459a0
add edi, 0x10
add esp, 0x10
cmp edi, 0x1018f970
jl 0x1012a356
jmp 0x1012cb08
test edx, edx
je 0x1012cb08
push dword [esp + 0x3c]
push edx
push dword [esp + 0x18]
call fcn.1011b310
add esp, 0xc
mov dword [esp + 0x20], eax
test eax, eax
je 0x1012cb08
cmp byte [eax + 0x2b], 0
jne 0x1012cb08
mov edi, dword [eax + 0x30]
test edi, edi
je 0x1012cb08
push dword [eax + 0x3c]
push dword [esp + 0x14]
call fcn.101303d0
mov ecx, dword [esp + 0x1c]
xor ebp, ebp
push eax
push ecx
mov dword [esp + 0x3c], ebp
mov dword [ecx + 0x2c], 8
call fcn.1010fdc0
add esp, 0x10
nop dword [eax]
xor ebx, ebx
cmp dword [edi + 0x14], ebx
jle 0x1012a49a
lea ebp, [edi + 0x24]
nop
movzx eax, byte [edi + 0x1a]
add eax, 0xfffffff9
cmp eax, 3
ja case.default.0x1012a3fc
jmp dword [eax*4 + 0x1012cbf4]
mov ecx, str.SET_NULL
jmp 0x1012a424
mov ecx, str.SET_DEFAULT
jmp 0x1012a424
mov ecx, str.CASCADE
jmp 0x1012a424
mov ecx, str.RESTRICT
jmp 0x1012a424
mov ecx, str.NO_ACTION
movzx eax, byte [edi + 0x19]
add eax, 0xfffffff9
cmp eax, 3
ja case.default.0x1012a430
jmp dword [eax*4 + 0x1012cc04]
mov eax, str.SET_NULL
jmp 0x1012a458
mov eax, str.SET_DEFAULT
jmp 0x1012a458
mov eax, str.CASCADE
jmp 0x1012a458
mov eax, str.RESTRICT
jmp 0x1012a458
mov eax, str.NO_ACTION
push str.NONE
push eax
mov eax, dword [esp + 0x28]
push ecx
push dword [ebp + 4]
mov ecx, dword [ebp]
mov eax, dword [eax + 4]
add ecx, ecx
push dword [eax + ecx*8]
push dword [edi + 8]
push ebx
push dword [esp + 0x48]
push str.iissssss
push 1
push esi
call fcn.101459a0
inc ebx
add esp, 0x2c
add ebp, 8
cmp ebx, dword [edi + 0x14]
jl 0x1012a3f0
mov ebp, dword [esp + 0x2c]
mov edi, dword [edi + 4]
inc ebp
mov dword [esp + 0x2c], ebp
test edi, edi
jne 0x1012a3e0
jmp 0x10129833
mov ebp, dword [esp + 0x14]
mov eax, dword [ebp + 0x2c]
lea ecx, [eax + 1]
add eax, 5
mov dword [ebp + 0x2c], eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x54]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 0xc]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x1012cb08
test edx, edx
je 0x1012a4f9
push dword [esp + 0x3c]
push edx
push 0
push ebp
call fcn.101245b0
add esp, 0x10
xor ecx, ecx
jmp 0x1012a4fe
mov eax, dword [ecx + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x34], eax
test eax, eax
je 0x1012abd7
cmp byte [eax + 0x2b], 0
jne 0x1012abd7
cmp dword [eax + 0x30], 0
je 0x1012abd7
mov ecx, dword [eax + 0x3c]
mov edi, 0xffff8000
test ecx, ecx
je 0x1012a548
mov eax, dword [esp + 0x10]
xor edi, edi
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], ecx
je 0x1012a548
nop
lea eax, [eax + 0x10]
inc edi
cmp dword [eax], ecx
jne 0x1012a540
mov eax, dword [esp + 0x10]
mov edx, edi
shl edx, 4
mov ecx, edi
mov dword [esp + 0x70], edx
mov eax, dword [eax + 0x10]
mov eax, dword [edx + eax]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 0x78]
test eax, eax
cmovne ebp, eax
mov eax, 1
shl eax, cl
mov ecx, dword [ebp + 0x58]
test ecx, eax
jne 0x1012a670
bts ecx, edi
mov dword [ebp + 0x58], ecx
cmp edi, 1
jne 0x1012a679
push ebp
call fcn.101258f0
add esp, 4
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
movsx eax, word [ebp + 0x22]
add eax, dword [esp + 0x58]
cmp eax, dword [ecx + 0x2c]
jle 0x1012a5ab
mov dword [ecx + 0x2c], eax
push 0x70
push ebp
push edi
push 0
push ecx
call fcn.101255d0
push 0
push dword [ebp]
push 0
push dword [esp + 0x70]
push 0
push 0x75
push esi
call fcn.10139bc0
mov ebp, dword [ebp + 0x30]
add esp, 0x30
mov eax, 1
mov dword [esp + 0x40], eax
test ebp, ebp
je 0x1012a6e3
push dword [esp + 0x3c]
push dword [ebp + 8]
push dword [esp + 0x18]
call fcn.1011b310
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x1012a6cb
mov dword [esp + 0x54], 0
cmp edi, 1
je 0x1012a635
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x70]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x10]
mov eax, dword [ecx + eax + 4]
cmp byte [eax + 9], 0
je 0x1012a635
push dword [ebx]
push 0
push dword [ebx + 0x14]
push edi
push edx
call fcn.100f5930
add esp, 0x14
push 0
lea eax, [esp + 0x58]
push eax
push ebp
push ebx
push dword [esp + 0x24]
call fcn.1011cc00
add esp, 0x14
test eax, eax
jne 0x1012cb08
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x1012a6ab
push 0x70
push ebx
push edi
push dword [esp + 0x4c]
push dword [esp + 0x24]
call fcn.101255d0
add esp, 0x14
jmp 0x1012a6cb
cmp edi, 1
je 0x1012a593
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 4]
cmp byte [eax + 9], 0
je 0x1012a597
push dword [ebp]
push 0
push dword [ebp + 0x14]
push edi
push ecx
call fcn.100f5930
add esp, 0x14
jmp 0x1012a597
push edi
push dword [eax + 0x2c]
push dword [esp + 0x48]
push 0x70
push esi
call fcn.10139b60
push dword [esp + 0x68]
push dword [esp + 0x2c]
call fcn.10146ae0
add esp, 0x1c
mov eax, dword [esp + 0x40]
mov ebp, dword [ebp + 4]
inc eax
mov dword [esp + 0x40], eax
test ebp, ebp
jne 0x1012a5e3
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
cmp dword [ecx + 0x28], eax
jge 0x1012a6ef
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x44]
mov edi, dword [ebx]
mov dword [esp + 0x5c], edi
cmp dword [eax], edi
jg 0x1012a722
push 0
push 0
push 0
push 0x24
push esi
call fcn.100f0a80
mov dword [esp + 0x70], eax
add esp, 0x14
mov eax, dword [esp + 0x80]
add eax, 0x68
mov dword [esp + 0x4c], eax
jmp 0x1012a75a
lea eax, [edi + 1]
mov dword [ebx], eax
lea edx, [esi + 0x68]
mov eax, dword [edx]
lea ecx, [edi + edi*4]
mov dword [esp + 0x4c], edx
mov dword [eax + ecx*4], 0x24
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x34]
mov dword [esp + 0x48], 1
mov ebp, dword [eax + 0x30]
mov dword [esp + 0x38], ebp
test ebp, ebp
je 0x1012ab51
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
add eax, 2
mov dword [esp + 0x70], eax
push dword [esp + 0x3c]
push dword [ebp + 8]
push ecx
call fcn.1011b310
xor edi, edi
mov dword [esp + 0x2c], eax
add esp, 0xc
mov dword [esp + 0x54], 0
mov dword [esp + 0x1c], edi
test eax, eax
je 0x1012a7c6
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x58]
push ecx
push ebp
push eax
push dword [esp + 0x24]
call fcn.1011cc00
mov edi, dword [esp + 0x30]
add esp, 0x14
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x58]
dec dword [ecx + 0x38]
mov eax, dword [ebp + 0x14]
mov ebx, dword [ecx + 0x38]
add eax, edx
mov dword [esp + 0x2c], ebx
cmp eax, dword [ecx + 0x2c]
jle 0x1012a7e5
mov dword [ecx + 0x2c], eax
mov ecx, dword [esp + 0x38]
xor ebp, ebp
mov eax, dword [ecx + 0x14]
test eax, eax
jle 0x1012a88c
add ecx, 0x24
mov ebx, edx
mov dword [esp + 0x1c], ecx
nop
lea eax, [edi + ebp*4]
test edi, edi
jne 0x1012a809
mov eax, ecx
mov eax, dword [eax]
push ebx
push eax
push 0
push dword [esp + 0x40]
push esi
call fcn.101160f0
mov edx, dword [esp + 0x38]
add esp, 0x14
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1012a83e
push 0
push dword [esp + 0x30]
push ebx
push 0x32
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012a86c
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x38]
inc ebp
mov ecx, dword [esp + 0x1c]
inc ebx
add ecx, 8
mov dword [esp + 0x1c], ecx
mov eax, dword [eax + 0x14]
cmp ebp, eax
jl 0x1012a800
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x1012a8d2
push eax
push ecx
push dword [esp + 0x18]
call fcn.10121550
mov ebp, dword [esp + 0x44]
add esp, 8
push eax
push 0
push dword [ebp + 0x14]
push dword [esp + 0x68]
push 0x60
push esi
call fcn.10139bc0
push dword [ebp + 0x14]
mov edx, dword [esp + 0x68]
push dword [esp + 0x78]
push ebx
push edx
push 0x1d
push esi
call fcn.10139c40
add esp, 0x34
jmp 0x1012a939
cmp dword [esp + 0x20], 0
je 0x1012a939
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
lea ebp, [ecx + 2]
cmp dword [eax], ecx
jg 0x1012a901
push dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
push ebp
push edx
push 0x1e
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012a92f
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4], 0x1e
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
push ebx
push esi
call fcn.10143940
add esp, 8
mov ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
test byte [ebp + 0x1c], 0x80
mov ecx, dword [edx]
mov eax, dword [eax]
jne 0x1012a97f
cmp eax, ecx
jg 0x1012a964
mov eax, dword [esp + 0x50]
push 0
inc eax
push eax
push 0
push 0x87
jmp 0x1012a98f
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
lea edx, [esi + 0x68]
mov dword [esp + 0x4c], edx
mov dword [eax + ecx*4], 0x87
jmp 0x1012a9c0
cmp eax, ecx
jg 0x1012a9a8
mov eax, dword [esp + 0x50]
push 0
inc eax
push eax
push 0
push 0x4b
push esi
call fcn.100f0a80
mov eax, dword [esp + 0x94]
add esp, 0x14
add eax, 0x68
mov dword [esp + 0x4c], eax
jmp 0x1012a9e1
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
lea eax, [esi + 0x68]
mov dword [esp + 0x4c], eax
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x4b
mov edx, dword [esp + 0x50]
mov dword [eax + ecx*4 + 0x10], 0
inc edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 4], 0
mov eax, dword [esp + 0x48]
mov ebp, dword [esp + 0x38]
dec eax
push eax
push dword [ebp + 8]
push 0x10195528
push dword [esp + 0x7c]
push esi
call fcn.101459a0
mov edx, dword [esp + 0x38]
add esp, 0x14
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1012aa27
push 0
push 4
push dword [esp + 0x58]
push 0x54
push esi
call fcn.100f0a80
mov edx, dword [esp + 0x38]
add esp, 0x14
jmp 0x1012aa60
mov ebp, dword [esp + 0x50]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 4], ebp
mov ebp, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 8], 4
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012aa7a
push ebx
push esi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012aa82
mov ecx, dword [ecx + 0x40]
mov eax, dword [edx]
mov dword [ecx + ebx*4], eax
mov ecx, dword [esp + 0x10]
test edi, edi
je 0x1012ab3a
cmp edi, dword [ecx + 0x164]
jae 0x1012aacc
cmp edi, dword [ecx + 0x15c]
jb 0x1012aab1
mov eax, dword [ecx + 0x158]
mov dword [edi], eax
mov dword [ecx + 0x158], edi
jmp 0x1012ab3a
cmp edi, dword [ecx + 0x160]
jb 0x1012aacc
mov eax, dword [ecx + 0x150]
mov dword [edi], eax
mov dword [ecx + 0x150], edi
jmp 0x1012ab3a
cmp dword [ecx + 0x210], 0
je 0x1012aae1
push edi
push ecx
call fcn.100f69f0
add esp, 8
jmp 0x1012ab36
cmp dword [0x101a1150], 0
je 0x1012ab2c
mov eax, dword [0x101a3b70]
test eax, eax
je 0x1012aafd
push eax
call dword [0x101a11a0]
add esp, 4
push edi
call dword [0x101a117c]
sub dword [0x101a3b10], eax
dec dword [0x101a3b34]
push edi
call dword [0x101a1174]
mov eax, dword [0x101a3b70]
add esp, 8
test eax, eax
je 0x1012ab36
push eax
call dword [0x101a11a8]
jmp 0x1012ab33
push edi
call dword [0x101a1174]
add esp, 4
mov ecx, dword [esp + 0x10]
mov ebp, dword [ebp + 4]
inc dword [esp + 0x48]
mov dword [esp + 0x38], ebp
test ebp, ebp
jne 0x1012a784
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
mov ecx, dword [ebx]
lea edi, [ebp + 1]
cmp dword [eax], ecx
jg 0x1012ab78
push 0
push edi
push 0
push 0x27
push esi
call fcn.100f0a80
mov edx, dword [esp + 0x60]
add esp, 0x14
jmp 0x1012abad
mov edx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov ebp, dword [esp + 0x5c]
lea ecx, [ecx + ecx*4]
mov dword [ebx], eax
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edi, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1012abbe
mov eax, 0x101a3d48
jmp 0x1012abcc
mov eax, dword [edx]
lea ecx, [ebp*4]
add ecx, ebp
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x14]
mov dword [eax + 8], edi
test ecx, ecx
je 0x1012cb08
mov edx, dword [esp + 0x18]
jmp 0x1012a4e1
test edx, edx
je 0x1012cb08
push 0
push edx
call fcn.1011fdb0
mov ebx, dword [esp + 0x18]
movzx eax, al
push eax
push ebx
call fcn.1012e3e0
push dword [esp + 0x40]
push ebx
call fcn.10112cf0
mov eax, dword [esp + 0x30]
add esp, 0x18
jmp 0x1012cb21
mov edi, dword [esp + 0x38]
xor eax, eax
mov ebp, dword [esp + 0x14]
or ecx, 0xffffffff
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x30]
movzx eax, byte [eax]
mov al, byte [eax + 0x1018ff38]
mov byte [esp + 0x67], al
mov eax, dword [esp + 0x34]
cmp dword [eax], 0
mov eax, 0x64
mov dword [ebp + 0x2c], 6
cmove edi, ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x5c], eax
test edx, edx
je 0x1012acbe
lea eax, [esp + 0x5c]
push eax
push edx
call fcn.10120010
add esp, 8
test eax, eax
je 0x1012ac89
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x2c], eax
test eax, eax
jg 0x1012acbe
mov eax, 0x64
jmp 0x1012acba
test edi, edi
js 0x1012ac9d
mov eax, dword [esp + 0x10]
mov ecx, edi
add ecx, ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8]
jmp 0x1012ac9f
xor eax, eax
push eax
push dword [esp + 0x1c]
push 0
push ebp
call fcn.101245b0
mov dword [esp + 0x84], eax
add esp, 0x10
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x2c], eax
push 1
lea ecx, [eax - 1]
push ecx
push 0x47
push esi
call fcn.10139b00
mov eax, dword [esp + 0x20]
xor ecx, ecx
add esp, 0x10
mov dword [esp + 0x54], ecx
cmp dword [eax + 0x14], ecx
jle 0x1012afbf
mov dword [esp + 0x9c], 0x10
nop dword [eax]
xor eax, eax
test edi, edi
js 0x1012acfe
cmp ecx, edi
jne 0x1012afad
mov eax, dword [ebp + 0x78]
mov edx, ebp
test eax, eax
cmovne edx, eax
mov eax, 1
shl eax, cl
mov edi, dword [edx + 0x58]
test edi, eax
jne 0x1012ad2e
bts edi, ecx
mov dword [edx + 0x58], edi
cmp ecx, 1
jne 0x1012ad2e
push edx
call fcn.101258f0
mov ecx, dword [esp + 0x58]
add esp, 4
mov eax, dword [esp + 0x10]
mov edx, ecx
shl edx, 4
xor ecx, ecx
mov dword [esp + 0x70], edx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 0xc]
mov dword [esp + 0x1c], eax
mov ebp, dword [eax + 0x10]
test ebp, ebp
je 0x1012afa1
mov edx, dword [esp + 0x74]
mov ebx, ecx
nop dword [eax]
mov edi, dword [ebp + 8]
test edx, edx
je 0x1012ad6b
cmp edx, edi
jne 0x1012ad92
test byte [edi + 0x1c], 0x80
lea eax, [ecx + 1]
cmovne eax, ecx
xor edx, edx
mov ecx, eax
mov eax, dword [edi + 8]
test eax, eax
je 0x1012ad89
mov eax, dword [eax + 0x14]
inc ecx
inc edx
test eax, eax
jne 0x1012ad80
cmp edx, ebx
cmovg ebx, edx
mov edx, dword [esp + 0x74]
mov ebp, dword [ebp]
test ebp, ebp
jne 0x1012ad60
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x24]
test ecx, ecx
je 0x1012afa1
test edx, edx
lea eax, [ecx + 1]
push ebp
cmove eax, ecx
lea eax, [eax*4 + 4]
push eax
push dword [esp + 0x18]
call fcn.10112e00
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1012afbf
xor edx, edx
cmp dword [esp + 0x74], edx
je 0x1012adde
lea edx, [ebp + 1]
mov dword [edi + 4], ebp
mov ebp, dword [esp + 0x1c]
mov ebp, dword [ebp + 0x10]
test ebp, ebp
je 0x1012ae2d
mov eax, dword [esp + 0x68]
mov esi, dword [esp + 0x74]
mov dword [esp + 0x68], eax
mov ecx, dword [ebp + 8]
test esi, esi
je 0x1012ae00
cmp esi, ecx
jne 0x1012ae22
test byte [ecx + 0x1c], 0x80
jne 0x1012ae0d
mov eax, dword [ecx + 0x14]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x1012ae22
mov eax, dword [ecx + 0x2c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1012ae14
mov ebp, dword [ebp]
test ebp, ebp
jne 0x1012adf5
mov esi, dword [esp + 0x48]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
push 0xfffffffffffffff2
push edi
push 1
mov dword [edi], edx
add eax, 8
mov ecx, dword [ebp + 0x2c]
cmp ecx, eax
push edx
push 2
cmovle ecx, eax
mov byte [ebp + 0x13], 0
push 0x9b
push esi
mov dword [ebp + 0x2c], ecx
mov dword [ebp + 0x1c], 0
call fcn.10139bc0
mov eax, dword [ebx]
add esp, 0x1c
test eax, eax
jle 0x1012ae83
mov ecx, dword [esp + 0x54]
lea ebp, [esi + 0x68]
movzx edx, cl
lea ecx, [eax + eax*4]
mov eax, dword [ebp]
mov word [eax + ecx*4 - 0x12], dx
jmp 0x1012ae8d
mov ebp, dword [esp + 0x80]
add ebp, 0x68
mov eax, dword [esp + 0x44]
mov edi, dword [ebx]
mov dword [esp + 0x28], ebp
cmp dword [eax], edi
jg 0x1012aeb0
push 0
push 0
push 2
push 0x32
push esi
call fcn.100f0a80
add esp, 0x14
mov edi, eax
jmp 0x1012aee2
lea eax, [edi + 1]
mov dword [ebx], eax
lea ecx, [edi + edi*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
push 0xfffffffffffffffa
mov eax, dword [edx + 0x10]
push dword [eax + ecx]
push str._in_database__s__n
push edx
call fcn.10124b40
add esp, 0xc
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012af2f
push 3
push 3
push 2
push 0x6f
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012af61
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.100f1a30
mov eax, dword [esi]
add esp, 4
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1012af7f
mov edi, dword [esp + 0x28]
mov eax, 0x101a3d48
jmp 0x1012af8b
lea ecx, [edi + edi*4]
mov edi, dword [esp + 0x28]
mov eax, dword [edi]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x1c]
mov ebp, dword [eax + 0x10]
mov dword [esp + 0x1c], ebp
test ebp, ebp
jne 0x1012b014
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x54]
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x54], ecx
cmp ecx, dword [eax + 0x14]
jl 0x1012acf0
push 0
push 0x1018faac
push 7
push esi
call fcn.10139cd0
add esp, 0x10
test eax, eax
je 0x1012aff7
mov ecx, 1
mov byte [eax + 0x29], 0xff
sub ecx, dword [esp + 0x2c]
mov dword [eax + 8], ecx
mov dword [eax + 0x38], 0x10195640
mov byte [eax + 0x65], 0xff
mov dword [eax + 0x74], str.database_disk_image_is_malformed
mov eax, dword [ebx]
sub eax, 2
push eax
push 0
push esi
call fcn.10139f90
jmp 0x1012cb05
mov ebp, dword [esp + 0x1c]
mov ebp, dword [ebp + 8]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x70], 0
mov dword [esp + 0x40], 0xffffffff
cmp byte [ebp + 0x2b], 0
jne 0x1012c2cd
mov eax, dword [esp + 0x74]
test eax, eax
je 0x1012b045
cmp eax, ebp
jne 0x1012c2cd
cmp byte [esp + 0x67], 0x71
je 0x1012b14d
test byte [ebp + 0x1c], 0x80
je 0x1012b14d
mov ecx, dword [ebp + 8]
mov dword [esp + 0x50], ecx
test ecx, ecx
je 0x1012b079
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x1012b075
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1012b065
mov dword [esp + 0x50], ecx
movzx ecx, word [ecx + 0x32]
cmp ecx, 1
jne 0x1012b0ae
mov ecx, dword [esp + 0x14]
mov al, byte [ecx + 0x13]
test al, al
jne 0x1012b099
inc dword [ecx + 0x2c]
mov eax, dword [ecx + 0x2c]
mov dword [esp + 0x4c], eax
jmp 0x1012b0ed
dec al
mov byte [ecx + 0x13], al
movzx eax, al
mov eax, dword [ecx + eax*4 + 0x9c]
mov dword [esp + 0x4c], eax
jmp 0x1012b0ed
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x20]
mov dword [esp + 0x4c], edx
mov edx, dword [eax + 0x1c]
cmp ecx, edx
jg 0x1012b0da
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
add eax, ecx
sub edx, ecx
mov dword [edi + 0x20], eax
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [eax + 0x1c], edx
jmp 0x1012b0ed
mov eax, dword [eax + 0x2c]
lea edx, [eax + 1]
add eax, ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x4c], edx
mov dword [ecx + 0x2c], eax
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov ecx, dword [ebx]
dec edx
movzx eax, word [eax + 0x32]
add edx, eax
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1012b11a
push edx
push dword [esp + 0x50]
push 1
push 0x4b
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012b15d
mov esi, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4 + 8], esi
mov esi, dword [esp + 0x48]
mov dword [eax + ecx*4], 0x4b
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1012b15d
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov ecx, 8
mov eax, ebp
add eax, ecx
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x38]
push eax
push 0
push 1
push 0
push 0x70
push ebp
push dword [esp + 0x30]
call fcn.101256d0
mov eax, dword [esp + 0x64]
add esp, 0x20
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012b1a6
push 0
push 7
push 0
push 0x47
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012b1d7
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 7
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x5c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x1012b24e
mov edx, dword [esp + 0x24]
mov edi, 8
mov ebp, dword [esp + 0x28]
nop
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1012b210
push 0
push edi
push 0
push 0x47
push esi
call fcn.100f0a80
mov edx, dword [esp + 0x38]
add esp, 0x14
jmp 0x1012b242
mov esi, dword [esp + 0x48]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [ebx + 0x14]
inc edi
test ebx, ebx
jne 0x1012b1f0
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012b275
push 0
push 0
push dword [esp + 0x3c]
push 0x24
push esi
call fcn.100f0a80
mov edi, dword [esp + 0x3c]
add esp, 0x14
jmp 0x1012b2aa
mov edi, dword [esp + 0x28]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x34]
lea ecx, [ecx + ecx*4]
mov dword [ebx], eax
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x24
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x44]
mov ecx, dword [ebx]
mov dword [esp + 0x6c], ecx
cmp dword [eax], ecx
jg 0x1012b2cf
push 0
push 1
push 7
push 0x56
push esi
call fcn.100f0a80
add esp, 0x14
mov dword [esp + 0x6c], eax
jmp 0x1012b300
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movsx edx, word [ebp + 0x22]
sub edx, 1
js 0x1012b370
mov ecx, edx
shl ecx, 4
add ecx, 0xe
add ecx, dword [ebp + 4]
test byte [ecx], 0x20
jne 0x1012b321
movsx eax, word [ebp + 0x20]
cmp eax, edx
jne 0x1012b32b
sub ecx, 0x10
sub edx, 1
jns 0x1012b314
jmp 0x1012b370
test edx, edx
js 0x1012b370
push 3
push edx
push dword [esp + 0x3c]
push ebp
push esi
call fcn.101160f0
mov eax, dword [esi]
add esp, 0x14
cmp byte [eax + 0x57], 0
je 0x1012b34f
mov eax, 0x101a3d48
jmp 0x1012b35c
mov eax, dword [ebx]
lea ecx, [eax + eax*4]
mov eax, dword [edi]
lea eax, [eax + ecx*4]
add eax, 0xffffffec
cmp dword [eax + 0xc], 3
jne 0x1012b370
cmp byte [eax], 0x5e
jne 0x1012b370
mov ecx, 0x80
or word [eax + 2], cx
cmp byte [esp + 0x67], 0x71
je 0x1012b49e
mov eax, dword [esp + 0x50]
test eax, eax
je 0x1012b49e
movzx eax, word [eax + 0x32]
push eax
push dword [esp + 0x50]
push 0
push dword [esp + 0x40]
push 0x29
push esi
call fcn.10139c40
mov ecx, dword [ebx]
mov edi, eax
mov eax, dword [esp + 0x5c]
add esp, 0x18
cmp dword [eax], ecx
jg 0x1012b3c2
push 0
push 0
push dword [esp + 0x54]
push 0x32
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012b3f7
mov edx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
push dword [ebp]
push str.row_not_in_PRIMARY_KEY_order_for__s
push dword [esp + 0x18]
call fcn.10124b40
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
push esi
call fcn.100f1a30
mov eax, dword [esi]
lea ecx, [edi + edi*4]
mov edx, dword [ebx]
add esp, 0x2c
mov edi, dword [esp + 0x28]
shl ecx, 2
cmp byte [eax + 0x57], 0
je 0x1012b43d
mov eax, 0x101a3d48
jmp 0x1012b441
mov eax, dword [edi]
add eax, ecx
mov dword [eax + 8], edx
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1012b455
mov eax, 0x101a3d50
jmp 0x1012b45c
mov eax, dword [edi]
add eax, 0x1c
add eax, ecx
mov dword [eax], edx
xor ecx, ecx
mov eax, dword [esp + 0x50]
xor edi, edi
cmp cx, word [eax + 0x32]
jae 0x1012b49e
mov esi, dword [esp + 0x14]
mov ebx, eax
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x4c]
add eax, edi
push eax
push edi
push ebp
push ebx
push esi
call fcn.10116e60
movzx eax, word [ebx + 0x32]
inc edi
add esp, 0x14
cmp edi, eax
jl 0x1012b476
mov esi, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x3c]
mov edx, dword [esp + 0x3c]
xor eax, eax
movzx edi, word [ebp + 0x1e]
xor ebp, ebp
and edi, 1
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], edi
cmp ax, word [edx + 0x22]
jge 0x1012baaa
mov dword [esp + 0x68], eax
nop dword [eax]
mov edx, dword [edx + 4]
add edx, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x78], edx
movsx eax, word [eax + 0x20]
cmp ebp, eax
je 0x1012ba85
lea ecx, [edx + 4]
mov dword [esp + 0x90], ecx
test edi, edi
je 0x1012b50b
mov eax, dword [ecx]
and eax, 0xf0
cmp dword [esp + 0x9c], eax
sbb eax, eax
neg eax
jmp 0x1012b51b
xor eax, eax
mov dword [esp + 0x90], ecx
cmp byte [edx + 8], 0x41
setg al
test byte [ecx], 0xf
mov dword [esp + 0x8c], eax
jne 0x1012b52f
test eax, eax
je 0x1012ba85
test byte [edx + 0xe], 0x20
mov dword [esp + 0x7c], 5
je 0x1012b560
push 3
push ebp
push dword [esp + 0x3c]
push dword [esp + 0x48]
push esi
call fcn.101160f0
add esp, 0x14
or edx, 0xffffffff
mov dword [esp + 0x58], edx
lea edi, [edx + 4]
jmp 0x1012b708
movzx eax, word [edx + 0xc]
mov ebx, dword [esp + 0x3c]
test ax, ax
je 0x1012b6a7
cmp byte [ebx + 0x2b], 0
mov dword [esp + 0x60], 0
jne 0x1012b6a7
mov ecx, dword [ebx + 0x34]
test ecx, ecx
je 0x1012b6a7
cmp dword [ecx], eax
jl 0x1012b6a7
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 - 0xc]
test ecx, ecx
je 0x1012b6a7
push 0
lea eax, [esp + 0x64]
push eax
movzx eax, byte [edx + 8]
mov edx, dword [esp + 0x18]
push eax
movzx eax, byte [edx + 0x54]
push eax
push ecx
push edx
call fcn.10155170
mov edi, dword [esp + 0x78]
add esp, 0x18
test edi, edi
je 0x1012b6a7
movzx ecx, word [edi + 0x10]
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x1018e9e8]
mov dword [esp + 0x7c], eax
test ecx, 0x9000
jne 0x1012b5f2
cmp dword [edi + 0x18], 0
je 0x1012b5fb
push edi
call fcn.101566b0
add esp, 4
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x1012b652
cmp edi, dword [ecx + 0x164]
jae 0x1012b63d
cmp edi, dword [ecx + 0x15c]
jb 0x1012b625
mov eax, dword [ecx + 0x158]
mov dword [edi], eax
mov dword [ecx + 0x158], edi
jmp 0x1012b6a7
cmp edi, dword [ecx + 0x160]
jb 0x1012b63d
mov eax, dword [ecx + 0x150]
mov dword [edi], eax
mov dword [ecx + 0x150], edi
jmp 0x1012b6a7
cmp dword [ecx + 0x210], 0
je 0x1012b652
push edi
push ecx
call fcn.100f69f0
add esp, 8
jmp 0x1012b6a7
cmp dword [0x101a1150], 0
je 0x1012b69d
mov eax, dword [0x101a3b70]
test eax, eax
je 0x1012b66e
push eax
call dword [0x101a11a0]
add esp, 4
push edi
call dword [0x101a117c]
sub dword [0x101a3b10], eax
dec dword [0x101a3b34]
push edi
call dword [0x101a1174]
mov eax, dword [0x101a3b70]
add esp, 8
test eax, eax
je 0x1012b6a7
push eax
call dword [0x101a11a8]
jmp 0x1012b6a4
push edi
call dword [0x101a1174]
add esp, 4
test byte [ebx + 0x1c], 0x80
mov edi, dword [esp + 0x34]
mov dword [esp + 0x58], edi
je 0x1012b6f7
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax]
test ecx, ecx
je 0x1012b6d0
nop
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x1012b6d0
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1012b6c0
movzx edi, word [ecx + 0x34]
xor edx, edx
test edi, edi
je 0x1012b6ed
mov eax, dword [ecx + 4]
nop dword [eax]
cmp bp, word [eax]
je 0x1012b6f2
inc edx
add eax, 2
cmp edx, edi
jl 0x1012b6e0
or eax, 0xffffffff
jmp 0x1012b701
movzx eax, dx
jmp 0x1012b701
push ebp
push ebx
call fcn.10135680
add esp, 8
mov edx, dword [esp + 0x58]
movsx edi, ax
mov ebx, dword [esp + 0x14]
mov ebp, esi
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x60], ecx
mov eax, dword [ebx + 0x38]
dec eax
mov dword [esp + 0x84], eax
dec eax
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x90]
mov dword [esp + 0x48], eax
test byte [ebx], 0xf
mov ebx, dword [esp + 0x24]
je 0x1012b7ee
push dword [esp + 0x7c]
push edi
push eax
push edx
push 0x12
push esi
call fcn.10139c40
mov ecx, dword [ebx]
add esp, 0x18
mov dword [esp + 0x88], eax
test ecx, ecx
jle 0x1012b772
mov eax, dword [esp + 0x28]
lea edx, [ecx + ecx*4]
mov ecx, dword [eax]
mov eax, 0xf
mov word [ecx + edx*4 - 0x12], ax
mov eax, dword [esp + 0x78]
push dword [eax]
mov eax, dword [esp + 0x40]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x1c]
call fcn.10124b40
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
mov edx, dword [esp + 0xb8]
add esp, 0x2c
test edx, edx
je 0x1012b8c0
push dword [esp + 0x84]
push esi
call fcn.10143940
mov eax, dword [esi]
add esp, 8
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1012b7d0
mov eax, 0x101a3d48
jmp 0x1012b7e3
mov eax, dword [esp + 0x88]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x60]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x8c]
cmp dword [esp + 0x94], 0
je 0x1012b9b7
test edx, edx
je 0x1012b8cd
push dword [esp + 0x7c]
push edi
mov edi, dword [esp + 0x60]
push eax
push edi
push 0x12
push esi
call fcn.10139c40
mov ecx, dword [ebx]
add esp, 0x18
test ecx, ecx
jle 0x1012b84b
mov eax, dword [esp + 0x90]
lea ecx, [ecx + ecx*4]
mov eax, dword [eax]
shr eax, 4
and eax, 0xf
movzx edx, byte [eax + 0x101a2703]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov ebp, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov eax, dword [ebp + 4]
push dword [eax + ecx]
mov eax, dword [esp + 0x94]
push dword [ebp]
mov eax, dword [eax]
shr eax, 4
and eax, 0xf
push dword [eax*4 + 0x101a1274]
push str.non__s_value_in__s._s
push dword [esp + 0x20]
call fcn.10124b40
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
add esp, 0x30
mov edi, dword [esp + 0x48]
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x84]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012ba44
push edx
push esi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012ba4c
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x60]
jmp 0x1012b7f5
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x80], edx
cmp dword [esp + 0x94], 0
jne 0x1012b894
cmp byte [ecx + 8], 0x43
jl 0x1012b894
mov ebp, dword [esp + 0x7c]
push ebp
push edi
mov edi, dword [esp + 0x60]
push eax
push edi
push 0x12
push esi
call fcn.10139c40
mov eax, dword [ebx]
add esp, 0x18
test eax, eax
jle 0x1012b91f
lea ecx, [eax + eax*4]
mov edx, 0x1b
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
test edi, edi
js 0x1012b93d
push 3
push dword [esp + 0x9c]
push dword [esp + 0x3c]
push dword [esp + 0x48]
push esi
call fcn.101160f0
add esp, 0x14
push 0xffffffffffffffff
push 0x101955ac
push 0
push 1
push 3
push 0x60
push esi
call fcn.10139bc0
mov edi, dword [esp + 0x64]
push ebp
push 3
push edi
push 0xffffffffffffffff
push 0x12
push esi
call fcn.10139c40
mov eax, dword [ebx]
add esp, 0x34
test eax, eax
jle 0x1012b980
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov eax, dword [edx + 4]
push dword [eax + ecx]
push dword [edx]
push str.TEXT_value_in__s._s
push dword [esp + 0x1c]
call fcn.10124b40
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
add esp, 0x2c
jmp 0x1012b898
mov dword [esp + 0x80], ecx
mov esi, ebp
mov ecx, dword [esp + 0x78]
cmp byte [ecx + 8], 0x42
jne 0x1012b8df
push dword [esp + 0x7c]
push edi
mov edi, dword [esp + 0x60]
push eax
push edi
push 0x12
push ebp
call fcn.10139c40
mov eax, dword [ebx]
add esp, 0x18
test eax, eax
jle 0x1012b9fd
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov eax, dword [edx + 4]
push dword [eax + ecx]
push dword [edx]
push str.NUMERIC_value_in__s._s
push dword [esp + 0x1c]
call fcn.10124b40
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push ebp
call fcn.10139bc0
mov eax, dword [esp + 0x8c]
add esp, 0x2c
mov esi, ebp
mov dword [esp + 0x80], eax
jmp 0x1012b894
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edx*4], eax
push esi
call fcn.100f1a30
mov ecx, dword [esi + 0xc]
add esp, 4
not edi
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012ba6f
push edi
push esi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012ba77
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edi*4], eax
mov edi, dword [esp + 0x94]
mov ebp, dword [esp + 0x98]
mov edx, dword [esp + 0x3c]
inc ebp
add dword [esp + 0x68], 0x10
mov dword [esp + 0x98], ebp
movsx eax, word [edx + 0x22]
cmp ebp, eax
mov eax, dword [esp + 0x68]
jl 0x1012b4d0
mov dword [esp + 0x48], esi
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x1012bbee
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x20]
and eax, 0x200
or eax, 0
jne 0x1012bbee
push eax
push ecx
push edi
call fcn.10119a30
add esp, 0xc
mov edx, eax
cmp byte [edi + 0x57], 0
mov dword [esp + 0x60], edx
jne 0x1012bbe0
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
inc eax
mov ebp, dword [edi + 0x38]
dec ebp
mov dword [edi + 0x34], eax
lea ecx, [ebp - 1]
mov dword [edi + 0x38], ecx
mov edi, dword [edx]
dec edi
mov dword [esp + 0x88], ecx
test edi, edi
jle 0x1012bb42
mov esi, dword [esp + 0x14]
lea ebx, [edi*4 + 2]
add ebx, edi
lea ebx, [edx + ebx*4]
nop dword [eax]
push 0
push ebp
push dword [ebx]
push esi
call fcn.10118b50
dec edi
lea ebx, [ebx - 0x14]
add esp, 0x10
test edi, edi
jg 0x1012bb20
mov esi, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x60]
mov edi, dword [esp + 0x88]
push 0x10
push edi
push dword [edx + 8]
push dword [esp + 0x20]
call fcn.10118f40
mov ecx, dword [esi + 0xc]
add esp, 0x10
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012bb75
push ebp
push esi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012bb7d
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + ebp*4], eax
mov eax, dword [esp + 0x14]
mov dword [eax + 0x34], 0
mov eax, dword [esp + 0x3c]
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x18]
call fcn.10124b40
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
push esi
call fcn.100f1a30
mov ecx, dword [esi + 0xc]
add esp, 0x2c
not edi
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012bbd0
push edi
push esi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012bbd8
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edi*4], eax
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x60]
test edx, edx
je 0x1012bbee
push edx
push edi
call fcn.100e9a10
add esp, 8
cmp byte [esp + 0x67], 0x71
je 0x1012c04e
mov eax, dword [esp + 0x5c]
mov ebp, dword [eax]
test ebp, ebp
je 0x1012c04e
mov eax, dword [esp + 0x20]
mov ecx, 8
sub ecx, eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x50]
dec dword [eax + 0x38]
mov edi, dword [eax + 0x38]
cmp ecx, ebp
je 0x1012c03f
push dword [esp + 0x40]
lea ecx, [esp + 0xa4]
push dword [esp + 0x74]
push ecx
push 0
push 0
push dword [esp + 0x48]
push ebp
push eax
call fcn.1011f6c0
mov edx, dword [esp + 0x78]
add esp, 0x20
mov ecx, dword [ebx]
add edx, dword [esp + 0x88]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x70], ebp
cmp dword [eax], ecx
jg 0x1012bc84
push 0
push 1
push edx
push 0x56
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012bcb9
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movzx eax, word [ebp + 0x34]
push eax
push dword [esp + 0x44]
push edi
push dword [esp + 0x64]
push 0x1d
push esi
call fcn.10139c40
push 0
push str.row
push 0
push 3
push 0
push 0x75
push esi
mov edi, eax
call fcn.10139bc0
mov eax, dword [esp + 0x78]
add esp, 0x34
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012bd06
push 3
push 3
push 7
push 0x6f
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012bd3b
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push str._missing_from_index
push 0
push 4
push 0
push 0x75
push esi
call fcn.10139bc0
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012bd70
push 3
push 3
push 4
push 0x6f
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012bda5
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push dword [ebp]
push 0
push 4
push 0
push 0x75
push esi
call fcn.10139bc0
mov ecx, dword [ebx]
add esp, 0x1c
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1012bddf
push 3
push 3
push 4
push 0x6f
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012be14
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.100f1a30
mov ecx, dword [esi]
add esp, 4
mov edx, dword [ebx]
mov dword [esp + 0x78], eax
cmp byte [ecx + 0x57], 0
je 0x1012be32
mov ecx, 0x101a3d48
jmp 0x1012be3e
mov eax, dword [esp + 0x28]
lea ecx, [edi + edi*4]
mov eax, dword [eax]
lea ecx, [eax + ecx*4]
mov dword [ecx + 8], edx
cmp byte [ebp + 0x36], 0
je 0x1012bfde
mov eax, dword [esp + 0x14]
xor ebx, ebx
dec dword [eax + 0x38]
mov edx, dword [eax + 0x38]
xor eax, eax
mov dword [esp + 0x60], edx
cmp ax, word [ebp + 0x32]
jae 0x1012beed
mov edi, dword [esp + 0x40]
nop dword [eax + eax]
mov eax, dword [ebp + 4]
movsx ecx, word [eax + ebx*2]
test ecx, ecx
js 0x1012be8b
mov eax, dword [esp + 0x3c]
add ecx, ecx
mov eax, dword [eax + 4]
test byte [eax + ecx*8 + 4], 0xf
jne 0x1012bee3
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1012beae
push 0
push edx
push edi
push 0x32
push esi
call fcn.100f0a80
mov edx, dword [esp + 0x74]
add esp, 0x14
jmp 0x1012bee3
mov edx, dword [esp + 0x24]
lea eax, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [edx], eax
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x60]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movzx eax, word [ebp + 0x32]
inc ebx
inc edi
cmp ebx, eax
jl 0x1012be70
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov edi, dword [ecx]
cmp dword [eax], edi
jg 0x1012bf12
push 0
push 0
push dword [esp + 0x60]
push 0x27
push esi
call fcn.100f0a80
add esp, 0x14
mov edi, eax
jmp 0x1012bf47
mov edx, dword [esp + 0x58]
lea eax, [edi + 1]
mov dword [ecx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x60]
push ebx
push esi
call fcn.10143940
mov eax, dword [esp + 0x2c]
add esp, 8
mov edx, dword [eax]
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1012bf6a
mov eax, 0x101a3d48
jmp 0x1012bf76
mov eax, dword [esp + 0x28]
lea ecx, [edi + edi*4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
movzx eax, word [ebp + 0x32]
push eax
push dword [esp + 0x44]
push ebx
push dword [esp + 0x64]
push 0x29
push esi
call fcn.10139c40
push 0
push str.non_unique_entry_in_index
push 0
push 3
push 0
push 0x75
push esi
call fcn.10139bc0
push dword [esp + 0xb8]
push esi
call fcn.10143940
mov ecx, dword [esi + 0xc]
add esp, 0x3c
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012bfce
push ebx
push esi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012bfda
mov eax, dword [esp + 0x24]
mov ecx, dword [ecx + 0x40]
mov eax, dword [eax]
mov dword [ecx + ebx*4], eax
mov ebx, dword [esp + 0x24]
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1012bfef
mov eax, 0x101a3d48
jmp 0x1012bfff
mov eax, dword [esp + 0x78]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0x14]
test edx, edx
je 0x1012c03b
mov edi, dword [eax + 8]
not edx
mov ecx, dword [edi + 0xc]
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1012c02e
push edx
push edi
push ecx
call fcn.101020c0
add esp, 0xc
jmp 0x1012c037
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x50]
mov ebp, dword [ebp + 0x14]
inc dword [esp + 0x58]
test ebp, ebp
jne 0x1012bc25
mov eax, dword [esp + 0x44]
mov ecx, dword [ebx]
mov ebp, dword [esp + 0x6c]
cmp dword [eax], ecx
jg 0x1012c074
push 0
push ebp
push dword [esp + 0x3c]
push 0x27
push esi
call fcn.100f0a80
mov edi, dword [esp + 0x3c]
add esp, 0x14
jmp 0x1012c0a5
mov edi, dword [esp + 0x28]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x34]
lea ecx, [ecx + ecx*4]
mov dword [ebx], eax
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1012c0b6
mov eax, 0x101a3d50
jmp 0x1012c0c7
mov eax, dword [edi]
lea ecx, [ebp*4]
add ecx, ebp
lea eax, [eax + ecx*4]
add eax, 0xfffffff4
cmp byte [esp + 0x67], 0x71
mov dword [eax], edx
je 0x1012c2cd
push 0
push str.wrong__of_entries_in_index
push 0
push 2
push 0
push 0x75
push esi
call fcn.10139bc0
mov eax, dword [esp + 0x78]
add esp, 0x1c
mov ebx, dword [eax]
test ebx, ebx
je 0x1012c285
mov eax, dword [esp + 0x50]
mov ebp, 8
cmp eax, ebx
je 0x1012c279
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x44]
add edx, 0xfffffff8
add edx, ebp
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x1012c134
push 0
push 3
push edx
push 0x62
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012c169
mov esi, dword [esp + 0x48]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x62
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x44]
mov edi, dword [edi]
cmp dword [eax], edi
jg 0x1012c18b
push 3
push 0
push ebp
push 0x35
push esi
call fcn.100f0a80
mov edx, dword [esp + 0x3c]
add esp, 0x14
mov edi, eax
jmp 0x1012c1c4
mov ecx, dword [esp + 0x24]
lea eax, [edi + 1]
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x48]
mov dword [ecx], eax
lea ecx, [edi + edi*4]
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], ebp
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
jle 0x1012c1dd
lea ecx, [eax + eax*4]
mov eax, dword [edx]
mov edx, 0x90
mov word [eax + ecx*4 - 0x12], dx
push 0
push dword [ebx]
push 0
push 4
push 0
push 0x75
push esi
call fcn.10139bc0
mov edx, dword [esp + 0x40]
add esp, 0x1c
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1012c213
push 3
push 2
push 4
push 0x6f
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012c248
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 2
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.100f1a30
mov eax, dword [esp + 0x28]
add esp, 4
mov edx, dword [eax]
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1012c266
mov eax, 0x101a3d48
jmp 0x1012c272
mov eax, dword [esp + 0x28]
lea ecx, [edi + edi*4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x50]
mov ebx, dword [ebx + 0x14]
inc ebp
test ebx, ebx
jne 0x1012c103
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x24]
test eax, eax
je 0x1012c2cd
movzx eax, word [eax + 0x32]
mov ebp, dword [esp + 0x14]
cmp eax, 1
jne 0x1012c2bc
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x1012c2d1
mov al, byte [ebp + 0x13]
cmp al, 8
jae 0x1012c2d1
movzx eax, al
mov dword [ebp + eax*4 + 0x9c], ecx
inc byte [ebp + 0x13]
jmp 0x1012c2d1
cmp eax, dword [ebp + 0x1c]
jle 0x1012c2d1
mov dword [ebp + 0x1c], eax
mov eax, dword [esp + 0x4c]
mov dword [ebp + 0x20], eax
jmp 0x1012c2d1
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov edi, dword [edi]
test edi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x28]
jne 0x1012b010
jmp 0x1012afa5
test edx, edx
jne 0x1012c32d
mov ebx, dword [esp + 0x14]
push ebx
call fcn.1012ddb0
add esp, 4
test eax, eax
jne 0x1012cb08
mov eax, dword [ebx]
movzx eax, byte [eax + 0x54]
push dword [eax*8 + 0x1018fac8]
push esi
call fcn.10103f90
push dword [esp + 0x38]
push dword [esp + 0x1c]
call fcn.10112cf0
add esp, 0x10
jmp 0x1012cb2e
mov ebp, dword [esp + 0x10]
test byte [ebp + 0x18], 0x40
jne 0x1012cb0c
mov eax, dword [str.UTF8]
mov esi, 0x1018fac8
test eax, eax
je 0x1012c3aa
nop dword [eax]
push eax
push edx
call fcn.101353f0
add esp, 8
test eax, eax
je 0x1012c36e
mov eax, dword [esi + 8]
add esi, 8
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x1012c350
jmp 0x1012c3aa
mov cl, byte [esi + 4]
mov edx, 2
movzx eax, cl
test cl, cl
mov ecx, ebp
cmovne edx, eax
mov byte [esp + 0xa0], dl
push dword [esp + 0xa0]
mov eax, dword [ecx + 0x10]
push ecx
mov eax, dword [eax + 0xc]
mov byte [eax + 0x4d], dl
call fcn.10133bd0
mov eax, dword [esi]
add esp, 8
test eax, eax
jne 0x1012cb0c
push dword [esp + 0x18]
push str.unsupported_encoding:__s
push dword [esp + 0x1c]
call fcn.10114f40
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10112cf0
mov eax, dword [esp + 0x2c]
add esp, 0x14
jmp 0x1012cb21
mov ebx, dword [esp + 0x38]
mov edi, dword [ebp + 8]
push ebx
push esi
call fcn.10147330
add esp, 8
cmp dword [esp + 0x18], 0
je 0x1012c45c
test byte [ebp + 5], 8
jne 0x1012c45c
push 0
push 0x1018fb10
push 2
push esi
call fcn.10139cd0
mov esi, eax
mov dword [esp + 0x30], 0
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x2c]
mov dword [esi + 4], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], edi
call fcn.10120010
mov eax, dword [esp + 0x38]
add esp, 0x18
mov dword [esi + 0x20], eax
mov eax, 1
mov word [esi + 0x16], ax
cmp edi, eax
jne 0x1012cb08
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x1012cb08
mov byte [esi + 0x14], 0xb8
jmp 0x10129833
push 0
push 0x1018fb18
push 3
push esi
call fcn.10139cd0
push esi
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x20], edi
call fcn.10146730
add esp, 0x14
jmp 0x1012cb08
mov eax, dword [esp + 0x14]
xor edi, edi
mov dword [eax + 0x2c], 1
nop
cmp edi, 0x26
ja 0x1012c50a
mov eax, dword [edi*4 + 0x1018fe78]
inc edi
test eax, eax
je 0x1012c50a
push 0
push eax
push 0
push 1
push 0
push 0x75
push esi
call fcn.10139bc0
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1012c4d6
push 0
push 1
push 1
push 0x54
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012c490
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1012c490
push esi
call fcn.10146730
add esp, 4
jmp 0x1012cb08
mov eax, dword [esp + 0x34]
mov ebx, 0xc
cmp dword [eax], 0
cmovne ebx, dword [esp + 0x38]
xor edi, edi
test edx, edx
je 0x1012c579
push str.full
push edx
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x1012c546
lea edi, [eax + 1]
jmp 0x1012c579
mov ebp, dword [esp + 0x18]
push str.restart
push ebp
call fcn.101353f0
add esp, 8
test eax, eax
jne 0x1012c561
lea edi, [eax + 2]
jmp 0x1012c579
push str.truncate
push ebp
call fcn.101353f0
add esp, 8
mov ecx, 3
test eax, eax
cmove edi, ecx
mov eax, dword [esp + 0x14]
push 1
push edi
push ebx
push 3
push esi
mov dword [eax + 0x2c], 3
call fcn.10139b60
push 3
push 1
push 0x54
push esi
call fcn.10139b00
add esp, 0x24
jmp 0x1012cb08
test edx, edx
je 0x1012c5cb
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edx
call fcn.10120010
push dword [esp + 0x28]
push dword [esp + 0x1c]
call fcn.100ca010
add esp, 0x10
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x110], 0x101488c0
jne 0x1012c5e6
mov eax, dword [eax + 0x114]
jmp 0x1012cafc
xor eax, eax
jmp 0x1012cafc
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1012c602
push eax
call dword [0x101a11a0]
add esp, 4
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x5f], 0
jne 0x1012c619
push eax
call fcn.100de740
mov eax, dword [esp + 0x14]
add esp, 4
xor esi, esi
cmp dword [eax + 0x14], esi
jle 0x1012c651
xor edi, edi
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edi + 4]
test eax, eax
je 0x1012c644
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0xe4]
push dword [eax + 0x2c]
call dword [0x101a11e4]
add esp, 4
mov eax, dword [esp + 0x10]
inc esi
add edi, 0x10
cmp esi, dword [eax + 0x14]
jl 0x1012c622
cmp byte [eax + 0x5f], 0
jne 0x1012c664
push eax
call fcn.100de9f0
mov eax, dword [esp + 0x14]
add esp, 4
mov eax, dword [eax + 0xc]
jmp 0x101289ed
test edx, edx
je 0x1012c699
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edx
call fcn.10120010
mov ecx, dword [esp + 0x28]
add esp, 8
mov dword [esp + 0x1c], ecx
test cl, 2
je 0x1012cb08
jmp 0x1012c6a1
mov dword [esp + 0x1c], 0xfffe
cmp dword [esp + 0x3c], 0
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x38]
mov edx, dword [ebx + 0x28]
mov dword [esp + 0x40], edx
lea eax, [edx + 1]
mov dword [ebx + 0x28], eax
je 0x1012c6c3
mov dword [esp + 0x2c], edi
jmp 0x1012c6d7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
dec eax
mov dword [esp + 0x2c], eax
cmp edi, eax
jg 0x1012c8f3
mov eax, dword [esp + 0x54]
mov ecx, edi
mov ebp, 1
rol ebp, cl
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], ebp
nop dword [eax]
cmp edi, 1
je 0x1012c8d9
mov eax, dword [ebx + 0x78]
mov ecx, ebx
test eax, eax
cmovne ecx, eax
mov eax, dword [ecx + 0x58]
test ebp, eax
jne 0x1012c710
bts eax, edi
mov dword [ecx + 0x58], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x54]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 0xc]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x1012c8cd
nop word [eax + eax]
mov edi, dword [ebx + 8]
test dword [edi + 0x1c], 0x100
je 0x1012c8bb
mov ax, word [edi + 0x26]
add ax, 0x2e
movzx ebp, ax
mov eax, dword [edi + 8]
test eax, eax
je 0x1012c763
test byte [eax + 0x38], 0x80
je 0x1012c7ee
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x1012c752
test bp, bp
je 0x1012c7ee
push 0x70
push edi
push dword [esp + 0x40]
push edx
push dword [esp + 0x24]
call fcn.101255d0
mov eax, dword [esp + 0x30]
add esp, 0x14
mov esi, dword [esp + 0x44]
and eax, 1
movsx edx, bp
add eax, 2
mov ebp, dword [esp + 0x24]
mov ecx, dword [ebp]
add eax, ecx
cmp dword [esi], ecx
mov esi, dword [esp + 0x48]
mov dword [esp + 0xa0], eax
jg 0x1012c7bc
push edx
push eax
push dword [esp + 0x48]
push 0x21
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012c7f2
lea eax, [ecx + 1]
mov dword [ebp], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov ebp, dword [esp + 0x40]
mov dword [eax + ecx*4 + 4], ebp
mov ebp, dword [esp + 0xa0]
mov dword [eax + ecx*4], 0x21
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
push dword [edi]
mov edx, dword [esp + 0x58]
mov eax, dword [ecx + 0x10]
push dword [eax + edx]
push str.ANALYZE___w_.__w_
push ecx
call fcn.10124b40
add esp, 0x10
mov edx, eax
test byte [esp + 0x1c], 1
je 0x1012c8a0
mov edi, dword [esp + 0x14]
mov cl, byte [edi + 0x13]
test cl, cl
jne 0x1012c830
inc dword [edi + 0x2c]
mov edi, dword [edi + 0x2c]
jmp 0x1012c83f
dec cl
movzx eax, cl
mov byte [edi + 0x13], cl
mov edi, dword [edi + eax*4 + 0x9c]
push 0xfffffffffffffffa
push edx
push 0
push edi
push 0
push 0x75
push esi
call fcn.10139bc0
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebp]
cmp dword [eax], ecx
jg 0x1012c86f
push 0
push 1
push edi
push 0x54
push esi
call fcn.100f0a80
add esp, 0x14
jmp 0x1012c8b7
lea eax, [ecx + 1]
mov dword [ebp], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1012c8b7
push 0xfffffffffffffffa
push edx
push 0
push 0
push 0
push 0x94
push esi
call fcn.10139bc0
add esp, 0x1c
mov edx, dword [esp + 0x40]
mov ebx, dword [ebx]
test ebx, ebx
jne 0x1012c730
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x54]
inc edi
rol ebp, 1
add eax, 0x10
mov dword [esp + 0x38], edi
mov dword [esp + 0x54], eax
mov dword [esp + 0x20], ebp
cmp edi, ecx
jle 0x1012c6f0
push 0xa6
push esi
call fcn.10139a50
add esp, 8
jmp 0x1012cb08
test edx, edx
je 0x1012c935
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.10113160
add esp, 8
test eax, eax
jne 0x1012c935
push dword [esp + 0xa4]
push dword [esp + 0xa4]
call fcn.100c37b0
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.100c37b0
push edx
push eax
push esi
call fcn.10103f00
add esp, 0x14
jmp 0x1012cb08
test edx, edx
je 0x1012c9a7
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.10113160
add esp, 8
test eax, eax
jne 0x1012c9a7
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.100c38c0
mov edi, dword [esp + 0xac]
add esp, 8
mov ebx, eax
test edi, edi
jl 0x1012c9a7
mov ecx, dword [esp + 0xa0]
jg 0x1012c98d
test ecx, ecx
je 0x1012c9a7
mov eax, ebx
or eax, edx
je 0x1012c99d
cmp edx, edi
jl 0x1012c9a7
jg 0x1012c99d
cmp ebx, ecx
jbe 0x1012c9a7
push edi
push ecx
call fcn.100c38c0
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.100c38c0
push edx
push eax
push esi
call fcn.10103f00
add esp, 0x14
jmp 0x1012cb08
test edx, edx
je 0x1012ca03
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.10113160
add esp, 8
test eax, eax
jne 0x1012ca03
cmp dword [esp + 0xa4], eax
jl 0x1012ca03
mov eax, dword [esp + 0xa0]
jg 0x1012c9ef
test eax, eax
jb 0x1012ca03
and eax, 0x7fffffff
push eax
push 0xb
push dword [esp + 0x18]
call fcn.100d82f0
add esp, 0xc
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa4]
jmp 0x1012cafc
test edx, edx
je 0x1012ca50
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.10113160
add esp, 8
test eax, eax
jne 0x1012ca50
cmp dword [esp + 0xa4], eax
jl 0x1012ca50
mov eax, dword [esp + 0xa0]
jg 0x1012ca41
test eax, eax
jb 0x1012ca50
mov ecx, dword [esp + 0x10]
and eax, 0x7fffffff
mov dword [ecx + 0x1f0], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1f0]
jmp 0x1012cafc
test edx, edx
je 0x1012caf2
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edx
call fcn.10120010
mov edi, dword [esp + 0x28]
add esp, 8
mov eax, dword [esp + 0x10]
test edi, edi
jle 0x1012caa4
push eax
push 0x101522e0
push eax
call fcn.100d6ac0
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov dword [eax + 0x1f4], edi
jmp 0x1012caf6
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1012cab5
push eax
call dword [0x101a11a0]
add esp, 4
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1c0], 0
mov dword [eax + 0x1c4], 0
mov dword [eax + 0x1c8], 0
mov dword [eax + 0x1f4], 0
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1012caf2
push eax
call dword [0x101a11a8]
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1f4]
cdq
push edx
push eax
push esi
call fcn.10103f00
add esp, 0xc
mov ebp, dword [esp + 0x10]
push dword [esp + 0x30]
push ebp
call fcn.10112cf0
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
je 0x1012cb2e
push eax
push dword [esp + 0x14]
call fcn.10112cf0
add esp, 8
pop ebx
mov ecx, dword [esp + 0xb8]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.10169f7a
add esp, 0xb0
ret