Function at 0x441f50
Capabilities:
Enumerate pe sections
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x124
mov eax, dword [0x4d25ac]
xor eax, esp
mov dword [esp + 0x11c], eax
push ebx
push ebp
push esi
mov esi, ecx
mov ebp, dword [esi]
mov ecx, dword [esi + 0x14]
mov edx, dword [ebp + 8]
xor eax, eax
mov dword [esp + 0x3c], ecx
mov ecx, dword [edx + 0xc]
mov dl, byte [ecx + 0x49]
mov ecx, dword [esi + 0x4c]
push edi
lea ebx, [esi + 0x80]
xor edi, edi
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ebp
mov byte [esp + 0x3b], al
mov byte [esp + 0x30], dl
mov dword [esp + 0x4c], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x3c], ebx
call fcn.00431020
cmp dword [esi + 0x58], 7
je 0x4424ac
xor eax, eax
mov dword [esi + 0x58], eax
mov dword [esi + 0x2c], eax
mov edx, dword [ebp + 0xe0]
mov dword [ebp + 0x1a8], eax
test edx, edx
jne 0x446dcf
mov edx, dword [esi + 0x54]
xor ecx, ecx
cmp dword [ebp + 0x108], eax
mov dword [esp + 0x20], edx
setne cl
mov dword [esp + 0x50], ecx
lea ebx, [ebx]
cmp byte [ebp + 0x1e], 0
jne 0x4424ac
cmp dword [esp + 0x50], 0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x40]
lea eax, [eax + eax*4]
lea ebp, [ecx + eax*4]
je 0x44204e
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x18]
cmp dword [ecx + 0x110], eax
jne 0x442049
mov edx, dword [ecx + 0x10c]
mov eax, dword [ecx + 0x108]
push edx
call eax
add esp, 4
test eax, eax
jne 0x446c05
inc eax
mov dword [esp + 0x4c], eax
test byte [ebp + 2], 2
je 0x442079
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x28]
lea ecx, [eax + eax*4]
lea edi, [edx + ecx*8]
mov esi, edi
mov dword [esp + 0x1c], edi
call fcn.0043bcd0
mov esi, dword [esp + 0x24]
mov eax, 4
mov word [edi + 0x1c], ax
movzx eax, byte [ebp]
mov ebx, dword [esp + 0x28]
dec eax
cmp eax, 0x90
ja case.0x44208d.17
jmp dword [eax*4 + 0x446e08]
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0xe0]
test edx, edx
jne 0x446dcf
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea ebx, [ebx + eax*8]
mov eax, dword [esp + 0x20]
cdq
mov ecx, 4
mov dword [ebx + 4], edx
mov word [ebx + 0x1c], cx
mov dword [ebx], eax
mov edx, dword [ebp + 8]
dec edx
mov dword [esp + 0x20], edx
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea eax, [ebp + ebp*4]
mov ecx, dword [ebx + eax*8]
mov dword [esp + 0x20], ecx
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea edx, [ebp + ebp*4]
mov ecx, dword [ebx + edx*8]
lea ebx, [ebx + edx*8]
mov eax, 4
mov word [ebx + 0x1c], ax
mov eax, dword [esp + 0x20]
cdq
mov dword [esp + 0x68], ecx
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0x20], edx
jmp case.0x44208d.17
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
test byte [ebx + eax*8 + 0x1c], 1
je case.0x44208d.17
cmp dword [ebp + 4], 0
jne 0x446c12
mov eax, dword [esi + 0xdc]
test eax, eax
je 0x446c12
mov ecx, dword [eax + 0x3c]
mov edx, dword [esp + 0x18]
dec dword [esi + 0xe0]
mov dword [esi + 0xdc], ecx
mov ecx, dword [esi + 0x6c]
add dword [edx + 0x40], ecx
mov dword [edx + 0x3c], ecx
call fcn.0043e090
cmp dword [ebp + 8], 4
mov dword [esp + 0x20], eax
jne 0x442183
lea edx, [eax + eax*4]
mov eax, dword [esi + 0x14]
mov ecx, dword [eax + edx*4 + 8]
dec ecx
mov dword [esp + 0x20], ecx
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x4c]
mov dword [esp + 0x40], edx
mov dword [esp + 0x28], eax
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
cdq
mov dword [edi], eax
mov dword [edi + 4], edx
jmp case.0x44208d.17
mov ebp, dword [ebp + 0x10]
mov ecx, dword [ebp]
mov dword [edi], ecx
mov edx, dword [ebp + 4]
mov dword [edi + 4], edx
jmp case.0x44208d.17
mov eax, 8
mov word [edi + 0x1c], ax
mov ecx, dword [ebp + 0x10]
fld qword [ecx]
fstp qword [edi + 8]
jmp case.0x44208d.17
mov ebx, dword [ebp + 0x10]
mov ecx, ebx
mov byte [ebp], 9
call fcn.00425940
cmp byte [esp + 0x30], 1
mov dword [ebp + 4], eax
je 0x4422e2
test ebx, ebx
jne 0x4421fb
push edi
call fcn.0043bff0
add esp, 4
jmp 0x44227f
mov eax, dword [edi + 0x10]
test eax, eax
je 0x44220b
mov edx, dword [eax + 0x48]
mov dword [esp + 0x2c], edx
jmp 0x442213
mov dword [esp + 0x2c], 0x3b9aca00
mov eax, dword [esp + 0x2c]
xor esi, esi
test eax, eax
jl 0x44222b
lea ecx, [ecx]
cmp byte [esi + ebx], 0
je 0x44222b
inc esi
cmp esi, eax
jle 0x442220
xor eax, eax
mov dword [esp + 0x34], 0x202
push edi
cmp eax, fcn.004239e0
jne 0x442247
call fcn.0043bd40
mov dword [edi + 0x24], ebx
jmp 0x442254
call fcn.0043bd40
mov dword [esp + 0x38], 0xa02
mov cx, word [esp + 0x38]
add esp, 4
cmp esi, dword [esp + 0x2c]
mov dword [edi + 0x20], 0
mov dword [edi + 0x14], ebx
mov dword [edi + 0x18], esi
mov word [edi + 0x1c], cx
mov byte [edi + 0x1f], 1
mov byte [edi + 0x1e], 3
jg 0x442b7b
movzx ecx, byte [esp + 0x30]
mov eax, edi
mov dword [esp + 0x14], 0
call fcn.0043b950
test eax, eax
jne 0x4424ac
mov edi, dword [esp + 0x1c]
mov dx, word [edi + 0x1c]
mov dword [edi + 0x24], eax
mov eax, 0xfbff
and dx, ax
mov ecx, 0x800
or dx, cx
or bl, 0xff
mov word [edi + 0x1c], dx
cmp byte [ebp + 1], bl
jne 0x4422d3
mov edx, dword [ebp + 0x10]
mov eax, dword [esp + 0x18]
push edx
push eax
call fcn.004239e0
add esp, 8
mov byte [ebp + 1], bl
mov ecx, dword [edi + 0x14]
mov dword [ebp + 0x10], ecx
mov edx, dword [edi + 0x18]
mov dword [ebp + 4], edx
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
cmp eax, dword [ecx + 0x48]
jg 0x442b7b
mov edx, 0xa02
mov word [edi + 0x1c], dx
mov eax, dword [ebp + 0x10]
mov dl, byte [esp + 0x30]
mov dword [edi + 0x14], eax
mov ecx, dword [ebp + 4]
mov dword [edi + 0x18], ecx
mov byte [edi + 0x1f], dl
jmp case.0x44208d.17
mov eax, 1
mov word [edi + 0x1c], ax
jmp case.0x44208d.17
mov esi, dword [ebp + 0x10]
mov ebp, dword [ebp + 4]
test esi, esi
jne 0x442340
push edi
call fcn.0043bff0
mov al, byte [esp + 0x34]
add esp, 4
mov byte [edi + 0x1f], al
jmp case.0x44208d.17
mov eax, dword [edi + 0x10]
test eax, eax
je 0x44234c
mov eax, dword [eax + 0x48]
jmp 0x442351
mov eax, 0x3b9aca00
mov ebx, 0x10
test ebp, ebp
jge 0x442375
xor ebp, ebp
test eax, eax
jl 0x442370
mov cl, byte [esi + ebp + 1]
or cl, byte [esi + ebp]
je 0x442370
add ebp, 2
cmp ebp, eax
jle 0x442360
mov ebx, 0x210
xor edx, edx
push edi
cmp edx, fcn.004239e0
jne 0x44238d
call fcn.0043bd40
add esp, 4
mov dword [edi + 0x24], esi
jmp 0x44239b
call fcn.0043bd40
add esp, 4
or ebx, 0x800
mov al, byte [esp + 0x30]
mov byte [edi + 0x1f], 1
mov dword [edi + 0x20], 0
mov dword [edi + 0x14], esi
mov dword [edi + 0x18], ebp
mov word [edi + 0x1c], bx
mov byte [edi + 0x1e], 4
mov byte [edi + 0x1f], al
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
mov edx, dword [esi + 0x3c]
lea ecx, [ebp + ebp*4]
lea esi, [edx + ecx*8 - 0x28]
mov ecx, esi
mov dword [esp + 0x68], esi
call fcn.0043c250
test eax, eax
jne 0x442b7b
push 0x800
push esi
mov ebx, edi
call fcn.0043c280
add esp, 8
jmp case.0x44208d.17
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 4]
mov dword [esp + 0x70], ecx
mov ebp, dword [ebp + 8]
lea ecx, [ecx + ecx*4]
lea edx, [ebp + ebp*4]
lea edi, [ebx + ecx*8]
lea ecx, [ebx + edx*8]
mov dword [esp + 0x74], ebp
mov dword [esp + 0x1c], ecx
test eax, eax
je 0x442457
mov esi, ecx
dec eax
mov dword [esp + 0x6c], eax
mov edx, dword [esi + 0x24]
mov dword [esp + 0x68], edx
mov ebx, edi
mov eax, esi
mov dword [esi + 0x24], 0
call fcn.0043c330
mov eax, dword [esp + 0x68]
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x6c]
add edi, 0x28
add esi, 0x28
test eax, eax
jne 0x442422
mov dword [esp + 0x1c], esi
dec eax
mov dword [esp + 0x6c], eax
jmp 0x4436dd
mov eax, dword [ebp + 8]
mov ebp, dword [ebp + 4]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x28]
lea edi, [eax + ecx*8]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*8]
push 0x1000
push eax
mov ebx, edi
mov dword [esp + 0x24], edi
call fcn.0043c280
mov ecx, 0x1000
add esp, 8
test word [edi + 0x1c], cx
je case.0x44208d.17
push edi
call fcn.0043baa0
add esp, 4
test eax, eax
je 0x4436dd
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x24]
push str.out_of_memory
add edi, 0x5c
mov byte [eax + 0x1e], 1
call fcn.00423dc0
mov dword [esp + 0x18], 7
jmp 0x442b98
mov eax, dword [ebp + 8]
mov ebp, dword [ebp + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x28]
lea edi, [eax + edx*8]
lea ecx, [ebp + ebp*4]
lea edx, [eax + ecx*8]
push 0x1000
push edx
mov ebx, edi
mov dword [esp + 0x24], edi
call fcn.0043c280
add esp, 8
jmp case.0x44208d.17
push 0
mov ecx, esi
call fcn.0043e900
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x44208d.17
push 1
push esi
call fcn.0043e830
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x44208d.17
mov edx, dword [esi + 0x50]
add edx, 2
or edx, 1
mov dword [esi + 0x50], edx
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea ebx, [ebx + eax*8]
xor eax, eax
mov dword [esi + 0x2c], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], eax
cmp dword [ebp + 8], eax
jle 0x4425b2
mov edx, dword [esp + 0x68]
lea ecx, [eax + eax*4]
lea ecx, [edx + ecx*8]
mov edx, 0x1000
test word [ecx + 0x1c], dx
je 0x442582
push ecx
call fcn.0043baa0
add esp, 4
test eax, eax
jne 0x4424ac
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
call fcn.0043bb70
mov eax, dword [esp + 0x6c]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x68]
lea ecx, [eax + edx*8]
call fcn.00441c80
mov eax, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x6c], eax
cmp eax, dword [ebp + 8]
jl 0x442558
mov ecx, dword [esp + 0x18]
cmp byte [ecx + 0x1e], 0
jne 0x4424ac
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
inc edx
mov dword [eax + 0x54], edx
mov edi, 0x64
jmp 0x442bf5
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea edx, [ebx + eax*8]
mov eax, dword [ebp + 8]
mov ebp, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
lea eax, [ebp + ebp*4]
lea edi, [ebx + eax*8]
movzx eax, word [edx + 0x1c]
lea ecx, [ebx + ecx*8]
mov dword [esp + 0x34], edx
mov dl, byte [ecx + 0x1c]
or dl, al
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x1c], edi
test dl, 1
je 0x44261a
push edi
call fcn.0043bff0
add esp, 4
jmp case.0x44208d.17
test eax, 0x4000
je 0x442636
mov esi, dword [esp + 0x34]
call fcn.0043bb10
test eax, eax
jne 0x4424ac
mov ecx, dword [esp + 0x2c]
mov eax, 0x4000
test word [ecx + 0x1c], ax
je 0x442652
mov esi, dword [esp + 0x2c]
call fcn.0043bb10
test eax, eax
jne 0x4424ac
mov esi, dword [esp + 0x34]
test byte [esi + 0x1c], 0x12
mov bl, byte [esp + 0x30]
jne 0x442670
movzx edi, bl
call fcn.0043bbc0
test eax, eax
jne 0x4424ac
mov esi, dword [esp + 0x2c]
test byte [esi + 0x1c], 0x12
jne 0x44268a
movzx edi, bl
call fcn.0043bbc0
test eax, eax
jne 0x4424ac
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx + 0x18]
add eax, dword [esi + 0x18]
cdq
mov ecx, edx
mov edx, dword [esp + 0x18]
mov esi, eax
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], ecx
mov eax, dword [edx + 0x48]
cdq
cmp ecx, edx
jg 0x442b7b
jl 0x4426bb
cmp esi, eax
ja 0x442b7b
mov eax, dword [esp + 0x1c]
mov cx, word [eax + 0x1c]
mov edx, 0xbf02
and cx, dx
or cx, 2
mov word [eax + 0x1c], cx
mov edx, dword [esp + 0x68]
xor ecx, ecx
cmp eax, dword [esp + 0x2c]
sete cl
add edx, 2
push ecx
push edx
push eax
call fcn.0043b970
add esp, 0xc
test eax, eax
jne 0x4424ac
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
cmp edi, esi
je 0x442716
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x14]
mov edx, dword [edi + 0x14]
push eax
push ecx
push edx
call fcn.00498400
add esp, 0xc
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
mov eax, dword [esi + 0x18]
add eax, dword [edi + 0x14]
push ecx
push edx
push eax
call fcn.00498400
mov edx, dword [esp + 0x74]
mov ecx, dword [edi + 0x14]
mov byte [edx + ecx], 0
mov ecx, dword [esp + 0x74]
mov eax, dword [edi + 0x14]
mov byte [ecx + eax + 1], 0
mov edx, 0x200
add esp, 0xc
or word [edi + 0x1c], dx
mov eax, dword [esp + 0x68]
mov dword [edi + 0x18], eax
mov byte [edi + 0x1f], bl
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x28]
lea ecx, [eax + eax*4]
lea ebx, [edi + ecx*8]
mov esi, ebx
call fcn.00441db0
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
lea esi, [edi + edx*8]
call fcn.00441db0
movzx ecx, word [esi + 0x1c]
movzx edx, word [ebx + 0x1c]
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
or ecx, edx
lea edi, [edi + eax*8]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x68], ecx
test cl, 1
jne 0x4429ab
mov al, byte [esi + 0x1c]
and al, byte [ebx + 0x1c]
test al, 4
je 0x442891
mov ecx, dword [ebx]
mov dword [esp + 0x70], ecx
mov ebx, dword [ebx + 4]
mov dword [esp + 0x74], ebx
mov eax, dword [esi]
mov dword [esp + 0x78], eax
mov esi, dword [esi + 4]
mov dword [esp + 0x7c], esi
movzx edx, byte [ebp]
add edx, 0xffffffaa
cmp edx, 3
ja case.default.0x4427da
jmp dword [edx*4 + 0x44704c]
add eax, ecx
adc esi, ebx
mov dword [esp + 0x7c], esi
jmp 0x44286b
sub eax, ecx
sbb esi, ebx
mov dword [esp + 0x7c], esi
jmp 0x44286b
push ebx
push ecx
push esi
push eax
call fcn.004a6160
jmp 0x442867
mov edx, ecx
or edx, ebx
je 0x4429ab
mov edx, ecx
and edx, ebx
cmp edx, 0xffffffff
jne 0x442831
test eax, eax
jne 0x442831
cmp esi, 0x80000000
jne 0x442831
mov ecx, 1
xor ebx, ebx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], ebx
push ebx
push ecx
push esi
push eax
call fcn.0049deb0
jmp 0x442867
mov edx, ecx
or edx, ebx
je 0x4429ab
mov edx, ecx
and edx, ebx
cmp edx, 0xffffffff
jne 0x44285e
mov ecx, 1
xor ebx, ebx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], ebx
push ebx
push ecx
push esi
push eax
call fcn.0049df60
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov cx, word [edi + 0x1c]
mov edx, 0xbf04
and cx, dx
mov dword [edi], eax
mov eax, dword [esp + 0x7c]
or cx, 4
mov dword [edi + 4], eax
mov word [edi + 0x1c], cx
jmp case.0x44208d.17
mov eax, ebx
call fcn.0043be40
fstp qword [esp + 0x80]
mov eax, esi
call fcn.0043be40
fst qword [esp + 0x88]
movzx eax, byte [ebp]
add eax, 0xffffffaa
cmp eax, 3
ja case.default.0x4428b9
jmp dword [eax*4 + 0x44705c]
fadd qword [esp + 0x80]
jmp 0x442959
fsub qword [esp + 0x80]
jmp 0x442959
fmul qword [esp + 0x80]
jmp 0x442959
fldz
fld qword [esp + 0x80]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x4429a7
fdivp st(1)
jmp 0x442959
fld qword [esp + 0x80]
call fcn.004ab806
mov esi, eax
mov ebx, edx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], ebx
call fcn.004ab806
mov ecx, esi
or ecx, ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
je 0x4429ab
mov ecx, esi
and ecx, ebx
cmp ecx, 0xffffffff
jne 0x442944
mov esi, 1
xor ebx, ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], ebx
push ebx
push esi
push edx
push eax
call fcn.0049df60
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
fild qword [esp + 0x58]
sub esp, 8
fst qword [esp + 0x90]
fstp qword [esp]
call fcn.00425900
add esp, 8
test eax, eax
jne 0x4429ab
mov dx, word [edi + 0x1c]
fld qword [esp + 0x88]
mov eax, 0xbf08
fstp qword [edi + 8]
and dx, ax
or dx, 8
mov word [edi + 0x1c], dx
test byte [esp + 0x68], 8
jne case.0x44208d.17
mov esi, edi
call fcn.0043be90
jmp case.0x44208d.17
fstp st(0)
fstp st(0)
push edi
call fcn.0043bff0
add esp, 4
jmp case.0x44208d.17
movzx ecx, byte [ebp + 3]
mov edx, dword [esi + 0x24]
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], ecx
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea edx, [ebx + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ebx, [ebx + eax*8]
xor eax, eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x68], eax
test ecx, ecx
jle 0x442a42
mov ecx, dword [esp + 0xb0]
mov dword [ecx + eax*4], ebx
mov ecx, dword [esp + 0x6c]
mov edx, 0x1000
test word [ecx + 0x1c], dx
je 0x442a20
push ecx
call fcn.0043baa0
add esp, 4
test eax, eax
jne 0x4424ac
mov ecx, dword [esp + 0x6c]
call fcn.00441c80
mov eax, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
inc eax
add ebx, 0x28
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ebx
jl 0x4429f2
cmp byte [ebp + 1], 0xfb
mov eax, dword [ebp + 0x10]
jne 0x442a59
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
jmp 0x442a63
mov dword [esp + 0x74], eax
mov ecx, dword [eax]
mov dword [esp + 0x70], ecx
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
xor eax, eax
mov edx, 1
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov ebx, edi
lea eax, [esp + 0x78]
mov word [esp + 0x94], dx
mov dword [esp + 0x88], esi
call fcn.0043c330
mov eax, dword [esp + 0x94]
and eax, 0xbf01
or eax, 1
mov word [esp + 0x94], ax
mov eax, dword [esp + 0x70]
mov dword [esp + 0xa4], 0
test byte [eax + 3], 8
je 0x442ad0
mov ecx, dword [ebp - 4]
mov dword [esp + 0xa8], ecx
mov edx, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov eax, dword [eax + 0xc]
push edx
push ecx
lea edx, [esp + 0x78]
push edx
call eax
add esp, 0xc
cmp byte [esi + 0x1e], 0
jne 0x446caa
mov ebx, dword [esp + 0x74]
test ebx, ebx
je 0x442b16
mov ecx, dword [ebp + 4]
push ecx
call fcn.0043ee70
mov edx, dword [esp + 0x78]
add esp, 4
mov dword [ebp + 0x10], edx
mov byte [ebp + 1], 0xf9
cmp dword [esp + 0xa4], 0
je 0x442b53
lea eax, [esp + 0x78]
push eax
call fcn.0043ff30
mov edi, dword [esp + 0x28]
add esp, 4
push eax
push 0x4c1ee8
add edi, 0x5c
mov eax, esi
call fcn.00423dc0
mov ecx, dword [esp + 0xac]
mov edi, dword [esp + 0x24]
add esp, 8
mov dword [esp + 0x14], ecx
movzx ecx, byte [esp + 0x30]
lea eax, [esp + 0x78]
call fcn.0043b950
lea ebx, [esp + 0x78]
mov eax, edi
call fcn.0043c330
mov ecx, edi
call fcn.0043c250
test eax, eax
je case.0x44208d.17
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
push str.string_or_blob_too_big
add edi, 0x5c
call fcn.00423dc0
mov dword [esp + 0x18], 0x12
add esp, 4
mov esi, dword [esp + 0x24]
mov eax, dword [esi + 0x5c]
mov ecx, dword [esi + 0xbc]
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
push eax
push ecx
push edx
push str.statement_aborts_at__d:___s___s
mov eax, edi
mov dword [esi + 0x58], edi
call fcn.004250c0
push esi
call fcn.0043e960
add esp, 0x14
cmp edi, 0xc0a
jne 0x442bdb
mov eax, dword [esp + 0x18]
mov byte [eax + 0x1e], 1
cmp byte [esp + 0x3b], 0
mov edi, 1
je 0x442bf5
mov ebx, dword [esp + 0x18]
push 0
call fcn.00452680
add esp, 4
mov ebx, dword [esp + 0x3c]
call fcn.00431070
mov ecx, dword [esp + 0x12c]
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049110c
add esp, 0x124
ret
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ecx, [ebx + eax*8]
mov eax, dword [ebp + 0xc]
lea esi, [ebx + edx*8]
lea edx, [eax + eax*4]
mov al, byte [ecx + 0x1c]
or al, byte [esi + 0x1c]
lea edi, [ebx + edx*8]
mov dword [esp + 0x1c], edi
test al, 1
je 0x442c50
push edi
call fcn.0043bff0
add esp, 4
jmp case.0x44208d.17
call fcn.0043bdd0
mov ecx, esi
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
call fcn.0043bdd0
mov ecx, eax
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], edx
movzx eax, byte [ebp]
sub eax, 0x52
je 0x442cb1
sub eax, 1
je 0x442ca7
mov edx, dword [esp + 0x6c]
sub eax, 1
mov eax, dword [esp + 0x68]
je 0x442c98
call fcn.004abce0
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
jmp 0x442cb9
call fcn.004ab7b0
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
jmp 0x442cb9
or dword [esp + 0x68], ecx
or dword [esp + 0x6c], edx
jmp 0x442cb9
and dword [esp + 0x68], ecx
and dword [esp + 0x6c], edx
mov ecx, dword [esp + 0x68]
mov ax, word [edi + 0x1c]
mov dword [edi], ecx
mov edx, dword [esp + 0x6c]
mov ecx, 0xbf04
and ax, cx
or ax, 4
mov dword [edi + 4], edx
mov word [edi + 0x1c], ax
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x28]
lea esi, [eax + edx*8]
call fcn.0043bef0
mov eax, dword [ebp + 8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x28]
lea ecx, [eax + eax*4]
lea esi, [edx + ecx*8]
call fcn.00441db0
test byte [esi + 0x1c], 8
je 0x442d1c
call fcn.0043be90
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x442d39
mov ebp, dword [ebp + 8]
test ebp, ebp
je 0x446cbc
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
and eax, 0xbf04
or eax, 4
mov word [esi + 0x1c], ax
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea eax, [ebp + ebp*4]
test byte [ebx + eax*8 + 0x1c], 4
lea esi, [ebx + eax*8]
je case.0x44208d.17
call fcn.0043bf20
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea ecx, [ebp + ebp*4]
lea esi, [ebx + ecx*8]
movzx ecx, word [esi + 0x1c]
test cl, 1
jne case.0x44208d.17
mov eax, ecx
shr eax, 3
and eax, 2
or eax, ecx
mov word [esi + 0x1c], ax
test al, 2
jne 0x442da4
test al, 0xc
je 0x442da4
movzx edi, byte [esp + 0x30]
call fcn.0043bbc0
mov edi, dword [esp + 0x1c]
mov edx, 0xfff3
and word [esi + 0x1c], dx
movzx eax, word [esi + 0x1c]
test eax, 0x4000
je 0x442dcf
call fcn.0043bb10
mov dword [esp + 0x14], eax
mov eax, 0xbfe3
and word [esi + 0x1c], ax
jmp case.0x44208d.17
mov eax, 0xbfe3
and word [esi + 0x1c], ax
mov dword [esp + 0x14], 0
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea ecx, [ebp + ebp*4]
movzx eax, word [ebx + ecx*8 + 0x1c]
lea esi, [ebx + ecx*8]
test al, 1
jne case.0x44208d.17
test al, 0x10
jne 0x442e2f
test al, 2
jne 0x442e16
test al, 0xc
je 0x442e16
movzx edi, byte [esp + 0x30]
call fcn.0043bbc0
mov edi, dword [esp + 0x1c]
mov dx, word [esi + 0x1c]
mov eax, 0xbf10
and dx, ax
or dx, 0x10
mov word [esi + 0x1c], dx
jmp case.0x44208d.17
and eax, 0xff10
mov word [esi + 0x1c], ax
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea ecx, [ebp + ebp*4]
lea eax, [ebx + ecx*8]
call fcn.0043bf80
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea edx, [ebp + ebp*4]
test byte [ebx + edx*8 + 0x1c], 1
lea esi, [ebx + edx*8]
jne case.0x44208d.17
call fcn.0043bef0
jmp case.0x44208d.17
mov ebp, dword [ebp + 4]
lea eax, [ebp + ebp*4]
test byte [ebx + eax*8 + 0x1c], 1
lea esi, [ebx + eax*8]
jne case.0x44208d.17
call fcn.0043bf20
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0xc]
lea esi, [ebx + ecx*8]
mov cx, word [esi + 0x1c]
lea edx, [eax + eax*4]
lea eax, [ebx + edx*8]
mov word [esp + 0x6e], cx
mov dx, word [eax + 0x1c]
mov word [esp + 0x70], dx
movzx ecx, word [esi + 0x1c]
mov dword [esp + 0x2c], eax
movzx eax, word [eax + 0x1c]
mov dl, al
or dl, cl
mov dword [esp + 0x34], esi
test dl, 1
je 0x442f27
mov dl, byte [ebp + 3]
test dl, dl
jns 0x442ee4
and al, cl
test al, 1
mov eax, 0
sete al
jmp 0x442fb2
test dl, 0x10
je 0x442f11
mov ebp, dword [ebp + 8]
lea eax, [ebp + ebp*4]
mov cx, word [ebx + eax*8 + 0x1c]
lea edi, [ebx + eax*8]
mov edx, 0xbf01
and cx, dx
or cx, 1
mov dword [esp + 0x1c], edi
mov word [edi + 0x1c], cx
jmp case.0x44208d.17
test dl, 8
je case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov al, byte [ebp + 3]
and al, 0x67
mov byte [esp + 0x6c], al
je 0x442f6a
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
push esi
call fcn.00441e30
mov al, byte [esp + 0x70]
mov ecx, dword [esp + 0x30]
add esp, 4
push esi
call fcn.00441e30
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax + 0x1e], 0
jne 0x4424ac
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x34]
mov ecx, 0x4000
test word [edx + 0x1c], cx
je 0x442f84
mov esi, edx
call fcn.0043bb10
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov eax, 0x4000
test word [ecx + 0x1c], ax
je 0x442f9e
mov esi, ecx
call fcn.0043bb10
mov ebx, dword [esp + 0x28]
mov eax, dword [ebp + 0x10]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
call fcn.0043c500
mov esi, dword [esp + 0x34]
mov dword [esp + 0x68], eax
movzx ecx, byte [ebp]
add ecx, 0xffffffb5
cmp ecx, 4
ja case.default.0x442fc2
jmp dword [ecx*4 + 0x44706c]
xor edx, edx
test eax, eax
sete dl
mov eax, edx
jmp 0x443005
xor ecx, ecx
test eax, eax
setne cl
jmp 0x443003
xor edx, edx
test eax, eax
setl dl
mov eax, edx
jmp 0x443005
xor ecx, ecx
test eax, eax
setle cl
jmp 0x443003
xor edx, edx
test eax, eax
setg dl
mov eax, edx
jmp 0x443005
xor ecx, ecx
test eax, eax
setge cl
mov eax, ecx
mov dword [esp + 0x68], eax
test byte [ebp + 3], 0x10
je 0x44303e
mov ebp, dword [ebp + 8]
lea edx, [ebp + ebp*4]
mov ax, word [ebx + edx*8 + 0x1c]
lea edi, [ebx + edx*8]
mov ecx, 0xbf04
and ax, cx
or ax, 4
mov word [edi + 0x1c], ax
mov eax, dword [esp + 0x68]
cdq
mov dword [esp + 0x1c], edi
mov dword [edi], eax
mov dword [edi + 4], edx
jmp 0x44304a
test eax, eax
je 0x44304a
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
mov dl, byte [esp + 0x6e]
mov ecx, dword [esp + 0x2c]
mov byte [esi + 0x1c], dl
mov al, byte [esp + 0x70]
mov byte [ecx + 0x1c], al
jmp case.0x44208d.17
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x44], edx
jmp case.0x44208d.17
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x68], eax
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x78], edx
mov ecx, dword [ebp + 4]
mov dword [esp + 0x70], ecx
mov ecx, dword [ebp + 8]
mov dword [esp + 0x74], ecx
xor ecx, ecx
mov dword [esp + 0x6c], ecx
test eax, eax
jle 0x44311b
mov ebx, dword [esp + 0x44]
mov edi, dword [esp + 0x28]
jmp 0x4430a5
mov edx, dword [esp + 0x78]
test ebx, ebx
je 0x4430ae
mov esi, dword [ebx + ecx*4]
jmp 0x4430b0
mov esi, ecx
mov dword [esp + 0x7c], esi
mov eax, dword [edx + ecx*4 + 0xc]
mov dword [esp + 0x80], eax
mov edx, dword [edx + 8]
movzx ecx, byte [edx + ecx]
mov edx, dword [esp + 0x74]
mov dword [esp + 0x84], ecx
lea ecx, [esi + edx]
lea ecx, [ecx + ecx*4]
lea edx, [edi + ecx*8]
mov ecx, dword [esp + 0x70]
add ecx, esi
lea ecx, [ecx + ecx*4]
lea ecx, [edi + ecx*8]
call fcn.0043c500
mov dword [esp + 0x48], eax
test eax, eax
jne 0x44310b
mov ecx, dword [esp + 0x6c]
inc ecx
cmp ecx, dword [esp + 0x68]
mov dword [esp + 0x6c], ecx
jl 0x4430a1
mov dword [esp + 0x44], eax
jmp 0x4436dd
cmp dword [esp + 0x84], 0
je 0x44311b
neg eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], 0
jmp 0x4436dd
mov eax, dword [esp + 0x48]
test eax, eax
jge 0x44313d
mov ebp, dword [ebp + 4]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
jne 0x44314c
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov ebp, dword [ebp + 0xc]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
test byte [ebx + edx*8 + 0x1c], 1
lea ecx, [ebx + edx*8]
je 0x443170
mov edx, 2
jmp 0x443182
call fcn.0043bdd0
or eax, edx
je 0x443180
mov edx, 1
jmp 0x443182
xor edx, edx
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
test byte [ebx + eax*8 + 0x1c], 1
lea ecx, [ebx + eax*8]
je 0x44319d
mov eax, 2
jmp 0x4431b3
call fcn.0043bdd0
or eax, edx
mov edx, dword [esp + 0x68]
je 0x4431b1
mov eax, 1
jmp 0x4431b3
xor eax, eax
mov dword [esp + 0x6c], eax
cmp byte [ebp], 0x45
jne 0x4431ca
lea ecx, [eax + edx*2]
movzx eax, byte [edx + ecx + 0x4bb068]
jmp 0x4431d5
lea eax, [eax + edx*2]
movzx eax, byte [edx + eax + 0x4bb074]
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 0xc]
lea ecx, [ebp + ebp*4]
lea edi, [ebx + ecx*8]
mov dword [esp + 0x1c], edi
cmp eax, 2
jne 0x443205
mov dx, word [edi + 0x1c]
mov eax, 0xbf01
and dx, ax
or dx, 1
mov word [edi + 0x1c], dx
jmp case.0x44208d.17
mov cx, word [edi + 0x1c]
cdq
mov dword [edi + 4], edx
mov edx, 0xbf04
and cx, dx
or cx, 4
mov dword [edi], eax
mov word [edi + 0x1c], cx
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ebp, dword [ebp + 8]
lea eax, [eax + eax*4]
test byte [ebx + eax*8 + 0x1c], 1
lea edx, [ebp + ebp*4]
lea ecx, [ebx + eax*8]
lea edi, [ebx + edx*8]
mov dword [esp + 0x1c], edi
je 0x443250
push edi
call fcn.0043bff0
add esp, 4
jmp case.0x44208d.17
call fcn.0043bdd0
or eax, edx
jne 0x443270
mov eax, 1
cdq
push edx
push eax
mov eax, edi
call fcn.0043c090
add esp, 8
jmp case.0x44208d.17
xor eax, eax
cdq
push edx
push eax
mov eax, edi
call fcn.0043c090
add esp, 8
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ebp, dword [ebp + 8]
lea eax, [eax + eax*4]
test byte [ebx + eax*8 + 0x1c], 1
lea edx, [ebp + ebp*4]
lea ecx, [ebx + eax*8]
lea edi, [ebx + edx*8]
mov dword [esp + 0x1c], edi
je 0x4432b0
push edi
call fcn.0043bff0
add esp, 4
jmp case.0x44208d.17
call fcn.0043bdd0
not edx
not eax
push edx
push eax
mov eax, edi
call fcn.0043c090
add esp, 8
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
test byte [ebx + eax*8 + 0x1c], 1
lea eax, [ebx + eax*8]
je 0x4432df
mov eax, dword [ebp + 0xc]
jmp 0x44330d
call fcn.0043be40
fcomp qword [0x4c9790]
fnstsw ax
test ah, 0x44
jnp 0x4432f8
mov eax, 1
jmp 0x4432fa
xor eax, eax
mov dword [esp + 0x68], eax
cmp byte [ebp], 0x1b
jne 0x443311
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
mov dword [esp + 0x68], eax
test eax, eax
je case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
test byte [ebx + edx*8 + 0x1c], 1
je case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
test byte [ebx + eax*8 + 0x1c], 1
jne case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov ecx, dword [ebp + 4]
xor eax, eax
mov dword [esp + 0x78], ecx
mov edx, dword [ebp + 8]
mov dword [esp + 0x80], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0x7c], edx
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [ebx + eax*8]
mov dword [esp + 0xa4], eax
mov cx, word [eax + 0x1c]
mov edx, 0xbf01
and cx, dx
or cx, 1
mov word [eax + 0x1c], cx
mov ecx, dword [esp + 0x78]
mov eax, dword [esi + 0x34]
xor edx, edx
mov dword [esp + 0x84], edx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x80], eax
mov ecx, dword [eax]
mov dword [esp + 0x88], ecx
cmp ecx, edx
je 0x4434e9
mov esi, eax
call fcn.0043f040
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov eax, dword [esp + 0x80]
cmp byte [eax + 0x14], 0
je 0x44343b
mov dword [esp + 0x68], 0
jmp case.0x44208d.17
mov edx, dword [eax + 0x4c]
mov ecx, dword [esp + 0x24]
cmp edx, dword [ecx + 0x50]
jne 0x44345a
mov edx, dword [eax + 0x50]
mov dword [esp + 0x68], edx
mov ecx, dword [eax + 0x5c]
mov dword [esp + 0x84], ecx
jmp 0x443487
cmp byte [eax + 0x17], 0
je 0x4434cf
mov eax, dword [esp + 0x88]
lea edi, [esp + 0x70]
call fcn.00434ce0
mov edx, dword [esp + 0x70]
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x68]
test ecx, ecx
je case.0x44208d.17
mov edx, dword [esp + 0x18]
cmp ecx, dword [edx + 0x48]
ja 0x442b7b
mov edx, dword [eax + 0x34]
mov esi, dword [esp + 0x24]
mov dword [esp + 0x94], edx
mov ecx, dword [eax + 0x54]
mov dword [esp + 0x8c], ecx
mov edi, dword [eax + 0x4c]
cmp edi, dword [esi + 0x50]
jne 0x443532
mov eax, dword [eax + 0x58]
mov dword [esp + 0x90], eax
jmp 0x4438bc
mov esi, dword [esp + 0x88]
lea eax, [esp + 0x68]
push eax
call fcn.00434d10
add esp, 4
mov dword [esp + 0x14], eax
jmp 0x443480
mov ecx, dword [eax + 0x2c]
cmp ecx, edx
jle 0x443529
lea ecx, [ecx + ecx*4]
lea ebx, [ebx + ecx*8]
mov dword [esp + 0xe8], ebx
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x68], ecx
mov ecx, dword [ebx + 0x14]
mov dword [esp + 0x84], ecx
test byte [ebp + 3], 0x20
je 0x44351e
xor esi, esi
mov dword [eax + 0x4c], esi
jmp 0x443480
mov esi, dword [esi + 0x50]
mov dword [eax + 0x4c], esi
jmp 0x443480
mov dword [esp + 0x68], edx
jmp case.0x44208d.17
lea ecx, [ecx + edx*4]
mov dword [esp + 0x90], ecx
mov dword [esp + 0xe4], 0
mov dword [eax + 0x58], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x68]
mov dword [ecx + 0x50], edx
mov ecx, dword [esp + 0x80]
mov eax, dword [esi + 0x50]
mov dword [ecx + 0x4c], eax
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x44357c
mov dword [esp + 0xa0], ecx
jmp 0x443689
mov edx, dword [esp + 0x80]
cmp byte [edx + 0x17], 0
je 0x4435ac
mov esi, dword [esp + 0x88]
lea eax, [esp + 0xe4]
push eax
call fcn.004353e0
mov ecx, dword [esp + 0xe8]
add esp, 4
jmp 0x443654
mov eax, dword [esp + 0x88]
xor edx, edx
cmp byte [eax + 0x43], 1
mov edi, eax
jne 0x44364b
cmp word [eax + 0x3e], 0
movsx ecx, word [eax + 0x5c]
mov edx, dword [eax + ecx*4 + 0x60]
mov dword [esp + 0x2c], edx
jne 0x443613
movsx ecx, word [eax + 0x5c]
movzx esi, word [eax + ecx*2 + 0xb0]
mov ecx, dword [eax + ecx*4 + 0x60]
movzx ebx, word [ecx + 0xc]
mov edx, dword [ecx + 0x40]
add eax, 0x20
push eax
add ebx, edx
movzx eax, byte [ebx + esi*2]
lea esi, [ebx + esi*2]
movzx esi, byte [esi + 1]
shl eax, 8
or eax, esi
movzx esi, word [ecx + 0x12]
and eax, esi
add eax, edx
push eax
push ecx
call fcn.004318c0
add esp, 0xc
movzx eax, word [edi + 0x38]
mov ecx, dword [esp + 0x2c]
add eax, dword [edi + 0x20]
cmp byte [ecx + 2], 0
je 0x443637
movzx ecx, word [edi + 0x3a]
xor edx, edx
sub ecx, edx
mov dword [esp + 0xe4], ecx
mov edx, eax
jmp 0x443652
movzx ecx, word [edi + 0x3a]
mov edx, dword [edi + 0x28]
sub ecx, edx
mov dword [esp + 0xe4], ecx
add edx, eax
jmp 0x443652
mov ecx, dword [esp + 0xe4]
mov eax, edx
mov dword [esp + 0xa0], eax
cmp dword [esp + 0x68], ecx
ja 0x443674
mov edx, dword [esp + 0x80]
mov dword [esp + 0x84], eax
mov dword [edx + 0x5c], eax
jmp 0x443682
mov eax, dword [esp + 0x80]
mov dword [eax + 0x5c], 0
mov ecx, dword [esp + 0xa0]
mov al, byte [ecx]
cmp al, 0x80
jae 0x4436a0
movzx edx, al
mov dword [esp + 0xd8], edx
mov eax, 1
jmp 0x4436bd
lea esi, [esp + 0xd8]
call fcn.00426570
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 0xa0]
movzx eax, al
movzx eax, al
mov dword [esp + 0xe0], eax
cmp edx, 0x18003
jbe 0x4436fd
mov eax, 0xf309
call fcn.0047c840
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0x1c]
inc dword [esp + 0x20]
cmp dword [esp + 0x14], 0
jne 0x442b9b
mov esi, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
jmp 0x442000
mov eax, dword [esp + 0x94]
lea ebx, [eax + eax*4 + 3]
cmp ebx, edx
mov dword [esp + 0x98], ebx
jle 0x44371c
mov ebx, edx
mov dword [esp + 0x98], ebx
cmp dword [esp + 0x84], 0
jne 0x443792
cmp dword [esp + 0xe4], ebx
jge 0x443792
mov edx, dword [esp + 0x80]
xor ecx, ecx
mov word [esp + 0xc4], cx
mov dword [esp + 0xb8], ecx
movzx eax, byte [edx + 0x17]
push eax
mov eax, dword [esp + 0x8c]
push ecx
lea edi, [esp + 0xb0]
call fcn.0043c790
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4436dd
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0xd8]
mov ebx, dword [esp + 0x98]
mov eax, dword [esp + 0x94]
mov dword [esp + 0xa0], ecx
lea esi, [ecx + ebx]
mov dword [esp + 0xd4], esi
mov esi, dword [esp + 0xe0]
add esi, ecx
xor ecx, ecx
mov dword [esp + 0xd0], esi
mov dword [esp + 0x9c], ecx
test eax, eax
jle 0x443863
mov eax, dword [esp + 0xd0]
cmp eax, dword [esp + 0xd4]
mov eax, dword [esp + 0x90]
jae 0x443901
mov dword [eax + ecx*4], edx
mov ecx, dword [esp + 0xd0]
mov al, byte [ecx]
mov edx, dword [esp + 0x9c]
cmp al, 0x80
jae 0x443803
movzx ecx, al
mov eax, dword [esp + 0x8c]
mov dword [eax + edx*4], ecx
mov eax, 1
jmp 0x443815
mov eax, dword [esp + 0x8c]
lea esi, [eax + edx*4]
call fcn.00426570
movzx eax, al
mov edx, dword [esp + 0x8c]
movzx ecx, al
add dword [esp + 0xd0], ecx
mov ecx, dword [esp + 0x9c]
mov eax, dword [edx + ecx*4]
call fcn.0043f1d0
mov edx, dword [esp + 0xd8]
add edx, eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], edx
cmp edx, eax
jae 0x443916
mov ecx, dword [esp + 0xd4]
inc ecx
mov dword [esp + 0xd0], ecx
lea edx, [esp + 0xa8]
push edx
call fcn.0043bd40
mov ecx, dword [esp + 0xd8]
mov eax, 1
mov word [esp + 0xc8], ax
mov eax, dword [esp + 0xd4]
add esp, 4
cmp eax, ecx
ja 0x443a4d
mov edx, dword [esp + 0xd8]
mov esi, dword [esp + 0x68]
cmp edx, esi
ja 0x443a4d
cmp eax, ecx
jne 0x4438b5
cmp edx, esi
jne 0x443a4d
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x90]
cmp dword [edx + eax*4], 0
je 0x4439ce
cmp dword [esp + 0x84], 0
je 0x443930
mov esi, dword [esp + 0xa4]
call fcn.0043bcd0
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x90]
mov ecx, dword [ecx + eax*4]
add ecx, dword [esp + 0x84]
jmp 0x4439a8
mov dword [eax + ecx*4], 0
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 0x9c]
inc ecx
cmp ecx, dword [esp + 0x94]
mov dword [esp + 0x9c], ecx
jl 0x4437bd
jmp 0x443863
mov eax, dword [ecx + eax*4]
call fcn.0043f1d0
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x98], eax
lea eax, [esp + 0xa8]
call fcn.0043c330
mov eax, dword [esp + 0x80]
movzx ecx, byte [eax + 0x17]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x98]
push ecx
mov ecx, dword [edx + eax*4]
mov eax, dword [esp + 0x8c]
push ecx
lea edi, [esp + 0xb0]
call fcn.0043c790
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4436dd
mov ecx, dword [esp + 0xbc]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xa0], ecx
mov edx, dword [esp + 0x8c]
mov esi, dword [esp + 0xa4]
mov eax, dword [edx + eax*4]
call fcn.0043f2a0
mov ecx, dword [esp + 0xa4]
mov dl, byte [esp + 0x30]
mov byte [ecx + 0x1f], dl
jmp 0x4439ec
cmp byte [ebp + 1], 0xf8
jne 0x4439ec
mov eax, dword [ebp + 0x10]
mov ebx, dword [esp + 0xa4]
push 0x800
push eax
call fcn.0043c280
add esp, 8
cmp dword [esp + 0xcc], 0
je 0x443a38
mov eax, dword [esp + 0xa4]
mov ecx, 0xe7ff
and word [eax + 0x1c], cx
mov eax, dword [esp + 0xa4]
mov edx, 0x200
or word [eax + 0x1c], dx
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xbc]
mov dword [eax + 0x14], ecx
mov edx, dword [esp + 0xcc]
mov eax, dword [esp + 0xa4]
mov dword [eax + 0x24], edx
mov ecx, dword [esp + 0xa4]
push ecx
call fcn.0043baa0
add esp, 4
jmp 0x4436d9
mov eax, 0xf353
jmp 0x4436d4
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x68], ecx
mov ebp, dword [ebp + 4]
mov al, byte [ecx]
lea edx, [ebp + ebp*4]
lea esi, [ebx + edx*8]
mov byte [esp + 0x6c], al
test al, al
je 0x443aab
inc ecx
mov dword [esp + 0x68], ecx
mov ecx, 0x4000
test word [esi + 0x1c], cx
je 0x443a8b
call fcn.0043bb10
mov al, byte [esp + 0x6c]
mov edx, dword [esp + 0x30]
push edx
mov ecx, esi
call fcn.00441e30
mov ecx, dword [esp + 0x6c]
mov al, byte [ecx]
add esp, 4
add esi, 0x28
mov byte [esp + 0x6c], al
test al, al
jne 0x443a72
inc ecx
mov dword [esp + 0x68], ecx
jmp case.0x44208d.17
xor eax, eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 4]
mov dword [esp + 0x9c], eax
mov ecx, dword [ebp + 0x10]
lea edx, [eax + eax*4]
lea edi, [ebx + edx*8]
mov dword [esp + 0xa0], ecx
movzx ecx, byte [esi + 0x64]
mov dword [esp + 0x94], edi
mov eax, dword [ebp + 8]
mov dword [esp + 0x9c], eax
lea eax, [eax + eax*4]
lea eax, [edi + eax*8 - 0x28]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x98], eax
mov ebp, dword [ebp + 0xc]
lea edx, [ebp + ebp*4]
lea ecx, [ebx + edx*8]
mov esi, edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x6c], esi
cmp edi, eax
ja 0x443c21
jmp 0x443b40
cmp dword [esp + 0xa0], 0
je 0x443b83
mov edx, dword [esp + 0x30]
mov ecx, esi
sub ecx, edi
push edx
mov eax, 0x66666667
imul ecx
mov ecx, dword [esp + 0xa4]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov al, byte [eax + ecx]
mov ecx, esi
call fcn.00441e30
mov edi, dword [esp + 0x98]
mov esi, dword [esp + 0x70]
add esp, 4
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x443ba4
cmp dword [esi + 0x18], 0
jle 0x443ba4
call fcn.0043bb10
mov edi, dword [esp + 0x94]
mov esi, dword [esp + 0x6c]
mov eax, dword [esp + 0xa4]
push eax
mov ecx, esi
call fcn.0043f0f0
mov ecx, eax
add esp, 4
mov dword [esp + 0x90], ecx
call fcn.0043f1d0
mov ebx, eax
cdq
add dword [esp + 0x70], eax
push 0
push ecx
adc dword [esp + 0x7c], edx
mov dword [esp + 0xb4], ebx
call fcn.004265f0
add dword [esp + 0x80], eax
mov ecx, 0x4000
add esp, 8
test word [esi + 0x1c], cx
je 0x443bfe
mov edx, dword [esi]
add dword [esp + 0x88], edx
jmp 0x443c0d
test ebx, ebx
je 0x443c0d
mov dword [esp + 0x88], 0
add esi, 0x28
mov dword [esp + 0x6c], esi
cmp esi, dword [esp + 0x98]
jbe 0x443b40
mov esi, dword [esp + 0x78]
mov eax, esi
cdq
push edx
push eax
call fcn.004265f0
mov edi, eax
add esi, edi
mov eax, esi
cdq
push edx
push eax
mov dword [esp + 0x9c], edi
mov dword [esp + 0x88], esi
call fcn.004265f0
add esp, 0x10
cmp edi, eax
jge 0x443c57
inc esi
mov dword [esp + 0x78], esi
mov eax, esi
cdq
mov esi, eax
mov eax, dword [esp + 0x88]
mov ecx, edx
cdq
sub esi, eax
mov eax, dword [esp + 0x18]
sbb ecx, edx
add esi, dword [esp + 0x70]
adc ecx, dword [esp + 0x74]
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], ecx
mov eax, dword [eax + 0x48]
cdq
cmp ecx, edx
jg 0x442b7b
jl 0x443c9a
cmp esi, eax
ja 0x442b7b
mov ecx, dword [esp + 0x1c]
push 0
push esi
push ecx
call fcn.0043b970
add esp, 0xc
test eax, eax
jne 0x4424ac
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x68], ecx
cmp eax, 0x80
jae 0x443cd3
mov dl, al
mov byte [ecx], dl
mov eax, 1
jmp 0x443cd8
call fcn.004263c0
mov ecx, dword [esp + 0x94]
movzx esi, al
mov eax, dword [esp + 0x98]
mov dword [esp + 0xa8], esi
mov dword [esp + 0x6c], ecx
cmp ecx, eax
ja 0x443d69
jmp 0x443d00
mov eax, dword [esp + 0xa4]
push eax
call fcn.0043f0f0
add esp, 4
mov dword [esp + 0x90], eax
cmp eax, 0x80
jae 0x443d2e
mov edx, dword [esp + 0x68]
mov cl, al
mov byte [esi + edx], cl
mov eax, 1
jmp 0x443d39
mov ecx, dword [esp + 0x68]
add ecx, esi
call fcn.004263c0
mov ecx, dword [esp + 0x6c]
mov esi, dword [esp + 0xa8]
movzx edx, al
mov eax, dword [esp + 0x98]
add ecx, 0x28
add esi, edx
mov dword [esp + 0xa8], esi
mov dword [esp + 0x6c], ecx
cmp ecx, eax
jbe 0x443d00
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x6c], ecx
cmp ecx, eax
ja 0x443db5
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x68]
sub eax, esi
push eax
mov eax, dword [esp + 0xa8]
lea ebx, [esi + edx]
call fcn.0043f1f0
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0xac]
add ecx, 0x28
add esi, eax
add esp, 4
mov dword [esp + 0xa8], esi
mov dword [esp + 0x6c], ecx
cmp ecx, dword [esp + 0x98]
jbe 0x443d71
mov eax, dword [esp + 0x80]
mov ecx, 0x410
mov dword [edi + 0x18], eax
mov word [edi + 0x1c], cx
mov dword [edi + 0x20], 0
mov eax, dword [esp + 0x88]
test eax, eax
je 0x443de5
mov edx, 0x4410
mov dword [edi], eax
mov word [edi + 0x1c], dx
mov byte [edi + 0x1f], 1
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x34]
mov edx, dword [ecx + eax*4]
mov eax, dword [edx]
xor ecx, ecx
mov dword [esp + 0x70], eax
cmp eax, ecx
je 0x443e26
lea ecx, [esp + 0x68]
push ecx
call fcn.00439220
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x18], eax
mov dword [edi], edx
mov eax, dword [esp + 0x70]
add esp, 4
mov dword [edi + 4], eax
jmp case.0x44208d.17
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x68], ecx
mov edx, ecx
mov dword [edi], edx
mov eax, dword [esp + 0x6c]
mov dword [edi + 4], eax
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x68], eax
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x6c], ebx
test eax, eax
jne 0x443f16
cmp dword [ecx + 0x90], eax
jle 0x443e83
push str.cannot_open_savepoint___SQL_statements_in_progress
mov edi, dword [esp + 0x28]
add edi, 0x5c
mov eax, ecx
call fcn.00423dc0
add esp, 4
mov dword [esp + 0x14], 5
jmp 0x4436dd
mov ecx, ebx
call fcn.00425940
mov esi, dword [esp + 0x18]
lea ecx, [eax + 0x19]
mov dword [esp + 0x70], eax
call fcn.00423c10
mov dword [esp + 0x74], eax
test eax, eax
je 0x4436dd
lea edx, [eax + 0x18]
mov dword [eax], edx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x74]
inc eax
push eax
mov eax, dword [edx]
push ecx
push eax
call fcn.00498400
mov eax, esi
add esp, 0xc
cmp byte [eax + 0x1c], 0
je 0x443eda
mov byte [eax + 0x1c], 0
mov byte [eax + 0x1dc], 1
jmp 0x443ee0
inc dword [eax + 0x1d4]
mov ecx, dword [eax + 0x1d0]
mov edx, dword [esp + 0x74]
mov dword [edx + 0x10], ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [eax + 0x1e0]
mov dword [eax + 0x1d0], ecx
mov ecx, dword [esp + 0x74]
mov dword [ecx + 8], edx
mov edx, dword [eax + 0x1e4]
mov eax, dword [esp + 0x74]
mov dword [eax + 0xc], edx
jmp case.0x44208d.17
xor ebp, ebp
mov dword [esp + 0x80], ebp
mov edi, dword [ecx + 0x1d0]
mov dword [esp + 0x78], edi
test edi, edi
je 0x443f50
lea ecx, [ecx]
mov ecx, dword [edi]
mov edx, ebx
call fcn.00425ae0
test eax, eax
je 0x443f76
inc ebp
mov dword [esp + 0x80], ebp
mov edi, dword [edi + 0x10]
mov dword [esp + 0x78], edi
test edi, edi
jne 0x443f30
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
push ebx
push str.no_such_savepoint:__s
add edi, 0x5c
call fcn.00423dc0
add esp, 8
mov dword [esp + 0x14], 1
jmp 0x4436dd
mov ebx, dword [esp + 0x18]
xor eax, eax
cmp dword [ebx + 0x90], eax
jg 0x444125
mov ecx, dword [esp + 0x68]
cmp ecx, 2
jne 0x443f9e
cmp dword [ebx + 0x8c], 1
jg 0x44412c
cmp dword [edi + 0x10], eax
jne 0x443ff9
cmp byte [ebx + 0x1dc], 0
je 0x443ff9
mov dword [esp + 0x2c], 1
cmp ecx, 1
jne 0x443ffd
push ecx
mov ecx, esi
call fcn.0043e900
mov edi, eax
add esp, 4
test edi, edi
jne 0x442bf5
push esi
mov byte [ebx + 0x1c], 1
call fcn.0043e960
add esp, 4
cmp eax, 5
je 0x446cc9
mov byte [ebx + 0x1dc], 0
mov edx, dword [esi + 0x58]
mov dword [esp + 0x14], edx
mov esi, ebx
jmp 0x44408f
mov dword [esp + 0x2c], eax
mov ecx, dword [ebx + 0x1d4]
sub ecx, ebp
dec ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
cmp dword [ebx + 4], eax
jle 0x444064
mov esi, ebx
jmp 0x444027
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x68]
push edx
mov edx, dword [esi + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov ebx, ecx
call fcn.00434a00
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 4]
jl 0x444020
mov edi, dword [esp + 0x78]
cmp dword [esp + 0x68], 2
mov esi, dword [esp + 0x18]
jne 0x444093
mov ebp, 0x200
test dword [esi + 0xc], ebp
je 0x444093
mov eax, esi
call fcn.0043fae0
push 0
mov ebx, esi
call fcn.00452680
add esp, 4
or dword [esi + 0xc], ebp
mov edi, dword [esp + 0x78]
cmp dword [esi + 0x1d0], edi
je 0x4440d6
jmp 0x4440a0
mov eax, dword [esi + 0x1d0]
mov dword [esp + 0x7c], eax
mov eax, dword [eax + 0x10]
mov dword [esi + 0x1d0], eax
mov ecx, dword [esp + 0x7c]
push ecx
push esi
call fcn.004239e0
dec dword [esi + 0x1d4]
mov edi, dword [esp + 0x80]
add esp, 8
cmp dword [esi + 0x1d0], edi
jne 0x4440a0
cmp dword [esp + 0x68], 1
jne 0x44410e
mov edx, dword [edi + 0x10]
mov dword [esi + 0x1d0], edx
mov eax, dword [esp + 0x78]
push eax
push esi
call fcn.004239e0
add esp, 8
cmp dword [esp + 0x2c], 0
jne 0x4436dd
mov eax, dword [esp + 0x18]
dec dword [eax + 0x1d4]
jmp 0x4436dd
mov ecx, dword [edi + 8]
mov dword [esi + 0x1e0], ecx
mov edx, dword [edi + 0xc]
mov dword [esi + 0x1e4], edx
jmp 0x4436dd
cmp dword [esp + 0x68], 2
jne 0x444133
mov eax, str.rollback
jmp 0x444138
mov eax, str.release
mov edi, dword [esp + 0x24]
push eax
push str.cannot__s_savepoint___SQL_statements_in_progress
add edi, 0x5c
mov eax, ebx
call fcn.00423dc0
add esp, 8
mov dword [esp + 0x14], 5
jmp 0x4436dd
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 8]
mov dword [esp + 0x6c], ebp
test eax, eax
je 0x444197
cmp byte [ecx + 0x1c], 0
jne 0x444197
mov edx, 1
mov dword [esp + 0x70], edx
test ebp, ebp
je 0x4441b6
cmp dword [ecx + 0x8c], edx
jle 0x44419f
push str.cannot_rollback_transaction___SQL_statements_in_progress
jmp 0x443e65
mov dword [esp + 0x70], 0
movzx ecx, byte [ecx + 0x1c]
cmp eax, ecx
jne 0x446ce1
test eax, eax
jne 0x4441c9
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x4441d7
cmp dword [ecx + 0x90], 0
jle 0x44419f
push str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x443e65
mov eax, str.cannot_rollback___no_transaction_is_active
test ebp, ebp
jne 0x4441d7
mov eax, str.cannot_commit___no_transaction_is_active
mov edi, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x1c]
add edi, 0x5c
call fcn.00423dc0
add esp, 4
mov dword [esp + 0x14], 1
jmp 0x4436dd
mov edx, dword [ebp + 4]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
shl edx, 4
mov eax, dword [edx + ecx + 4]
mov dword [esp + 0x68], eax
test eax, eax
je 0x4436dd
mov edx, dword [ebp + 8]
push edx
push eax
call fcn.004336a0
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, 5
je 0x446d5c
test eax, eax
jne 0x446d88
cmp dword [ebp + 8], eax
je 0x4436dd
mov ebx, dword [esp + 0x24]
cmp byte [ebx + 0x66], al
je 0x4436dd
mov esi, dword [esp + 0x18]
cmp byte [esi + 0x1c], al
je 0x444263
cmp dword [esi + 0x8c], 1
jle 0x4436dd
cmp dword [ebx + 0xd8], 0
jne 0x444286
inc dword [esi + 0x1d8]
mov eax, dword [esi + 0x1d8]
mov ecx, dword [esi + 0x1d4]
add ecx, eax
mov dword [ebx + 0xd8], ecx
mov edx, dword [ebx + 0xd8]
mov eax, dword [esp + 0x68]
push edx
call fcn.004349b0
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x1e0]
mov dword [ebx + 0xd0], eax
mov ecx, dword [esi + 0x1e4]
add esp, 4
mov dword [ebx + 0xd4], ecx
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x6c], eax
mov ebp, dword [ebp + 0xc]
lea edx, [esp + 0x68]
mov dword [esp + 0x70], ebp
push edx
mov edx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
push ebp
call fcn.00439130
mov eax, dword [esp + 0x70]
cdq
add esp, 8
mov dword [edi], eax
mov dword [edi + 4], edx
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
shl eax, 4
add eax, dword [ecx + 8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x28]
lea esi, [eax + edx*8]
call fcn.0043bef0
mov ecx, dword [esi]
mov edx, dword [esp + 0x68]
mov ebx, dword [ebp + 8]
mov eax, dword [edx + 4]
push ecx
call fcn.004391a0
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 8]
add esp, 4
cmp eax, 1
jne 0x44434f
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0xc]
mov edx, dword [esi]
mov eax, dword [esp + 0x18]
mov dword [ecx], edx
or dword [eax + 0xc], 0x200
jmp 0x444360
cmp eax, 2
jne 0x444360
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0xc]
mov dl, byte [esi]
mov byte [ecx + 0x48], dl
cmp dword [ebp + 4], 1
jne case.0x44208d.17
mov eax, dword [esp + 0x18]
call fcn.0043fae0
mov eax, dword [esp + 0x24]
mov byte [eax + 0x62], 0
jmp case.0x44208d.17
mov ecx, dword [ebp + 4]
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 8]
shl ecx, 4
mov eax, dword [ecx + eax + 4]
mov dword [esp + 0x6c], eax
test eax, eax
je 0x4443aa
lea ecx, [esp + 0x68]
push ecx
push 1
call fcn.00439130
add esp, 8
jmp 0x4443b2
mov dword [esp + 0x68], 0
mov edx, dword [esp + 0x68]
cmp edx, dword [ebp + 8]
je case.0x44208d.17
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x5c]
mov esi, dword [esp + 0x18]
push ecx
push esi
call fcn.004239e0
push esi
mov ebx, str.database_schema_has_changed
call fcn.00423d40
mov edx, dword [esp + 0x30]
mov dword [edx + 0x5c], eax
mov ebp, dword [ebp + 4]
mov ecx, dword [esi + 8]
mov eax, ebp
shl eax, 4
mov edx, dword [eax + ecx + 0xc]
mov eax, dword [edx]
add esp, 0xc
cmp eax, dword [esp + 0x68]
je 0x444408
push ebp
mov ebx, esi
call fcn.00452680
add esp, 4
mov eax, esi
call fcn.0043fae0
mov dword [esp + 0x14], 0x11
jmp case.0x44208d.17
cmp byte [esi + 0x62], 0
je 0x44442f
mov dword [esp + 0x14], 4
jmp case.0x44208d.17
mov edi, dword [esp + 0x18]
xor ecx, ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], ecx
mov edx, dword [ebp + 8]
mov dword [esp + 0x70], edx
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x74], eax
shl eax, 4
add eax, dword [edi + 8]
mov dword [esp + 0x84], eax
mov edi, dword [eax + 4]
mov dword [esp + 0x7c], edi
cmp byte [ebp], 0x27
jne 0x44447d
mov dword [esp + 0x78], 1
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x48]
cmp al, byte [esi + 0x64]
jae 0x444481
mov byte [esi + 0x64], al
jmp 0x444481
mov dword [esp + 0x78], ecx
cmp byte [ebp + 3], 0
je 0x4444a9
lea ecx, [edx + edx*4]
mov edx, dword [esp + 0x28]
lea esi, [edx + ecx*8]
call fcn.0043bef0
mov esi, dword [esi]
cmp esi, 2
mov dword [esp + 0x70], esi
jl 0x446d70
mov ecx, dword [esp + 0x68]
mov al, byte [ebp + 1]
cmp al, 0xfa
jne 0x4444d4
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx]
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x6c], eax
mov ecx, dword [edx + 8]
mov edx, dword [ecx + 0xc]
mov cl, byte [edx + 0x49]
mov byte [eax + 4], cl
mov edx, dword [esp + 0x6c]
movzx ecx, word [edx + 6]
inc ecx
jmp 0x4444db
cmp al, 0xf2
jne 0x4444df
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x68], ecx
mov eax, dword [esp + 0x74]
mov ebx, dword [ebp + 4]
mov edi, dword [esp + 0x24]
push 1
push eax
push ecx
call fcn.00441cb0
add esp, 0xc
mov dword [esp + 0x80], eax
test eax, eax
je 0x4424ac
mov cl, 1
mov byte [eax + 0x14], cl
mov edx, dword [esp + 0x80]
mov byte [edx + 0x18], cl
mov eax, dword [esp + 0x80]
mov ecx, dword [eax]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x74]
push edx
push eax
mov eax, dword [esp + 0x88]
push ecx
call fcn.00434b20
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x7c]
add esp, 0x10
mov dword [esp + 0x14], eax
mov dword [edx + 0x30], ecx
cmp eax, 0x10
jne 0x444568
mov edx, dword [esp + 0x80]
mov dword [edx], 0
mov dword [esp + 0x14], 0
cmp byte [ebp + 1], 0xfa
mov ecx, dword [esp + 0x80]
setne al
mov byte [ecx + 0x16], al
mov eax, dword [esp + 0x80]
cmp byte [eax + 0x16], 0
sete dl
mov byte [eax + 0x17], dl
jmp 0x4436dd
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 4]
mov edi, dword [esp + 0x24]
push 1
push 0xffffffffffffffff
push eax
call fcn.00441cb0
add esp, 0xc
mov dword [esp + 0x68], eax
test eax, eax
je 0x4424ac
mov edx, dword [esp + 0x18]
mov ebx, 1
mov byte [eax + 0x14], bl
movzx ecx, byte [ebp + 3]
or ecx, 9
push 0x41e
push ecx
mov ecx, dword [esp + 0x70]
add ecx, 0x28
push 0
call fcn.00432690
add esp, 0xc
mov dword [esp + 0x14], eax
test eax, eax
jne 0x444694
mov edx, dword [esp + 0x68]
mov eax, dword [edx + 0x28]
push ebx
push eax
call fcn.004336a0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x444694
cmp dword [ebp + 0x10], eax
je 0x444673
mov edx, dword [esp + 0x68]
mov eax, dword [edx + 0x28]
lea ecx, [esp + 0x54]
push 2
push ecx
call fcn.00438ad0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x444669
mov eax, dword [esp + 0x68]
mov ecx, dword [eax]
mov edx, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
push ecx
mov ecx, dword [esp + 0x58]
push edx
push ebx
push ecx
call fcn.00434b20
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x78]
mov dword [eax + 0x30], edx
mov ecx, edi
mov edx, dword [ecx]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 0x30]
mov cl, byte [ecx + 0x49]
add esp, 0x10
mov byte [eax + 4], cl
mov edx, dword [esp + 0x68]
mov byte [edx + 0x16], 0
jmp 0x444694
mov eax, dword [esp + 0x68]
mov ecx, dword [eax]
mov eax, dword [eax + 0x28]
push ecx
push 0
push ebx
push ebx
call fcn.00434b20
mov edx, dword [esp + 0x78]
add esp, 0x10
mov dword [esp + 0x14], eax
mov byte [edx + 0x16], bl
cmp byte [ebp + 3], 0x10
mov ecx, dword [esp + 0x68]
setne al
mov byte [ecx + 0x18], al
mov eax, dword [esp + 0x68]
cmp byte [eax + 0x16], 0
sete dl
mov byte [eax + 0x17], dl
jmp 0x4436dd
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 4]
mov edi, dword [esp + 0x24]
push 0
push 0xffffffffffffffff
push eax
call fcn.00441cb0
add esp, 0xc
mov dword [esp + 0x68], eax
test eax, eax
je 0x4424ac
mov cl, 1
mov byte [eax + 0x14], cl
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x68]
mov dword [eax + 0x2c], edx
mov edx, dword [esp + 0x68]
mov byte [edx + 0x16], cl
mov eax, dword [esp + 0x68]
mov byte [eax + 0x17], 0
jmp 0x4436dd
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x34]
mov eax, dword [edx + ecx*4]
mov ebx, esi
call fcn.0043e040
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x34]
mov dword [ecx + eax*4], 0
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x70], eax
cmp dword [eax], 0
je 0x4420a6
movzx ecx, byte [ebp]
mov dword [esp + 0x6c], ecx
mov byte [eax + 0x14], 0
mov ecx, dword [esp + 0x70]
cmp byte [ecx + 0x16], 0
je 0x444901
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x28]
lea esi, [eax + edx*8]
call fcn.00441db0
mov ecx, esi
call fcn.0043bdd0
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], edx
mov byte [ecx + 0x11], 0
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x44489a
test al, 8
jne 0x444799
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
xor ebx, ebx
cmp dword [esp + 0x98], ebx
jne 0x444846
mov eax, SysReAllocString
cmp dword [esp + 0x9c], eax
jne 0x444846
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebx
fild qword [esp + 0x60]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
je 0x4447dc
fldz
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x444846
fldz
mov dword [esp + 0x68], 1
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
jne 0x444808
cmp dword [esp + 0x6c], 0x2e
jl 0x444839
mov edx, dword [esp + 0x70]
mov esi, dword [edx]
lea edi, [esp + 0x68]
call fcn.00435750
jmp 0x44481e
cmp dword [esp + 0x6c], 0x2d
jg 0x444839
mov eax, dword [esp + 0x70]
mov esi, dword [eax]
lea edi, [esp + 0x68]
call fcn.00435780
mov dword [esp + 0x14], eax
cmp eax, ebx
jne 0x446d88
mov edi, dword [esp + 0x1c]
cmp dword [esp + 0x68], 0
je case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [esp + 0x6c]
cmp eax, 0x2c
je 0x44487a
cmp eax, 0x2e
je 0x44487a
fild qword [esp + 0x98]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
jne 0x44489a
mov eax, 0xffffffff
add dword [esp + 0x98], eax
adc dword [esp + 0x9c], eax
jmp 0x44489a
fild qword [esp + 0x98]
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x44489a
add dword [esp + 0x98], 1
adc dword [esp + 0x9c], ebx
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [esp + 0x74]
push 0
push edx
mov edx, dword [ecx]
push eax
push 0
push edx
call fcn.004357c0
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
cmp dword [esp + 0x68], eax
jne 0x44497e
mov eax, dword [esp + 0x70]
mov byte [eax + 0x11], 1
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x70]
mov dword [edx + 8], ecx
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x70]
mov dword [ecx + 0xc], eax
jmp 0x44497e
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x90], edx
mov eax, dword [ecx + 0x30]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x6c]
and eax, 1
add eax, eax
add eax, eax
add eax, eax
mov word [esp + 0x7c], dx
mov word [esp + 0x7e], ax
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea esi, [ebx + edx*8]
mov eax, 0x4000
mov dword [esp + 0x88], esi
test word [esi + 0x1c], ax
je 0x44494d
call fcn.0043bb10
mov ecx, dword [esp + 0x70]
mov ecx, dword [ecx]
lea edx, [esp + 0x68]
push edx
push 0
push 0
push 0
lea eax, [esp + 0x88]
push eax
push ecx
call fcn.004357c0
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov edx, dword [esp + 0x70]
mov byte [edx + 0x11], al
mov eax, dword [esp + 0x70]
mov byte [eax + 0x15], 0
mov ecx, dword [esp + 0x70]
xor esi, esi
mov dword [ecx + 0x4c], esi
mov ecx, dword [esp + 0x6c]
cmp ecx, 0x2e
mov eax, dword [esp + 0x68]
jl 0x4449dd
cmp eax, esi
jl 0x4449b0
jne 0x4449a7
cmp ecx, 0x2f
je 0x4449b0
mov dword [esp + 0x68], esi
jmp case.0x44208d.17
mov eax, dword [esp + 0x70]
mov ecx, dword [eax]
lea edx, [esp + 0x68]
push edx
push ecx
call fcn.00435bb0
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, esi
jne 0x446d88
mov edx, dword [esp + 0x70]
mov byte [edx + 0x11], 0
jmp 0x44482e
cmp eax, esi
jg 0x444a00
jne 0x4449e8
cmp ecx, 0x2c
je 0x444a00
mov eax, dword [esp + 0x70]
mov ecx, dword [eax]
xor edx, edx
cmp byte [ecx + 0x43], 1
setne dl
mov dword [esp + 0x68], edx
jmp 0x44482e
mov ecx, dword [esp + 0x70]
mov edx, dword [ecx]
lea eax, [esp + 0x68]
push eax
push edx
call fcn.00435cf0
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, esi
jne 0x446d88
mov eax, dword [esp + 0x70]
mov byte [eax + 0x11], 0
jmp 0x44482e
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x34]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x68], eax
cmp dword [eax], 0
je case.0x44208d.17
mov ecx, dword [esp + 0x28]
mov byte [eax + 0x14], 0
mov ebp, dword [ebp + 8]
lea eax, [ebp + ebp*4]
lea ecx, [ecx + eax*8]
call fcn.0043bdd0
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x20], eax
mov eax, dword [esp + 0x68]
mov dword [eax + 0x24], edx
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x11], 0
mov edx, dword [esp + 0x68]
mov byte [edx + 0x15], 1
jmp case.0x44208d.17
mov ecx, dword [esi + 0x34]
xor edx, edx
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 4]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx + ecx*4]
lea ebx, [ebx + ecx*8]
cmp dword [eax], edx
je 0x444b67
cmp dword [ebp + 0x10], edx
jle 0x444ad1
mov edx, dword [eax + 0x30]
mov dword [esp + 0x78], edx
mov cx, word [ebp + 0x10]
mov word [esp + 0x7c], cx
mov edx, 0x10
lea ecx, [esp + 0x78]
mov dword [esp + 0x88], ebx
mov word [esp + 0x7e], dx
mov dword [esp + 0x74], ecx
jmp 0x444b0a
mov edx, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x18]
push edx
mov edx, dword [eax + 0x30]
push ecx
push edx
mov edx, 0x97
lea eax, [esp + 0x9c]
call fcn.0043f4c0
add esp, 0xc
mov dword [esp + 0x74], eax
test eax, eax
je 0x4424ac
or word [eax + 6], 0x10
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x74]
mov eax, dword [eax]
lea ecx, [esp + 0x70]
push ecx
push 0
push 0
push 0
push edx
push eax
call fcn.004357c0
add esp, 0x18
cmp dword [ebp + 0x10], 0
mov dword [esp + 0x14], eax
jne 0x444b38
mov ebx, dword [esp + 0x74]
call fcn.0043f610
cmp dword [esp + 0x14], 0
jne case.0x44208d.17
mov edx, dword [esp + 0x6c]
xor ecx, ecx
cmp dword [esp + 0x70], ecx
sete cl
mov dword [esp + 0x68], ecx
mov byte [edx + 0x15], 0
mov eax, dword [esp + 0x6c]
mov dword [eax + 0x4c], 0
mov edx, dword [esp + 0x68]
cmp byte [ebp], 0x32
jne 0x444b74
test edx, edx
jmp 0x444833
test edx, edx
jne case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0x10]
lea edx, [ebx + ecx*8]
lea eax, [eax + eax*4]
lea ecx, [ebx + eax*8]
mov eax, dword [esi + 0x34]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x2c], edx
mov edx, dword [ebp + 4]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x6c], eax
xor ecx, ecx
mov dword [eax + 0x48], ecx
mov edx, dword [esp + 0x6c]
mov dword [edx + 0x4c], ecx
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x70], eax
mov ecx, dword [edx + 0x30]
mov cx, word [ecx + 6]
xor eax, eax
xor esi, esi
mov word [esp + 0x74], cx
mov word [esp + 0x68], ax
cmp si, cx
jae 0x444c01
movzx esi, ax
lea esi, [esi + esi*4]
test byte [ebx + esi*8 + 0x1c], 1
jne 0x444cc0
inc ax
mov word [esp + 0x68], ax
cmp ax, cx
jb 0x444be4
cmp dword [esp + 0x70], 0
je case.0x44208d.17
mov edx, dword [edx + 0x30]
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x2c]
inc eax
mov ecx, 0x20
mov dword [esp + 0x80], edx
mov word [esp + 0x84], ax
mov word [esp + 0x86], cx
mov dword [esp + 0x90], ebx
call fcn.0043bef0
mov ecx, dword [esp + 0x6c]
mov edx, dword [esi]
add ecx, 0x48
push ecx
push 0
mov dword [esp + 0xa0], edx
mov eax, dword [esi + 4]
push 0
push 0
lea edx, [esp + 0x90]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x80]
push edx
push eax
call fcn.004357c0
add esp, 0x18
test byte [esp + 0x86], 0x20
mov dword [esp + 0x14], eax
jne 0x4420a6
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 0x98]
jne 0x444caf
mov ecx, dword [esp + 0x8c]
cmp ecx, dword [esp + 0x9c]
je 0x4420a6
mov dword [esi], eax
mov edx, dword [esp + 0x8c]
mov dword [esi + 4], edx
jmp case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x70], 0
jmp case.0x44208d.17
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x34]
mov ecx, dword [edx + ecx*4]
lea eax, [eax + eax*4]
lea ebx, [ebx + eax*8]
mov dword [esp + 0x68], ecx
mov eax, dword [ecx]
mov dword [esp + 0x6c], eax
test eax, eax
je 0x444d8e
mov dword [esp + 0x70], 0
mov ecx, dword [ebx]
lea esi, [esp + 0x70]
push esi
push 0
mov dword [esp + 0x80], ecx
mov edx, dword [ebx + 4]
push edx
push ecx
push 0
push eax
mov dword [esp + 0x94], edx
call fcn.004357c0
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx]
mov dword [ecx + 8], eax
mov edx, dword [ebx + 4]
mov eax, dword [esp + 0x80]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x80]
add esp, 0x18
cmp dword [esp + 0x70], 0
sete cl
mov byte [edx + 0x11], cl
mov eax, dword [esp + 0x68]
mov byte [eax + 0x14], 0
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x4c], 0
mov edx, dword [esp + 0x68]
mov byte [edx + 0x15], 0
mov eax, dword [esp + 0x70]
test eax, eax
je 0x444d82
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x48], eax
jmp case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
mov dword [ecx + 0x48], 0
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov eax, dword [eax + edx*4]
mov ecx, dword [eax + 0x38]
mov dword [edi], ecx
mov edx, dword [eax + 0x3c]
mov dword [edi + 4], edx
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx + eax*4]
add dword [eax + 0x38], 1
adc dword [eax + 0x3c], 0
jmp case.0x44208d.17
mov ecx, dword [esi + 0x34]
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], eax
mov edx, dword [ebp + 4]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x70], edx
cmp dword [edx], eax
je 0x445078
mov dword [esp + 0x78], eax
cmp byte [edx + 0x13], al
jne 0x444f86
mov ecx, dword [edx]
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x68], eax
mov ecx, dword [ecx + 0x1c]
mov edi, eax
or edi, ecx
mov dword [esp + 0x6c], ecx
jne 0x444e94
mov esi, dword [edx]
lea edi, [esp + 0x74]
call fcn.00435780
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov edx, dword [esp + 0x70]
cmp dword [esp + 0x74], eax
je 0x444e40
mov eax, 1
xor ecx, ecx
jmp 0x444e84
mov eax, dword [edx]
lea edi, [esp + 0x68]
call fcn.00434ce0
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
cmp eax, 0xffffffff
jne 0x444e7a
cmp ecx, 0x7fffffff
jne 0x444e7a
mov eax, dword [esp + 0x70]
mov byte [eax + 0x13], 1
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
jmp 0x444e8c
mov edx, dword [esp + 0x70]
add eax, 1
adc ecx, 0
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x68], eax
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x444f51
mov esi, dword [esi + 0xdc]
test esi, esi
je 0x444edf
mov ecx, esi
mov dword [esp + 0x80], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x444ed0
lea esp, [esp]
mov ecx, eax
mov dword [esp + 0x80], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x444ec0
mov ebp, dword [ebp + 0xc]
mov eax, dword [ecx + 0x10]
lea edx, [ebp + ebp*4]
lea esi, [eax + edx*8]
jmp 0x444ee5
lea ecx, [edi + edi*4]
lea esi, [ebx + ecx*8]
mov dword [esp + 0x7c], esi
call fcn.0043bef0
mov edx, dword [esp + 0x7c]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
cmp eax, 0xffffffff
jne 0x444f08
cmp ecx, 0x7fffffff
je 0x446d80
mov esi, dword [esp + 0x70]
cmp byte [esi + 0x13], 0
jne 0x446d80
mov esi, dword [esp + 0x6c]
add eax, 1
adc ecx, 0
cmp esi, ecx
jg 0x444f34
jl 0x444f2c
cmp dword [esp + 0x68], eax
jae 0x444f34
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esp + 0x68]
mov dword [edx], eax
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x7c]
mov dword [edx + 4], ecx
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
cmp ecx, 0x7fffffff
jg 0x444f68
jl 0x444f60
cmp eax, 0xffffffff
jae 0x444f68
add eax, 1
adc ecx, 0
jmp 0x444f6c
xor eax, eax
xor ecx, ecx
mov esi, dword [edx]
push ecx
push eax
call fcn.00434b70
mov edx, dword [esp + 0x78]
add esp, 8
cmp byte [edx + 0x13], 0
je 0x44505d
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x30]
mov eax, dword [eax + 0x34]
and eax, 0x3fffffff
add ecx, 1
lea esi, [esp + 0x74]
push esi
adc eax, 0
push 0
push eax
push ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x88], 0
mov eax, dword [edx]
push 0
push eax
call fcn.004357c0
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x445059
lea esi, [eax + 5]
mov ecx, dword [esp + 0x74]
test ecx, ecx
jne 0x44504a
mov eax, dword [esp + 0x78]
inc eax
cmp eax, 0x64
mov dword [esp + 0x78], eax
jge 0x44504a
lea ecx, [esp + 0x68]
push ecx
push 8
call fcn.00425220
mov eax, dword [esp + 0x70]
add esp, 8
cmp dword [esp + 0x78], esi
jge 0x44500b
and eax, 0xffffff
xor ecx, ecx
jmp 0x445015
mov ecx, dword [esp + 0x6c]
and ecx, 0x3fffffff
add eax, 1
lea edx, [esp + 0x74]
push edx
adc ecx, 0
push 0
push ecx
push eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x7c], ecx
mov ecx, dword [eax]
push 0
push ecx
call fcn.004357c0
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
je 0x444fd3
jmp 0x445059
cmp dword [esp + 0x14], 0
jne 0x445059
test ecx, ecx
je 0x446d80
mov edx, dword [esp + 0x70]
mov edi, dword [esp + 0x1c]
mov byte [edx + 0x11], 0
mov edx, dword [esp + 0x70]
mov byte [edx + 0x15], 0
mov eax, dword [esp + 0x70]
mov dword [eax + 0x4c], 0
mov ecx, dword [esp + 0x68]
mov dword [edi], ecx
mov edx, dword [esp + 0x6c]
mov dword [edi + 4], edx
jmp case.0x44208d.17
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ecx, [ebx + eax*8]
mov eax, dword [esi + 0x34]
mov dword [esp + 0x68], ecx
mov edx, dword [ebp + 4]
mov edx, dword [eax + edx*4]
mov dword [esp + 0x78], edx
cmp byte [ebp], 0x37
mov eax, dword [ebp + 0xc]
jne 0x4450c2
lea eax, [eax + eax*4]
lea edx, [ebx + eax*8]
mov dword [esp + 0x6c], edx
mov eax, dword [edx]
mov dword [esp + 0x70], eax
mov edx, dword [edx + 4]
jmp 0x4450c7
cdq
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
test byte [ebp + 3], 1
je 0x4450d4
inc dword [esi + 0x6c]
test byte [ebp + 3], 2
je 0x4450ec
mov ecx, dword [esp + 0x18]
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x74]
mov dword [ecx + 0x34], eax
mov ecx, dword [esp + 0x68]
xor eax, eax
test byte [ecx + 0x1c], 1
je 0x445102
mov dword [ecx + 0x14], eax
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x18], eax
mov ecx, dword [esp + 0x68]
test byte [ebp + 3], 0x10
je 0x445118
mov edx, dword [esp + 0x78]
mov edx, dword [edx + 0x48]
mov dword [esp + 0x80], edx
jmp 0x44511f
mov dword [esp + 0x80], eax
mov edx, 0x4000
test word [ecx + 0x1c], dx
je 0x44512c
mov eax, dword [ecx]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x7c], eax
mov esi, dword [ecx]
push 0
push 0
call fcn.00434b70
movzx edx, byte [ebp + 3]
mov eax, dword [esp + 0x84]
and edx, 8
push edx
push eax
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x84]
push ecx
mov ecx, dword [esp + 0x84]
push edx
mov edx, dword [esp + 0x90]
push eax
mov eax, dword [edx]
push ecx
push 0
push eax
mov eax, dword [esp + 0xa8]
call fcn.004383a0
mov ecx, dword [esp + 0xa0]
mov byte [ecx + 0x11], 0
mov edx, dword [esp + 0xa0]
mov byte [edx + 0x15], 0
mov ecx, dword [esp + 0xa0]
add esp, 0x28
mov dword [esp + 0x14], eax
mov dword [ecx + 0x4c], 0
test eax, eax
jne case.0x44208d.17
mov edx, dword [esp + 0x18]
cmp dword [edx + 0xb8], eax
je case.0x44208d.17
cmp dword [ebp + 0x10], eax
je case.0x44208d.17
mov eax, dword [esp + 0x78]
mov edx, dword [eax + 4]
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 8]
mov ebx, dword [esp + 0x74]
shl edx, 4
mov edx, dword [edx + eax]
mov dword [esp + 0x84], edx
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x88], esi
mov al, byte [ebp + 3]
and al, 4
movzx eax, al
push ebx
mov ebx, dword [esp + 0x74]
neg eax
sbb eax, eax
push ebx
and eax, 5
add eax, 0x12
push esi
push edx
mov dword [esp + 0x9c], eax
mov edx, dword [ecx + 0xb4]
push eax
mov eax, dword [ecx + 0xb8]
push edx
call eax
add esp, 0x18
jmp case.0x44208d.17
mov edx, dword [esi + 0x34]
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 4]
mov esi, dword [edx + ecx*4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x70], esi
cmp dword [ecx + 0xb8], eax
je 0x445267
cmp dword [ebp + 0x10], eax
je 0x445267
mov edx, dword [esi + 8]
mov dword [esp + 0x68], edx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x6c], eax
call fcn.0043f040
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov ecx, dword [esp + 0x70]
mov esi, dword [ecx]
push eax
push eax
call fcn.00434b70
mov edx, dword [esp + 0x78]
mov eax, dword [edx]
push eax
call fcn.004385b0
mov ecx, dword [esp + 0x7c]
add esp, 0xc
mov dword [esp + 0x14], eax
mov dword [ecx + 0x4c], 0
test eax, eax
jne 0x4452e6
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 0xb8]
test ecx, ecx
je 0x4452e6
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x4452e6
mov esi, dword [esp + 0x6c]
push esi
mov esi, dword [esp + 0x6c]
push esi
mov esi, dword [edx + 8]
mov edx, dword [edx + 0xb4]
push eax
mov eax, dword [esp + 0x7c]
mov eax, dword [eax + 4]
shl eax, 4
mov eax, dword [eax + esi]
push eax
push 9
push edx
call ecx
add esp, 0x18
test byte [ebp + 8], 1
je case.0x44208d.17
mov eax, dword [esp + 0x24]
inc dword [eax + 0x6c]
jmp case.0x44208d.17
mov ecx, dword [esi + 0x6c]
mov eax, dword [esp + 0x18]
add dword [eax + 0x40], ecx
mov dword [eax + 0x3c], ecx
mov dword [esi + 0x6c], 0
jmp case.0x44208d.17
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x28]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x1c], edx
mov edx, dword [ecx + 0x34]
mov esi, dword [edx + eax*4]
mov dword [esp + 0x68], esi
mov eax, dword [esi]
mov dword [esp + 0x6c], eax
call fcn.0043f040
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov ecx, dword [esp + 0x68]
cmp byte [ecx + 0x17], al
je 0x44538e
mov eax, dword [esp + 0x6c]
lea edi, [esp + 0x78]
call fcn.00434ce0
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x48]
mov ecx, dword [esp + 0x7c]
cdq
cmp ecx, edx
jg 0x442b7b
mov ecx, dword [esp + 0x78]
jl 0x445386
cmp ecx, eax
ja 0x442b7b
mov eax, ecx
mov dword [esp + 0x70], eax
jmp 0x4453b0
mov esi, dword [esp + 0x6c]
lea edx, [esp + 0x70]
push edx
call fcn.00434d10
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x1c]
add esp, 4
cmp eax, dword [ecx + 0x48]
ja 0x442b7b
mov edx, dword [esp + 0x1c]
push 0
push eax
push edx
call fcn.0043b970
add esp, 0xc
test eax, eax
jne 0x4424ac
mov esi, dword [esp + 0x1c]
mov cx, word [esi + 0x1c]
mov eax, dword [esp + 0x70]
mov edx, 0xbf10
and cx, dx
mov dword [esi + 0x18], eax
or cx, 0x10
mov word [esi + 0x1c], cx
mov eax, dword [esp + 0x68]
cmp byte [eax + 0x17], 0
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov eax, dword [esi + 0x14]
je 0x445414
push 0
push eax
push ecx
push 0
push edx
call fcn.00435050
add esp, 0x14
mov byte [esi + 0x1f], 1
jmp 0x4436d9
push eax
push ecx
push 0
push edx
call fcn.004353a0
add esp, 0x10
mov byte [esi + 0x1f], 1
jmp 0x4436d9
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x68], eax
cmp byte [eax + 0x14], 0
je 0x44544b
mov edx, 1
mov word [edi + 0x1c], dx
jmp case.0x44208d.17
cmp byte [eax + 0x15], 0
je 0x44546f
mov ecx, dword [eax + 0x20]
mov dword [esp + 0x70], ecx
mov edx, dword [eax + 0x24]
mov dword [esp + 0x74], edx
mov eax, ecx
mov dword [edi], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 4], ecx
jmp case.0x44208d.17
cmp dword [eax + 0x40], 0
je 0x4454bf
mov ecx, dword [eax + 0x40]
mov ecx, dword [ecx]
mov dword [esp + 0x78], ecx
mov ecx, dword [ecx]
mov dword [esp + 0x7c], ecx
mov eax, dword [eax + 0x40]
mov ecx, dword [ecx + 0x30]
lea edx, [esp + 0x70]
push edx
push eax
call ecx
mov edx, dword [esp + 0x80]
push edx
push esi
mov dword [esp + 0x24], eax
call fcn.00441ed0
mov eax, dword [esp + 0x80]
mov dword [edi], eax
mov ecx, dword [esp + 0x84]
add esp, 0x10
mov dword [edi + 4], ecx
jmp case.0x44208d.17
mov esi, eax
call fcn.0043f040
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov eax, dword [esp + 0x68]
cmp byte [eax + 0x11], 0
je 0x4454fa
mov ecx, dword [eax + 8]
mov dword [esp + 0x70], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x74], edx
mov eax, ecx
mov dword [edi], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 4], ecx
jmp case.0x44208d.17
mov eax, dword [eax]
lea edi, [esp + 0x70]
call fcn.00434ce0
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x70]
mov dword [edi], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 4], ecx
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x68], eax
mov byte [eax + 0x14], 1
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x11], 0
mov edx, dword [esp + 0x68]
mov esi, dword [edx]
test esi, esi
je case.0x44208d.17
call fcn.004313e0
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x68], eax
mov esi, dword [eax]
mov dword [esp + 0x6c], esi
test esi, esi
jne 0x445571
mov dword [esp + 0x70], 1
jmp 0x445586
lea edi, [esp + 0x70]
call fcn.00435780
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
mov dl, byte [esp + 0x70]
mov byte [eax + 0x14], dl
mov eax, dword [esp + 0x68]
mov byte [eax + 0x15], 0
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x11], 0
mov edx, dword [esp + 0x68]
mov dword [edx + 0x4c], 0
mov ebp, dword [ebp + 8]
test ebp, ebp
jle case.0x44208d.17
cmp dword [esp + 0x70], 0
je case.0x44208d.17
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
inc dword [esi + 0xb4]
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], 1
mov esi, dword [eax]
mov dword [esp + 0x6c], esi
test esi, esi
je 0x44562c
lea edi, [esp + 0x70]
call fcn.00435750
cmp dword [esp + 0x70], 0
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
sete dl
mov byte [eax + 0x12], dl
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x15], 0
mov edx, dword [esp + 0x68]
mov dword [edx + 0x4c], 0
mov eax, dword [esp + 0x68]
mov byte [eax + 0x11], 0
mov eax, dword [esp + 0x68]
mov cl, byte [esp + 0x70]
mov byte [eax + 0x14], cl
cmp dword [esp + 0x70], 0
je case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0xe0]
test eax, eax
jne 0x446dcf
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x34]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x68], eax
test eax, eax
je case.0x44208d.17
mov ecx, dword [eax]
mov dword [esp + 0x6c], ecx
test ecx, ecx
jne 0x445685
mov byte [eax + 0x14], 1
jmp case.0x44208d.17
mov dword [esp + 0x70], 1
cmp byte [ebp], 0x43
jne 0x4456a0
lea eax, [esp + 0x70]
push eax
push ecx
call fcn.00435bb0
jmp 0x4456ab
lea edx, [esp + 0x70]
push edx
push ecx
call fcn.00435cf0
mov cl, byte [esp + 0x78]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x70]
mov byte [eax + 0x14], cl
mov edx, dword [esp + 0x70]
add esp, 8
mov dword [edx + 0x4c], 0
cmp dword [esp + 0x70], 0
jne 0x4456ef
mov eax, dword [ebp + 8]
dec eax
mov dword [esp + 0x20], eax
mov al, byte [ebp + 3]
test al, al
je 0x4456ef
movzx eax, al
inc dword [esi + eax*4 + 0xac]
lea esi, [esi + eax*4 + 0xac]
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x11], 0
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov edx, dword [eax + edx*4]
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 8]
lea ecx, [eax + eax*4]
lea esi, [ebx + ecx*8]
mov ecx, dword [edx]
mov dword [esp + 0x6c], ecx
test ecx, ecx
je case.0x44208d.17
mov eax, 0x4000
test word [esi + 0x1c], ax
je 0x445744
call fcn.0043bb10
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x44208d.17
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
mov eax, dword [esi + 0x18]
mov dword [esp + 0x70], eax
mov esi, dword [esi + 0x14]
mov dword [esp + 0x74], esi
test byte [ebp + 3], 0x10
je 0x44575d
mov ebx, dword [edx + 0x48]
jmp 0x44575f
xor ebx, ebx
mov edx, dword [ebp + 0xc]
push edx
push 0
push 0
cdq
push 0x4c1e70
push edx
push eax
push esi
push ecx
mov eax, ebx
call fcn.004383a0
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x88]
add esp, 0x20
mov dword [eax + 0x4c], 0
jmp case.0x44208d.17
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x34]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x68], eax
mov ecx, dword [eax]
mov dword [esp + 0x6c], ecx
test ecx, ecx
je case.0x44208d.17
mov eax, dword [eax + 0x30]
mov dword [esp + 0x78], eax
mov dx, word [ebp + 0xc]
xor eax, eax
mov word [esp + 0x7c], dx
mov word [esp + 0x7e], ax
mov ebp, dword [ebp + 8]
mov eax, dword [esp + 0x28]
lea edx, [ebp + ebp*4]
lea edx, [eax + edx*8]
lea eax, [esp + 0x70]
push eax
push 0
push 0
mov dword [esp + 0x94], edx
push 0
lea edx, [esp + 0x88]
push edx
push ecx
call fcn.004357c0
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x445814
cmp dword [esp + 0x70], eax
jne 0x445814
mov eax, dword [esp + 0x6c]
push eax
call fcn.004385b0
add esp, 4
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x4c], 0
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x6c], eax
mov ecx, dword [eax]
mov dword [esp + 0x68], ecx
mov edx, 1
mov word [edi + 0x1c], dx
cmp dword [esp + 0x68], 0
je case.0x44208d.17
mov esi, dword [esp + 0x6c]
call fcn.0043f040
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov eax, dword [esp + 0x6c]
cmp byte [eax + 0x14], 0
jne case.0x44208d.17
mov eax, dword [esp + 0x68]
lea ecx, [esp + 0x70]
push ecx
call fcn.0043f8a0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446d88
mov edx, dword [esp + 0x70]
mov dword [edi], edx
mov eax, dword [esp + 0x74]
mov ecx, 4
mov dword [edi + 4], eax
mov word [edi + 0x1c], cx
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov ecx, dword [eax + edx*4]
mov dword [esp + 0x68], ecx
cmp dword [ecx], 0
je case.0x44208d.17
mov edx, dword [ecx + 0x30]
mov dword [esp + 0x70], edx
mov ax, word [ebp + 0x10]
mov word [esp + 0x74], ax
cmp byte [ebp + 3], 0
je 0x4458de
mov edx, 0xc
mov word [esp + 0x76], dx
jmp 0x4458e8
mov eax, 4
mov word [esp + 0x76], ax
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x28]
lea edx, [eax + edx*8]
lea eax, [esp + 0x6c]
mov dword [esp + 0x80], edx
push eax
lea edx, [esp + 0x74]
push edx
push ecx
call fcn.0043fa00
add esp, 0xc
cmp byte [ebp], 0x51
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x6c]
jne 0x445921
neg eax
jmp 0x445922
inc eax
mov dword [esp + 0x6c], eax
test eax, eax
jle case.0x44208d.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [esp + 0x18]
mov dword [esp + 0x6c], 0
mov eax, dword [eax + 0x88]
mov dword [esp + 0x70], eax
test eax, eax
je 0x445979
cmp dword [eax + 0x44], 0xbdf20da3
jne 0x44596e
cmp byte [eax + 0x65], 2
jae 0x44596e
cmp dword [eax + 0x54], 0
jl 0x44596e
inc dword [esp + 0x6c]
mov eax, dword [eax + 8]
mov dword [esp + 0x70], eax
test eax, eax
jne 0x445955
mov ecx, 1
mov word [edi + 0x1c], cx
cmp dword [esp + 0x6c], ecx
jle 0x445999
mov dword [esp + 0x14], 6
mov byte [esi + 0x38], 2
jmp case.0x44208d.17
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x74], eax
mov ecx, dword [ebp + 4]
lea edx, [esp + 0x68]
push edx
mov edx, dword [esp + 0x1c]
push ecx
mov ecx, dword [edx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
call fcn.004390e0
mov ecx, eax
mov edx, 4
mov word [edi + 0x1c], dx
mov eax, dword [esp + 0x70]
cdq
add esp, 8
mov dword [esp + 0x14], ecx
mov dword [edi], eax
mov dword [edi + 4], edx
test ecx, ecx
jne case.0x44208d.17
mov edx, dword [esp + 0x68]
test edx, edx
je case.0x44208d.17
mov esi, dword [esp + 0x74]
mov eax, dword [esp + 0x18]
mov edi, dword [ebp + 4]
shl esi, 4
add esi, dword [eax + 8]
call fcn.004544d0
mov byte [esp + 0x3b], 1
jmp 0x4436dd
mov dword [esp + 0x68], 0
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 4]
neg ecx
sbb ecx, ecx
lea edx, [esp + 0x68]
and ecx, edx
push ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 8]
shl eax, 4
mov esi, dword [eax + edx + 4]
call fcn.00438cd0
add esp, 4
cmp dword [ebp + 0xc], 0
mov dword [esp + 0x14], eax
je case.0x44208d.17
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x24]
add dword [ecx + 0x6c], eax
mov ebp, dword [ebp + 0xc]
test ebp, ebp
jle case.0x44208d.17
mov edx, dword [esp + 0x28]
lea ecx, [ebp + ebp*4]
lea ecx, [edx + ecx*8]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
jmp case.0x44208d.17
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x68], 0
mov eax, dword [ebp + 4]
shl eax, 4
add eax, dword [ecx + 8]
xor ecx, ecx
mov dword [esp + 0x70], eax
cmp byte [ebp], 0x62
lea edx, [esp + 0x68]
setne cl
inc ecx
push ecx
mov dword [esp + 0x70], ecx
mov eax, dword [eax + 4]
push edx
call fcn.00438ad0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x70]
cdq
add esp, 8
mov dword [edi], eax
mov dword [edi + 4], edx
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x18]
push esi
mov dword [esp + 0x6c], eax
call fcn.00430e90
mov eax, dword [esp + 0x6c]
add esp, 4
cmp dword [ebp + 8], 0
jne 0x445af7
mov edx, dword [esi + 8]
mov ecx, eax
shl ecx, 4
mov ecx, dword [ecx + edx + 0xc]
test byte [ecx + 0x4a], 1
je 0x445b9c
mov ecx, str.sqlite_temp_master
cmp eax, 1
je 0x445b06
mov ecx, str.sqlite_master
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x74], esi
mov edx, dword [ebp + 4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x24]
add edx, 0x5c
mov dword [esp + 0x7c], edx
mov edx, dword [ebp + 0x10]
push edx
push ecx
mov ecx, dword [esi + 8]
shl eax, 4
mov edx, dword [eax + ecx]
push edx
push str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
call fcn.00424ea0
add esp, 0x10
mov dword [esp + 0x70], eax
test eax, eax
jne 0x445b4e
mov dword [esp + 0x14], 7
jmp 0x445b9c
push 0
lea eax, [esp + 0x78]
push eax
mov byte [esi + 0x7c], 1
mov ecx, dword [esp + 0x78]
push fcn.00463b60
push ecx
push esi
mov dword [esp + 0x94], 0
call fcn.004608d0
add esp, 0x14
mov dword [esp + 0x14], eax
test eax, eax
jne 0x445b8a
mov edx, dword [esp + 0x80]
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x70]
push eax
push esi
call fcn.004239e0
add esp, 8
mov byte [esi + 0x7c], 0
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00430f70
add esp, 4
cmp dword [esp + 0x14], 7
je 0x4424ac
jmp 0x4436dd
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
call fcn.00450eb0
mov dword [esp + 0x14], eax
jmp case.0x44208d.17
mov edx, dword [esp + 0x18]
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 4]
push edx
call fcn.004529a0
add esp, 4
jmp case.0x44208d.17
mov eax, dword [esp + 0x18]
mov ecx, dword [ebp + 0x10]
push eax
mov eax, dword [ebp + 4]
call fcn.004525b0
add esp, 4
jmp case.0x44208d.17
mov ecx, dword [esp + 0x18]
mov eax, dword [ebp + 4]
push ecx
mov ecx, dword [ebp + 0x10]
call fcn.0046d200
add esp, 4
jmp case.0x44208d.17
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x18]
lea ecx, [eax*4 + 4]
mov dword [esp + 0x68], eax
call fcn.00423c10
mov dword [esp + 0x6c], eax
test eax, eax
je 0x4424ac
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x28]
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*8]
mov dword [esp + 0x7c], ecx
mov ecx, dword [ebp + 4]
lea ecx, [ecx + ecx*4]
lea esi, [edx + ecx*8]
xor ecx, ecx
cmp dword [esp + 0x68], ecx
mov dword [esp + 0x70], ecx
jle 0x445c89
nop
lea edx, [ecx + ecx*4]
lea ecx, [esi + edx*8]
call fcn.0043bdd0
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov dword [edx + ecx*4], eax
mov ecx, dword [esp + 0x70]
inc ecx
cmp ecx, dword [esp + 0x68]
mov dword [esp + 0x70], ecx
jl 0x445c60
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x18]
mov dword [eax + ecx*4], 0
mov ecx, dword [esp + 0x7c]
mov edx, dword [ecx]
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x74]
push eax
mov eax, dword [esp + 0x6c]
push edx
movzx edx, byte [ebp + 3]
push eax
mov eax, dword [edi + 8]
shl edx, 4
mov edx, dword [edx + eax + 4]
call fcn.0043a120
mov ecx, dword [esp + 0x78]
add esp, 0xc
push ecx
push edi
mov dword [esp + 0x80], eax
call fcn.004239e0
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x84]
cdq
sub dword [ecx], eax
mov eax, dword [esp + 0x84]
push esi
sbb dword [eax + 4], edx
call fcn.0043bff0
add esp, 0xc
cmp dword [esp + 0x74], 0
je 0x445d19
mov ebx, dword [esp + 0x78]
test ebx, ebx
je 0x4424ac
push fcn.00423940
push 1
or eax, 0xffffffff
mov ecx, esi
call fcn.0043c380
add esp, 8
movzx ecx, byte [esp + 0x30]
mov eax, esi
call fcn.0043b950
jmp 0x4436dd
mov eax, dword [ebp + 4]
mov ebp, dword [ebp + 8]
lea edx, [eax + eax*4]
lea eax, [ebp + ebp*4]
lea edi, [ebx + edx*8]
lea esi, [ebx + eax*8]
mov bl, 0x20
test byte [edi + 0x1c], bl
jne 0x445d52
call fcn.0043c190
test byte [edi + 0x1c], bl
je 0x4424ac
mov ecx, dword [esi + 4]
mov edx, dword [esi]
mov edi, dword [edi]
push ecx
push edx
call fcn.0042a570
add esp, 8
jmp 0x4436dd
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0xe0]
test ecx, ecx
jne 0x446dcf
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
test byte [ebx + edx*8 + 0x1c], 0x20
lea ebx, [ebx + edx*8]
je 0x445dbe
mov eax, dword [ebx]
lea esi, [esp + 0x68]
call fcn.0042a8d0
test eax, eax
je 0x445dbe
mov eax, dword [esp + 0x6c]
mov ebp, dword [ebp + 0xc]
mov ecx, dword [esp + 0x68]
push eax
mov eax, dword [esp + 0x2c]
lea edx, [ebp + ebp*4]
push ecx
lea eax, [eax + edx*8]
call fcn.0043c090
add esp, 8
jmp case.0x44208d.17
push ebx
call fcn.0043bff0
mov ebp, dword [ebp + 8]
add esp, 4
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 0x10]
lea edi, [ebx + ecx*8]
lea esi, [ebx + edx*8]
mov bl, 0x20
mov dword [esp + 0x68], eax
test byte [edi + 0x1c], bl
jne 0x445e06
call fcn.0043c190
test byte [edi + 0x1c], bl
je 0x4424ac
mov eax, dword [esp + 0x68]
test eax, eax
je 0x445e4a
jl 0x445e11
and eax, 0xf
jmp 0x445e16
mov eax, 0xff
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov bl, al
mov eax, dword [edi]
push edx
call fcn.0042a950
add esp, 8
mov dword [esp + 0x6c], eax
test eax, eax
je 0x445e3e
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp 0x4436dd
mov eax, dword [esp + 0x68]
test eax, eax
jl 0x4436dd
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov edi, dword [edi]
push eax
push ecx
call fcn.0042a570
add esp, 8
jmp 0x4436dd
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x80], ecx
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea edi, [ebx + edx*8]
mov dword [esp + 0x70], edi
cmp byte [ebp + 3], 0
je 0x445ea9
mov eax, dword [esi + 0xdc]
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x84], edx
mov dword [esp + 0x7c], eax
test eax, eax
je 0x445ea9
cmp dword [eax + 0x20], edx
je 0x4436dd
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x7c], eax
test eax, eax
jne 0x445e95
mov eax, dword [esi + 0xe0]
mov edx, dword [esp + 0x18]
cmp eax, dword [edx + 0x70]
jl 0x445edb
mov edi, dword [esp + 0x24]
push str.too_many_levels_of_trigger_recursion
add edi, 0x5c
mov eax, edx
mov dword [esp + 0x18], 1
call fcn.00423dc0
add esp, 4
jmp 0x4436dd
test byte [edi + 0x1c], 0x40
jne 0x446029
mov eax, dword [ecx + 8]
add eax, dword [ecx + 0xc]
mov dword [esp + 0x68], eax
mov ecx, dword [ecx + 0xc]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*2]
lea edi, [edi*4 + 0x40]
mov eax, edx
mov dword [esp + 0x6c], edi
call fcn.00423bf0
mov dword [esp + 0x7c], eax
test eax, eax
je 0x4424ac
mov edx, dword [esp + 0x70]
push edx
call fcn.0043bd40
mov ecx, dword [esp + 0x74]
mov eax, 0x40
mov word [ecx + 0x1c], ax
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x74]
mov dword [eax], edx
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x28]
mov dword [ecx], eax
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x6c]
mov dword [edx + 0x24], ecx
mov edx, dword [esp + 0x84]
mov ecx, dword [edx + 0xc]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x28], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x24]
mov dword [ecx + 4], edx
mov ecx, dword [eax + 0x4c]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x10], ecx
mov ecx, dword [eax + 0x48]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x14], ecx
mov ecx, dword [eax + 0x34]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x18], ecx
mov cx, word [eax + 0x32]
mov edx, dword [esp + 0x80]
mov word [edx + 0x1c], cx
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x80]
mov dword [edx + 8], ecx
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x80]
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0x84]
mov edx, dword [ecx + 0x10]
mov ecx, dword [esp + 0x80]
mov dword [ecx + 0x20], edx
mov esi, dword [esp + 0x80]
mov ecx, dword [esi + 0x24]
lea edx, [ecx + ecx*4]
lea ecx, [esi + edx*8 + 0x40]
lea edx, [esi + 0x40]
add esp, 4
mov dword [esp + 0x78], ecx
cmp edx, ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x74], edx
je 0x446035
mov esi, 1
mov word [edx + 0x1c], si
mov edx, dword [esp + 0x74]
mov dword [edx + 0x10], ecx
mov edx, dword [esp + 0x74]
add edx, 0x28
mov dword [esp + 0x74], edx
cmp edx, dword [esp + 0x78]
jne 0x446002
mov esi, dword [esp + 0x7c]
jmp 0x446035
mov esi, dword [edi]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x7c], esi
mov ecx, edx
inc dword [eax + 0xe0]
mov edx, dword [eax + 0xdc]
mov dword [esi + 0x3c], edx
mov edx, dword [ecx + 0x30]
mov esi, dword [esp + 0x7c]
mov dword [esi + 0x30], edx
mov ecx, dword [ecx + 0x34]
mov edx, dword [esp + 0x7c]
mov dword [edx + 0x34], ecx
mov ecx, dword [eax + 0x6c]
mov edx, dword [esp + 0x7c]
mov dword [edx + 0x38], ecx
mov edx, dword [esp + 0x7c]
lea ecx, [edx + 0x18]
mov dword [eax + 0xdc], edx
mov dword [eax + 0x4c], ecx
mov dword [eax + 0x6c], 0
mov esi, dword [edx + 0x24]
mov dword [eax + 0x48], esi
mov dx, word [edx + 0x28]
mov word [eax + 0x32], dx
mov edx, esi
inc edx
lea edx, [edx + edx*4]
mov dword [esp + 0x28], ecx
lea ecx, [ecx + edx*8]
mov edx, dword [esp + 0x80]
mov dword [eax + 0x34], ecx
mov ecx, dword [edx]
mov dword [eax + 0x14], ecx
mov edx, dword [edx + 4]
mov dword [esp + 0x40], ecx
mov dword [eax + 0xc], edx
mov dword [esp + 0x20], 0xffffffff
jmp 0x4436dd
mov esi, dword [esi + 0xdc]
mov dword [esp + 0x68], esi
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 4]
add eax, dword [ebp + 4]
push 0x1000
lea edx, [eax + eax*4]
mov eax, dword [esi + 0x10]
lea eax, [eax + edx*8]
push eax
mov ebx, edi
mov dword [esp + 0x74], eax
call fcn.0043c280
add esp, 8
jmp case.0x44208d.17
cmp dword [ebp + 4], 0
mov eax, dword [ebp + 8]
cdq
je 0x446115
mov ecx, dword [esp + 0x18]
add dword [ecx + 0x1e0], eax
adc dword [ecx + 0x1e4], edx
jmp case.0x44208d.17
add dword [esi + 0xc8], eax
adc dword [esi + 0xcc], edx
jmp case.0x44208d.17
cmp dword [ebp + 4], 0
je 0x44614f
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x1e0]
or ecx, dword [eax + 0x1e4]
jne 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov edx, dword [esi + 0xc8]
or edx, dword [esi + 0xcc]
jne 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov esi, dword [esi + 0xdc]
test esi, esi
je 0x4461a0
mov ecx, esi
mov dword [esp + 0x6c], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x446192
mov ecx, eax
mov dword [esp + 0x6c], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x446185
mov eax, dword [ebp + 4]
mov ecx, dword [ecx + 0x10]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
jmp 0x4461a9
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
lea esi, [ebx + edx*8]
mov dword [esp + 0x68], esi
call fcn.0043bef0
mov ebp, dword [ebp + 8]
mov ecx, dword [esp + 0x28]
lea eax, [ebp + ebp*4]
lea esi, [ecx + eax*8]
call fcn.0043bef0
mov ecx, dword [esp + 0x68]
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov edx, dword [ecx + 4]
cmp edx, esi
jg 0x4436dd
jl 0x4461e5
mov edx, dword [ecx]
cmp edx, eax
jae 0x4436dd
mov dword [ecx], eax
mov eax, dword [esp + 0x68]
mov dword [eax + 4], esi
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
cmp dword [ebx + eax*8 + 4], 0
jl 0x4436dd
jg 0x446210
cmp dword [ebx + eax*8], 0
jbe 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
cmp dword [ebx + eax*8 + 4], 0
jg 0x4436dd
jl 0x44623a
cmp dword [ebx + eax*8], 0
jae 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0xc]
lea ecx, [ebx + ecx*8]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
mov edx, dword [ecx]
or edx, dword [ecx + 4]
jne 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
movzx ecx, byte [ebp + 3]
mov edx, dword [esi + 0x24]
mov dword [esp + 0x68], ecx
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ebx, [ebx + eax*8]
xor eax, eax
mov dword [esp + 0x74], ebx
mov dword [esp + 0xb8], edx
mov dword [esp + 0x6c], eax
test ecx, ecx
jle 0x4462c7
mov ecx, dword [esp + 0xb8]
mov dword [ecx + eax*4], ebx
mov ecx, dword [esp + 0x74]
call fcn.00441c80
mov eax, dword [esp + 0x6c]
mov ebx, dword [esp + 0x74]
inc eax
add ebx, 0x28
cmp eax, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], ebx
jl 0x44629a
mov edx, dword [ebp + 0x10]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x78], edx
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
xor esi, esi
mov dword [esp + 0x70], eax
mov dword [esp + 0xa8], eax
inc dword [eax + 0x18]
mov eax, dword [esp + 0x78]
mov edx, 1
mov word [esp + 0x9c], dx
mov dword [esp + 0x94], esi
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa0], esi
mov dword [esp + 0x90], ebx
mov dword [esp + 0xac], esi
mov dword [esp + 0xb0], esi
test byte [eax + 3], 8
je 0x44633a
mov ecx, dword [ebp - 4]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 0xb8]
mov ecx, dword [esp + 0x68]
mov eax, dword [eax + 0x10]
push edx
push ecx
lea edx, [esp + 0x80]
push edx
call eax
add esp, 0xc
cmp dword [esp + 0xac], esi
je 0x446392
lea ecx, [esp + 0x80]
push ecx
call fcn.0043ff30
mov edi, dword [esp + 0x28]
add esp, 4
push eax
push 0x4c1ee8
add edi, 0x5c
mov eax, ebx
call fcn.00423dc0
mov edx, dword [esp + 0xb4]
add esp, 8
mov dword [esp + 0x14], edx
lea eax, [esp + 0x80]
push eax
call fcn.0043bd40
add esp, 4
jmp 0x4436dd
mov eax, dword [ebp + 4]
lea ecx, [eax + eax*4]
lea ecx, [ebx + ecx*8]
mov dword [esp + 0x68], ecx
mov eax, dword [ebp + 0x10]
call fcn.0043bc60
mov dword [esp + 0x14], eax
test eax, eax
je 0x4463ee
mov edx, dword [esp + 0x68]
push edx
call fcn.0043ff30
mov edi, dword [esp + 0x28]
add esp, 4
push eax
mov eax, dword [esp + 0x1c]
push 0x4c1ee8
add edi, 0x5c
call fcn.00423dc0
mov edi, dword [esp + 0x24]
add esp, 8
movzx ecx, byte [esp + 0x30]
mov eax, dword [esp + 0x68]
call fcn.0043b950
mov ecx, dword [esp + 0x68]
call fcn.0043c250
test eax, eax
jne 0x442b7b
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ebx, dword [esp + 0x18]
push eax
call fcn.0047bb20
add esp, 4
mov dword [esp + 0x14], eax
jmp case.0x44208d.17
mov ecx, dword [esp + 0x3c]
cmp dword [ecx], 0
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x70], edx
jne 0x446454
mov ecx, dword [ebp + 4]
mov esi, dword [esp + 0x24]
call fcn.0043d890
mov ebx, dword [esp + 0x3c]
call fcn.00431020
mov edx, dword [esp + 0x70]
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
mov dword [esp + 0x68], eax
mov eax, dword [eax + 4]
mov esi, dword [eax]
mov dword [esp + 0x6c], esi
movzx edi, byte [esi + 5]
mov dword [esp + 0x74], edi
cmp edx, 0xffffffff
jne 0x446485
mov edx, edi
mov dword [esp + 0x70], edx
cmp byte [esi + 0xe], 3
jae 0x4464a1
mov ecx, dword [esi + 0x40]
cmp dword [ecx], 0
je 0x4464a7
cmp dword [esi + 0x4c], 0
jl 0x4464a7
jg 0x4464a1
cmp dword [esi + 0x48], 0
jbe 0x4464a7
mov edx, edi
mov dword [esp + 0x70], edx
mov eax, dword [esi + 0x90]
mov dword [esp + 0x78], eax
cmp edx, 5
jne 0x4464d1
cmp byte [eax], 0
je 0x4464c6
mov eax, esi
call fcn.0042ebb0
test eax, eax
jne 0x4464d1
mov edx, edi
mov dword [esp + 0x70], edx
jmp 0x44658f
cmp edx, edi
je 0x44658f
cmp edi, 5
je 0x4464e7
cmp edx, 5
jne 0x44658f
mov eax, dword [esp + 0x18]
cmp byte [eax + 0x1c], 0
je 0x446552
cmp dword [eax + 0x8c], 1
jg 0x446552
cmp edi, 5
jne 0x446516
call fcn.0042ec50
mov dword [esp + 0x14], eax
test eax, eax
jne 0x446548
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
jmp 0x446520
cmp edi, 4
jne 0x446529
lea ecx, [edi - 2]
mov eax, esi
call fcn.0042eaa0
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x68]
xor eax, eax
cmp edx, 5
sete al
inc eax
push eax
push ecx
call fcn.0043a6b0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
je 0x446587
mov edx, dword [esp + 0x74]
mov dword [esp + 0x70], edx
jmp 0x44658b
mov dword [esp + 0x14], 1
mov eax, str.into
cmp edx, 5
je 0x446569
mov eax, str.out_of
push eax
push str.cannot_change__s_wal_mode_from_within_a_transaction
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
add edi, 0x5c
call fcn.00423dc0
add esp, 8
jmp 0x4436dd
mov edx, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
mov ecx, edx
mov eax, esi
call fcn.0042eaa0
mov dword [esp + 0x70], eax
mov ebp, dword [ebp + 8]
mov eax, dword [esp + 0x28]
lea edx, [ebp + ebp*4]
lea edi, [eax + edx*8]
mov ecx, 0xa02
mov word [edi + 0x1c], cx
mov eax, dword [esp + 0x70]
mov dword [esp + 0x1c], edi
cmp eax, 6
jne 0x4465c4
xor ecx, ecx
jmp 0x4465cb
mov ecx, dword [eax*4 + 0x4bb4c8]
mov dword [edi + 0x14], ecx
call fcn.00425940
movzx ecx, byte [esp + 0x30]
mov dword [edi + 0x18], eax
mov eax, edi
mov byte [edi + 0x1f], 1
call fcn.0043b950
jmp case.0x44208d.17
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x18]
add eax, 0x5c
call fcn.00470060
mov dword [esp + 0x14], eax
jmp case.0x44208d.17
mov edx, dword [ebp + 4]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
shl edx, 4
mov eax, dword [edx + ecx + 4]
mov dword [esp + 0x68], eax
call fcn.004341f0
mov dword [esp + 0x14], eax
cmp eax, 0x65
jne 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x14], 0
jmp case.0x44208d.17
cmp dword [ebp + 4], 0
jne 0x446654
mov eax, dword [esp + 0x18]
call fcn.0043fae0
jmp case.0x44208d.17
mov byte [esi + 0x62], 1
jmp case.0x44208d.17
mov cl, byte [ebp + 0xc]
test cl, cl
jne 0x446675
mov edx, dword [esp + 0x18]
test dword [edx + 0xc], 0x80000
jne 0x4436dd
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 4]
push edx
mov edx, dword [esp + 0x1c]
mov edx, dword [edx + 8]
shl eax, 4
mov esi, dword [eax + edx + 4]
call fcn.0043a5f0
add esp, 4
mov dword [esp + 0x14], eax
cmp al, 6
jne 0x4436dd
mov eax, dword [ebp + 0x10]
push eax
push str.database_table_is_locked:__s
jmp 0x44656f
mov ebp, dword [ebp + 0x10]
mov ecx, dword [esp + 0x18]
mov eax, ebp
mov dword [esp + 0x68], ebp
call fcn.004713f0
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
test eax, eax
je 0x4436dd
mov ecx, dword [eax + 8]
push ecx
push esi
call fcn.00441ed0
add esp, 8
jmp case.0x44208d.17
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
add esi, 0x5c
push esi
push edx
call fcn.00470f50
add esp, 8
mov dword [esp + 0x14], eax
jmp case.0x44208d.17
mov ecx, dword [esp + 0x18]
mov byte [esi + 0x65], 2
mov eax, dword [ebp + 0x10]
push eax
mov eax, dword [ebp + 4]
call fcn.004711f0
add esp, 4
mov dword [esp + 0x14], eax
mov byte [esi + 0x65], 0
jmp case.0x44208d.17
xor ebx, ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 8]
mov dword [esp + 0x70], eax
mov ecx, dword [eax]
lea edx, [esp + 0x6c]
push edx
mov dword [esp + 0x78], ecx
push eax
mov eax, dword [ecx + 0x18]
call eax
mov ecx, dword [esp + 0x78]
push ecx
mov edi, eax
push esi
mov dword [esp + 0x24], edi
call fcn.00441ed0
add esp, 0x10
cmp edi, ebx
jne 0x4436dd
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x24]
push ebx
push 0xffffffffffffffff
mov dword [eax], edx
push ebx
mov ebx, dword [ebp + 4]
call fcn.00441cb0
add esp, 0xc
mov dword [esp + 0x68], eax
test eax, eax
je 0x4467a5
mov ecx, dword [esp + 0x6c]
mov dword [eax + 0x40], ecx
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
mov ecx, dword [eax]
mov edx, dword [esp + 0x68]
mov dword [edx + 0x44], ecx
jmp 0x4436dd
mov eax, dword [esp + 0x18]
mov byte [eax + 0x1e], 1
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x74]
mov eax, dword [edx + 0x1c]
push ecx
call eax
add esp, 4
jmp 0x4436dd
mov eax, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x34]
mov esi, dword [esi + 0x24]
lea ebx, [ebx + ecx*8]
mov dword [esp + 0x74], ebx
lea edi, [ebx + 0x28]
mov dword [esp + 0x78], edi
mov edx, dword [ebp + 4]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x84], eax
mov edx, dword [eax + 0x40]
mov dword [esp + 0x7c], edx
mov eax, dword [edx]
mov dword [esp + 0x80], eax
mov ecx, dword [eax]
mov dword [esp + 0x70], ecx
mov ecx, dword [edi]
mov dword [esp + 0x68], ecx
mov eax, dword [ebx]
mov dword [esp + 0x6c], eax
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x90], esi
mov dword [esp + 0x8c], eax
jle 0x446876
jmp 0x446834
mov edi, dword [esp + 0x78]
lea ecx, [eax + eax*4 + 5]
lea edx, [edi + ecx*8]
mov ecx, dword [esp + 0x90]
mov dword [ecx + eax*4], edx
mov edx, dword [esp + 0x8c]
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + edx*4]
call fcn.00441c80
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x68]
inc eax
cmp eax, ecx
mov dword [esp + 0x8c], eax
jl 0x446830
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x90]
mov esi, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x70]
push ecx
mov byte [esi + 0x65], 1
mov ecx, dword [ebp + 0x10]
push ecx
mov ecx, dword [esp + 0x7c]
push eax
push edx
mov edx, dword [ecx + 0x20]
call edx
mov edi, eax
mov eax, dword [esp + 0x94]
add esp, 0x14
push eax
push esi
mov dword [esp + 0x1c], edi
mov byte [esi + 0x65], 0
call fcn.00441ed0
add esp, 8
test edi, edi
jne 0x4468d4
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x70]
mov eax, dword [edx + 0x28]
push ecx
call eax
add esp, 4
mov dword [esp + 0x88], eax
cmp dword [esp + 0x88], 0
je 0x4468e6
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
mov ecx, dword [esp + 0x84]
mov byte [ecx + 0x14], 0
jmp 0x4436dd
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x34]
mov ecx, dword [eax + edx*4]
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea eax, [ebx + edx*8]
mov dword [esp + 0x70], eax
cmp byte [ecx + 0x14], 0
mov dword [esp + 0x2c], ecx
je 0x446924
push eax
call fcn.0043bff0
add esp, 4
jmp case.0x44208d.17
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x40]
mov eax, dword [ecx]
mov dword [esp + 0x68], eax
mov edx, dword [eax]
push 0x40
lea eax, [esp + 0x7c]
push 0
push eax
mov dword [esp + 0x78], edx
call fcn.004957a0
mov ebx, dword [esp + 0x7c]
add esp, 0xc
lea eax, [esp + 0x80]
call fcn.0043c330
mov ecx, dword [esp + 0x9c]
and ecx, 0xbf01
or ecx, 1
mov word [esp + 0x9c], cx
mov edx, dword [ebp + 8]
mov ecx, dword [esp + 0x2c]
push edx
mov edx, dword [ecx + 0x40]
lea eax, [esp + 0x7c]
push eax
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x2c]
push edx
call ecx
mov edx, dword [esp + 0x74]
add esp, 0xc
push edx
push esi
mov dword [esp + 0x1c], eax
call fcn.00441ed0
mov eax, dword [esp + 0xb4]
add esp, 8
test eax, eax
je 0x4469ae
mov dword [esp + 0x14], eax
movzx ecx, byte [esp + 0x30]
lea eax, [esp + 0x80]
call fcn.0043b950
mov eax, dword [esp + 0x70]
lea ebx, [esp + 0x80]
call fcn.0043c330
mov ecx, dword [esp + 0x70]
call fcn.0043c250
test eax, eax
jne 0x442b7b
jmp case.0x44208d.17
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x70], 0
mov eax, dword [ebp + 4]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x74], eax
cmp byte [eax + 0x14], 0
jne case.0x44208d.17
mov edx, dword [eax + 0x40]
mov ecx, dword [edx]
mov dword [esp + 0x68], ecx
mov ecx, dword [ecx]
mov dword [esp + 0x6c], ecx
mov byte [esi + 0x65], 1
mov eax, dword [eax + 0x40]
mov ecx, dword [ecx + 0x24]
push eax
call ecx
mov edx, dword [esp + 0x6c]
add esp, 4
push edx
mov ebx, eax
push esi
mov dword [esp + 0x1c], ebx
mov byte [esi + 0x65], 0
call fcn.00441ed0
add esp, 8
test ebx, ebx
jne 0x446a57
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x40]
mov edx, dword [esp + 0x6c]
mov eax, dword [edx + 0x28]
push ecx
call eax
add esp, 4
mov dword [esp + 0x70], eax
cmp dword [esp + 0x70], 0
jne 0x4436dd
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x20], ebp
jmp case.0x44208d.17
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 8]
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 4]
lea edx, [ebp + ebp*4]
lea ebx, [ebx + edx*8]
mov dword [esp + 0x6c], ebx
mov edx, dword [ebx + 0x14]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x4c]
call eax
mov ecx, dword [esp + 0x70]
push ecx
push esi
mov dword [esp + 0x24], eax
call fcn.00441ed0
add esp, 0x10
mov byte [esi + 0x62], 0
jmp case.0x44208d.17
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 8]
mov dword [esp + 0x68], eax
mov edx, dword [eax]
mov dword [esp + 0x6c], edx
mov eax, dword [ebp + 8]
mov dword [esp + 0x70], eax
cmp dword [edx + 0x34], 0
je 0x4436dd
mov ecx, dword [esi + 0x24]
mov dword [esp + 0x80], ecx
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx + ecx*4]
lea ebx, [ebx + ecx*8]
mov dword [esp + 0x84], ebx
mov dword [esp + 0x74], 0
test eax, eax
jle 0x446b37
mov ecx, ebx
call fcn.00441c80
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x84]
mov ecx, dword [esp + 0x80]
mov dword [ecx + eax*4], edx
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x84]
mov eax, dword [esp + 0x70]
inc ecx
add ebx, 0x28
cmp ecx, eax
mov dword [esp + 0x84], ebx
mov dword [esp + 0x74], ecx
jl 0x446af5
mov edx, dword [esp + 0x6c]
lea ecx, [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x84]
push ecx
mov ecx, dword [edx + 0x34]
push eax
mov eax, dword [esp + 0x74]
push eax
call ecx
mov edx, dword [esp + 0x78]
push edx
mov ebx, eax
push esi
mov dword [esp + 0x2c], ebx
call fcn.00441ed0
add esp, 0x18
test ebx, ebx
jne 0x446b7e
cmp dword [ebp + 4], ebx
je 0x446b7e
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x18]
mov dword [eax + 0x30], ecx
mov edx, dword [esp + 0x7c]
mov dword [eax + 0x34], edx
inc dword [esi + 0x6c]
jmp case.0x44208d.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x30]
mov dword [edi], edx
mov dword [edi + 4], 0
jmp case.0x44208d.17
mov ebp, dword [ebp + 0x10]
mov ecx, ebp
test ebp, ebp
jne 0x446bba
mov ecx, dword [esi + 0xbc]
mov dword [esp + 0x68], ecx
test ecx, ecx
je case.0x44208d.17
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x94], 0
je case.0x44208d.17
push esi
call fcn.00441940
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x94]
add esp, 4
mov ebx, eax
push ebx
push ecx
call edx
push ebx
push esi
call fcn.004239e0
add esp, 0x10
jmp case.0x44208d.17
mov dword [esp + 0x14], 9
jmp 0x442b9b
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x20]
mov dword [esi + 0x58], eax
mov cl, byte [ebp + 8]
mov byte [esi + 0x38], cl
mov dword [esi + 0x54], edx
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x446c64
mov esi, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x1c]
push 0x4c1ee8
lea edi, [esi + 0x5c]
call fcn.00423dc0
mov eax, dword [ebp + 0x10]
mov ecx, dword [esi + 0xbc]
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [ebp + 4]
push ecx
push edx
push str.abort_at__d_in___s_:__s
call fcn.004250c0
add esp, 0x18
jmp 0x446c86
cmp dword [esi + 0x58], 0
je 0x446c86
mov eax, dword [esi + 0xbc]
mov ecx, dword [esp + 0x20]
push eax
mov eax, dword [ebp + 4]
push ecx
push str.constraint_failed_at__d_in___s_
call fcn.004250c0
add esp, 0xc
push esi
call fcn.0043e960
mov edi, 5
add esp, 4
cmp eax, edi
je 0x446cd9
mov edi, dword [esi + 0x58]
neg edi
sbb edi, edi
and edi, 0xffffff9c
add edi, 0x65
jmp 0x442bf5
lea ecx, [esp + 0x78]
push ecx
call fcn.0043bd40
add esp, 4
jmp 0x4424ac
mov dword [esp + 0x14], 0x14
jmp 0x446d88
mov edx, dword [esp + 0x20]
mov dword [esi + 0x54], edx
mov byte [ebx + 0x1c], 0
mov edi, 5
mov dword [esi + 0x58], edi
jmp 0x442bf5
test ebp, ebp
je 0x446d13
mov esi, dword [esp + 0x18]
mov eax, esi
call fcn.0047b1e0
mov byte [esi + 0x1c], 1
mov esi, dword [esp + 0x18]
call fcn.0047ade0
mov eax, dword [esp + 0x24]
mov edi, dword [eax + 0x58]
neg edi
sbb edi, edi
and edi, 0xffffff9c
add edi, 0x65
jmp 0x442bf5
push 1
mov ecx, esi
call fcn.0043e900
mov edi, eax
add esp, 4
test edi, edi
jne 0x442bf5
mov al, byte [esp + 0x68]
mov edi, dword [esp + 0x18]
push esi
mov byte [edi + 0x1c], al
call fcn.0043e960
add esp, 4
cmp eax, 5
jne 0x446cf4
mov ecx, dword [esp + 0x20]
mov dl, 1
sub dl, byte [esp + 0x68]
mov dword [esi + 0x54], ecx
mov byte [edi + 0x1c], dl
mov edi, eax
mov dword [esi + 0x58], edi
jmp 0x442bf5
mov ecx, dword [esp + 0x20]
mov edi, 5
mov dword [esi + 0x54], ecx
mov dword [esi + 0x58], edi
jmp 0x442bf5
mov eax, 0xf64e
call fcn.0047c840
mov dword [esp + 0x14], eax
jmp 0x446d88
mov dword [esp + 0x14], 0xd
mov edx, dword [esp + 0x18]
cmp byte [edx + 0x1e], 0
je 0x446d9c
mov dword [esp + 0x14], 7
jmp 0x446daa
cmp dword [esp + 0x14], 0xc0a
je 0x442b9b
mov eax, dword [esp + 0x14]
call fcn.0047b2b0
mov edi, dword [esp + 0x24]
push eax
push 0x4c1ee8
add edi, 0x5c
mov eax, edx
call fcn.00423dc0
add esp, 8
jmp 0x442b9b
mov eax, 9
mov dword [esp + 0x14], eax
mov dword [esi + 0x58], eax
mov eax, dword [str.interrupted]
test eax, eax
jne 0x446de9
mov eax, str.unknown_error
mov edi, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x1c]
push 0x4c1ee8
add edi, 0x5c
call fcn.00423dc0
add esp, 8
jmp 0x442b9b