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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x134
mov eax, dword [0x4a93dc]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
mov ebx, dword [esi]
mov eax, dword [esi + 4]
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0xc]
mov ecx, dword [esi + 8]
mov dword [ebp - 0x114], eax
mov al, byte [edx + 0x4d]
mov edx, dword [ebx + 0x30]
push edi
xor edi, edi
mov byte [ebp - 0xec], al
mov eax, dword [ebx + 0x34]
push esi
mov dword [ebp - 0xd8], esi
mov dword [ebp - 0xe4], edi
mov dword [ebp - 0xd4], edi
mov dword [ebp - 0xdc], ebx
mov byte [ebp - 0xf1], 0
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0xe0], ecx
mov dword [ebp - 0xe8], edi
mov dword [ebp - 0x110], edi
mov dword [ebp - 0x118], edi
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xfc], eax
call fcn.0042a2b0
add esp, 4
cmp dword [esi + 0x5c], 7
je 0x42fd0b
mov dword [esi + 0x5c], edi
mov dword [esi + 0x14], edi
mov ecx, dword [ebx + 0xe0]
mov dword [ebx + 0x1b4], edi
test ecx, ecx
jne 0x4351d7
mov eax, dword [esi + 0x58]
xor edx, edx
cmp dword [ebx + 0x114], edx
mov dword [ebp - 0xe4], eax
setne dl
mov dword [ebp - 0x120], edx
lea ecx, [ecx]
cmp byte [ebx + 0x1e], 0
jne 0x42fd0b
cmp dword [ebp - 0x120], 0
mov eax, dword [ebp - 0xe4]
mov edx, dword [ebp - 0x114]
lea ecx, [eax + eax*4]
lea edi, [edx + ecx*4]
mov dword [ebp - 0xf0], edi
je 0x42f80f
mov eax, dword [ebx + 0x11c]
cmp eax, dword [ebp - 0x10c]
jne 0x42f809
mov ecx, dword [ebx + 0x118]
mov edx, dword [ebx + 0x114]
push ecx
call edx
add esp, 4
test eax, eax
jne 0x434fdc
mov dword [ebp - 0x10c], eax
inc dword [ebp - 0x10c]
test byte [edi + 2], 2
je 0x42f845
mov eax, dword [edi + 8]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov edx, 0x2460
mov dword [ebp - 0xe8], esi
test word [esi + 0x1c], dx
je 0x42f83c
mov eax, esi
call fcn.004284c0
mov eax, 4
mov word [esi + 0x1c], ax
movzx eax, byte [edi]
dec eax
cmp eax, 0x93
ja case.0x42f854.17
jmp dword [eax*4 + 0x43520c]
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ecx + 0xe0]
test edx, edx
jne 0x4351cb
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
mov eax, dword [ebp - 0xe4]
mov edx, 4
mov word [ecx + 0x1c], dx
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0xe4], eax
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
mov eax, dword [edx + ecx*8 + 0x10]
mov dword [ebp - 0xe4], eax
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
lea ecx, [edx + ecx*8]
mov edx, dword [ecx + 0x10]
mov eax, 4
mov word [ecx + 0x1c], ax
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0xd0], edx
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xe4], eax
jmp case.0x42f854.17
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xe0]
lea ecx, [eax + eax*4]
test byte [edx + ecx*8 + 0x1c], 1
je case.0x42f854.17
cmp dword [edi + 4], 0
mov ebx, dword [ebp - 0xd8]
jne 0x434feb
mov eax, dword [ebx + 0xa8]
test eax, eax
je 0x434feb
mov ecx, dword [eax + 0x3c]
dec dword [ebx + 0xb0]
mov edx, dword [ebp - 0xdc]
mov dword [ebx + 0xa8], ecx
mov ecx, dword [ebx + 0x6c]
add dword [edx + 0x40], ecx
mov dword [edx + 0x3c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 8]
mov dword [ecx + 4], edx
mov edx, dword [eax + 0xc]
mov dword [ecx + 0x1c], edx
mov edx, dword [eax + 0x10]
mov dword [ecx + 8], edx
mov edx, dword [eax + 0x14]
mov dword [ecx + 0x18], edx
mov edx, dword [eax + 0x18]
mov dword [ecx + 0x44], edx
mov dx, word [eax + 0x1c]
mov word [ecx + 0x32], dx
mov edx, dword [ecx]
mov esi, dword [eax + 0x30]
mov dword [edx + 0x30], esi
mov esi, dword [eax + 0x34]
mov dword [edx + 0x34], esi
mov edx, dword [eax + 0x38]
mov dword [ecx + 0x6c], edx
cmp dword [edi + 8], 4
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ecx + 0x30]
mov eax, dword [eax + 4]
mov ecx, dword [ecx + 0x34]
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xfc], ecx
jne 0x42f9d3
lea edx, [eax + eax*4]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edx*4 + 8]
dec ecx
mov dword [ebp - 0xe4], ecx
mov edx, dword [ebx + 4]
mov eax, dword [ebx + 8]
mov dword [ebp - 0x114], edx
mov dword [ebp - 0xe0], eax
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe8]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
jmp case.0x42f854.17
mov edi, dword [edi + 0x10]
mov ecx, dword [edi]
mov eax, dword [ebp - 0xe8]
mov dword [eax + 0x10], ecx
mov edx, dword [edi + 4]
mov dword [eax + 0x14], edx
jmp case.0x42f854.17
mov eax, dword [ebp - 0xe8]
mov ecx, 8
mov word [eax + 0x1c], cx
mov edx, dword [edi + 0x10]
fld qword [edx]
fstp qword [eax + 8]
jmp case.0x42f854.17
mov ecx, dword [edi + 0x10]
mov byte [edi], 9
call fcn.0040ef10
cmp byte [ebp - 0xec], 1
mov esi, dword [ebp - 0xe8]
mov dword [edi + 4], eax
je 0x42fac8
push 1
push ecx
or ebx, 0xffffffff
xor eax, eax
mov ecx, ebx
mov edx, esi
call fcn.00428bf0
add esp, 8
mov dword [ebp - 0xd4], eax
cmp eax, 0x12
je 0x42fada
movzx ecx, byte [ebp - 0xec]
mov eax, esi
call fcn.00428150
test eax, eax
jne 0x42fcff
mov dword [esi + 0x24], eax
mov ax, word [esi + 0x1c]
mov ecx, 0xfbff
and ax, cx
mov edx, 0x800
or ax, dx
mov word [esi + 0x1c], ax
cmp byte [edi + 1], bl
jne 0x42fab9
mov eax, dword [edi + 0x10]
mov ecx, dword [ebp - 0xdc]
push eax
push ecx
call fcn.0040cea0
add esp, 8
mov byte [edi + 1], bl
mov edx, dword [esi + 4]
mov dword [edi + 0x10], edx
mov eax, dword [esi + 0x18]
mov dword [edi + 4], eax
mov ecx, dword [edi + 4]
mov edx, dword [ebp - 0xdc]
cmp ecx, dword [edx + 0x48]
jle 0x42fba8
mov edi, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xdc]
push str.string_or_blob_too_big
add edi, 0x38
call fcn.0040d2b0
mov dword [ebp - 0xd4], 0x12
add esp, 4
mov ebx, dword [ebp - 0xd8]
mov edx, dword [ebx + 0x38]
mov ecx, dword [ebx + 0xa0]
mov eax, dword [ebp - 0xd4]
push edx
mov edx, dword [ebp - 0xe4]
push ecx
push edx
push str.statement_aborts_at__d:___s___s
push eax
mov dword [ebx + 0x5c], eax
call fcn.0040e630
add esp, 0x14
call fcn.0042b6b0
cmp dword [ebp - 0xd4], 0xc0a
jne 0x42fb4a
mov eax, dword [ebp - 0xdc]
mov byte [eax + 0x1e], 1
mov al, byte [ebp - 0xf1]
mov edi, 1
test al, al
je 0x42fb68
mov ecx, dword [ebp - 0xdc]
movzx eax, al
dec eax
call fcn.00442d50
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x100]
mov edx, dword [ebp - 0xfc]
mov dword [eax + 0x30], ecx
mov dword [eax + 0x34], edx
mov eax, dword [ebp - 0xd8]
push eax
call fcn.0042a320
mov ecx, dword [ebp - 4]
add esp, 4
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0048036c
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 0xe8]
mov eax, 0xa02
mov word [esi + 0x1c], ax
mov ecx, dword [edi + 0x10]
mov al, byte [ebp - 0xec]
mov dword [esi + 4], ecx
mov edx, dword [edi + 4]
mov dword [esi + 0x18], edx
mov byte [esi + 0x1f], al
jmp case.0x42f854.17
mov eax, dword [edi + 0x10]
mov esi, dword [ebp - 0xe8]
mov ecx, dword [edi + 4]
push 0
push eax
xor eax, eax
mov edx, esi
call fcn.00428bf0
mov cl, byte [ebp - 0xec]
add esp, 8
mov byte [esi + 0x1f], cl
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0x48]
lea edx, [edi + edi*4]
lea esi, [ecx + edx*8 - 0x28]
mov ecx, esi
mov dword [ebp - 0xd0], esi
call fcn.00428aa0
test eax, eax
jne 0x42fada
mov ebx, dword [ebp - 0xe8]
push 0x800
push esi
call fcn.00428ad0
add esp, 8
jmp case.0x42f854.17
mov eax, dword [edi + 0xc]
mov dword [ebp - 0xcc], eax
mov ecx, dword [edi + 4]
lea edx, [ecx + ecx*4]
mov dword [ebp - 0xc8], ecx
mov edi, dword [edi + 8]
mov ecx, dword [ebp - 0xe0]
lea ebx, [ecx + edx*8]
lea edx, [edi + edi*4]
mov dword [ebp - 0xc4], edi
lea edi, [ecx + edx*8]
mov dword [ebp - 0xe8], edi
test eax, eax
je 0x42fca9
dec eax
mov dword [ebp - 0xcc], eax
mov eax, dword [edi + 0x24]
mov dword [ebp - 0xd0], eax
mov eax, edi
mov dword [edi + 0x24], 0
call fcn.00428b90
mov ecx, dword [ebp - 0xd0]
mov dword [ebx + 0x24], ecx
mov eax, dword [ebp - 0xcc]
add ebx, 0x28
add edi, 0x28
test eax, eax
jne 0x42fc6c
mov dword [ebp - 0xe8], edi
dec eax
mov dword [ebp - 0xcc], eax
jmp case.0x42f854.17
mov eax, dword [edi + 8]
mov edi, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ebx, [eax + edx*8]
lea ecx, [edi + edi*4]
lea edx, [eax + ecx*8]
push 0x1000
push edx
mov dword [ebp - 0xe8], ebx
call fcn.00428ad0
mov eax, 0x1000
add esp, 8
test word [ebx + 0x1c], ax
je case.0x42f854.17
mov eax, ebx
call fcn.00428290
test eax, eax
je case.0x42f854.17
mov esi, dword [ebp - 0xd8]
mov ebx, dword [ebp - 0xdc]
push str.out_of_memory
lea edi, [esi + 0x38]
mov eax, ebx
mov byte [ebx + 0x1e], 1
call fcn.0040d2b0
mov dword [ebp - 0xd4], 7
jmp 0x42fafd
mov eax, dword [edi + 8]
mov edi, dword [edi + 4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ebx, [eax + ecx*8]
lea edx, [edi + edi*4]
lea eax, [eax + edx*8]
push 0x1000
push eax
mov dword [ebp - 0xe8], ebx
call fcn.00428ad0
add esp, 8
jmp case.0x42f854.17
mov esi, dword [ebp - 0xd8]
push 0
mov ecx, esi
call fcn.0042b650
add esp, 4
mov dword [ebp - 0xd4], eax
test eax, eax
jne case.0x42f854.17
push 1
push esi
call fcn.0042b550
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne case.0x42f854.17
mov edx, dword [esi + 0x54]
mov ecx, dword [ebp - 0xe0]
add edx, 2
or edx, 1
mov dword [esi + 0x54], edx
mov eax, dword [edi + 4]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
xor ecx, ecx
mov dword [esi + 0x14], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], ecx
cmp dword [edi + 8], ecx
jle 0x42fe2c
mov eax, dword [ebp - 0xd0]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*8]
mov edx, 0x1000
test word [eax + 0x1c], dx
je 0x42fdf2
call fcn.00428290
test eax, eax
jne 0x42fd05
mov ecx, dword [ebp - 0xcc]
lea eax, [ecx + ecx*4]
mov ecx, dword [ebp - 0xd0]
lea eax, [ecx + eax*8]
call fcn.00428350
mov eax, dword [ebp - 0xcc]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xd0]
lea ecx, [eax + edx*8]
call fcn.0042f3d0
mov ecx, dword [ebp - 0xcc]
inc ecx
mov dword [ebp - 0xcc], ecx
cmp ecx, dword [edi + 8]
jl 0x42fdc8
mov ecx, dword [ebp - 0xdc]
cmp byte [ecx + 0x1e], 0
jne 0x42fd05
mov edx, dword [ebp - 0xe4]
inc edx
mov eax, esi
mov dword [eax + 0x58], edx
mov edi, 0x64
jmp 0x42fb68
mov eax, dword [edi + 4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea esi, [eax + ecx*8]
mov ecx, dword [edi + 8]
mov edi, dword [edi + 0xc]
lea edx, [ecx + ecx*4]
lea ebx, [eax + edx*8]
mov dl, byte [ebx + 0x1c]
lea ecx, [edi + edi*4]
lea edi, [eax + ecx*8]
movzx eax, word [esi + 0x1c]
or dl, al
mov dword [ebp - 0x108], esi
mov dword [ebp - 0xe8], edi
test dl, 1
je 0x42fe99
mov esi, edi
call fcn.00428880
jmp case.0x42f854.17
test eax, 0x4000
je 0x42feaf
mov eax, esi
call fcn.004282f0
test eax, eax
jne 0x42fcff
mov eax, 0x4000
test word [ebx + 0x1c], ax
je 0x42fec9
mov eax, ebx
call fcn.004282f0
test eax, eax
jne 0x42fcff
test byte [esi + 0x1c], 0x12
jne 0x42fee9
movzx esi, byte [ebp - 0xec]
mov eax, dword [ebp - 0x108]
call fcn.004283a0
test eax, eax
jne 0x42fcff
test byte [ebx + 0x1c], 0x12
jne 0x42ff05
movzx esi, byte [ebp - 0xec]
mov eax, ebx
call fcn.004283a0
test eax, eax
jne 0x42fcff
mov esi, dword [ebp - 0x108]
mov eax, dword [esi + 0x18]
add eax, dword [ebx + 0x18]
cdq
mov ecx, edx
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], ecx
mov eax, dword [edx + 0x48]
cdq
cmp ecx, edx
jg 0x42fada
jl 0x42ff40
cmp dword [ebp - 0xd0], eax
ja 0x42fada
mov ax, word [edi + 0x1c]
mov ecx, 0xbf02
and ax, cx
or ax, 2
xor edx, edx
cmp edi, ebx
sete dl
mov word [edi + 0x1c], ax
mov eax, dword [ebp - 0xd0]
add eax, 2
push edx
call fcn.00428170
add esp, 4
test eax, eax
jne 0x42fcff
cmp edi, ebx
je 0x42ff8d
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebx + 4]
mov edx, dword [edi + 4]
push eax
push ecx
push edx
call fcn.00482370
add esp, 0xc
mov eax, dword [esi + 0x18]
mov edx, dword [ebx + 0x18]
mov ecx, dword [esi + 4]
add edx, dword [edi + 4]
push eax
push ecx
push edx
call fcn.00482370
mov ecx, dword [ebp - 0xd0]
mov eax, dword [edi + 4]
mov byte [ecx + eax], 0
mov eax, dword [ebp - 0xd0]
mov edx, dword [edi + 4]
mov byte [eax + edx + 1], 0
mov al, byte [ebp - 0xec]
mov ecx, 0x200
add esp, 0xc
or word [edi + 0x1c], cx
mov edx, dword [ebp - 0xd0]
mov dword [edi + 0x18], edx
mov byte [edi + 0x1f], al
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edx, dword [ebp - 0xe0]
lea ecx, [eax + eax*4]
lea ebx, [edx + ecx*8]
mov esi, ebx
call fcn.0042f520
mov eax, dword [edi + 8]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
call fcn.0042f520
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ecx, [eax + edx*8]
movzx edx, word [ebx + 0x1c]
movzx eax, word [esi + 0x1c]
or edx, eax
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xd0], edx
test dl, 1
jne 0x4302b4
mov cl, byte [ebx + 0x1c]
and cl, byte [esi + 0x1c]
test cl, 4
je 0x430095
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0xc8], eax
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0xc4], ecx
mov edx, dword [esi + 0x10]
mov dword [ebp - 0xc0], edx
mov edx, dword [esi + 0x14]
mov dword [ebp - 0xbc], edx
movzx edx, byte [edi]
add edx, 0xffffffaa
cmp edx, 3
ja case.default.0x430075
jmp dword [edx*4 + 0x43545c]
push ecx
push eax
lea eax, [ebp - 0xc0]
push eax
call fcn.0040fe10
add esp, 0xc
test eax, eax
je 0x430182
mov eax, ebx
call fcn.00428640
fstp qword [ebp - 0xb8]
mov eax, esi
call fcn.00428640
fst qword [ebp - 0xb0]
movzx eax, byte [edi]
add eax, 0xffffffaa
cmp eax, 3
ja case.default.0x4300be
jmp dword [eax*4 + 0x43546c]
push ecx
push eax
lea edx, [ebp - 0xc0]
call fcn.0040fea0
add esp, 8
test eax, eax
jne 0x430095
jmp 0x430182
push ecx
push eax
lea ecx, [ebp - 0xc0]
push ecx
call fcn.0040fef0
add esp, 0xc
test eax, eax
jne 0x430095
jmp 0x430182
mov edx, eax
or edx, ecx
je 0x4302b4
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
jne 0x430124
cmp dword [ebp - 0xc0], 0
jne 0x430124
cmp dword [ebp - 0xbc], 0x80000000
je 0x430095
push ecx
mov ecx, dword [ebp - 0xc0]
push eax
mov eax, dword [ebp - 0xbc]
push eax
push ecx
call fcn.00489d40
jmp 0x430176
mov edx, eax
or edx, ecx
je 0x4302b4
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
jne 0x430161
mov eax, 1
xor ecx, ecx
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], ecx
push ecx
mov ecx, dword [ebp - 0xc0]
push eax
mov eax, dword [ebp - 0xbc]
push eax
push ecx
call fcn.00489df0
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xe8]
mov edx, dword [ebp - 0xc0]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xbc]
mov dx, word [eax + 0x1c]
mov dword [eax + 0x14], ecx
mov ecx, 0xbf04
and dx, cx
or dx, 4
mov word [eax + 0x1c], dx
jmp case.0x42f854.17
fadd qword [ebp - 0xb8]
jmp 0x43025c
fsub qword [ebp - 0xb8]
jmp 0x43025c
fmul qword [ebp - 0xb8]
jmp 0x43025c
fld qword [ebp - 0xb8]
fld st(0)
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4302b0
fdivp st(1)
jmp 0x43025c
fld qword [ebp - 0xb8]
call fcn.00491b26
mov esi, eax
mov edi, edx
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], edi
call fcn.00491b26
mov ecx, esi
or ecx, edi
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], edx
je 0x4302b4
mov ecx, esi
and ecx, edi
cmp ecx, 0xffffffff
jne 0x430241
mov esi, 1
xor edi, edi
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], edi
push edi
push esi
push edx
push eax
call fcn.00489df0
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x12c], edx
fild qword [ebp - 0x130]
sub esp, 8
fst qword [ebp - 0xb0]
fstp qword [esp]
call fcn.0040eee0
add esp, 8
test eax, eax
jne 0x4302b4
mov eax, dword [ebp - 0xe8]
fld qword [ebp - 0xb0]
mov dx, word [eax + 0x1c]
fstp qword [eax + 8]
mov ecx, 0xbf08
and dx, cx
or dx, 8
mov word [eax + 0x1c], dx
test byte [ebp - 0xd0], 8
jne case.0x42f854.17
mov esi, eax
call fcn.00428690
jmp case.0x42f854.17
fstp st(0)
fstp st(0)
mov esi, dword [ebp - 0xe8]
call fcn.00428880
jmp case.0x42f854.17
movzx edx, byte [edi + 3]
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x88], ecx
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x84], edx
mov eax, dword [edi + 0xc]
lea eax, [eax + eax*4]
lea ebx, [ecx + eax*8]
mov eax, dword [edi + 8]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
xor eax, eax
mov dword [ebp - 0xe8], ebx
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
test edx, edx
jle 0x430363
mov edx, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0x88]
mov dword [ecx + eax*4], edx
mov eax, dword [ebp - 0xcc]
mov edx, 0x1000
test word [eax + 0x1c], dx
je 0x430340
call fcn.00428290
test eax, eax
jne 0x42fcff
mov eax, dword [ebp - 0xcc]
mov ecx, eax
call fcn.0042f3d0
mov eax, dword [ebp - 0xd0]
add dword [ebp - 0xcc], 0x28
inc eax
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0x84]
jl 0x43030d
cmp byte [edi + 1], 0xfb
mov eax, dword [edi + 0x10]
jne 0x43037c
mov dword [ebp - 0xc8], eax
xor eax, eax
mov dword [ebp - 0xc4], eax
jmp 0x43038c
mov dword [ebp - 0xc4], eax
mov ecx, dword [eax]
mov dword [ebp - 0xc8], ecx
xor eax, eax
mov esi, dword [ebp - 0xdc]
mov edx, 1
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0xc0]
mov word [ebp - 0xa4], dx
mov dword [ebp - 0xc0], esi
call fcn.00428b90
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xc8]
and eax, 0xbf01
or eax, 1
mov word [ebp - 0xa4], ax
mov dword [ebp - 0x94], 0
test byte [ecx + 3], 8
je 0x4303ef
mov edx, dword [edi - 4]
mov dword [ebp - 0x90], edx
mov eax, dword [ebp - 0x100]
mov ecx, dword [ebp - 0xfc]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x84]
push edx
mov edx, dword [ebp - 0xc8]
push eax
mov eax, dword [edx + 0xc]
lea ecx, [ebp - 0xc8]
push ecx
call eax
mov ebx, dword [ebp - 0xc4]
mov ecx, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
add esp, 0xc
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0xfc], edx
test ebx, ebx
je 0x430459
mov eax, dword [edi + 4]
push eax
call fcn.0042bc30
mov ecx, dword [ebp - 0xc4]
add esp, 4
mov dword [edi + 0x10], ecx
mov byte [edi + 1], 0xf9
cmp byte [esi + 0x1e], 0
jne 0x435085
cmp dword [ebp - 0x94], 0
je 0x43049e
mov bl, 1
lea edi, [ebp - 0xc0]
call fcn.004291c0
mov edi, dword [ebp - 0xd8]
push eax
push 0x4a05bc
add edi, 0x38
mov eax, esi
call fcn.0040d2b0
mov edx, dword [ebp - 0x94]
add esp, 8
mov dword [ebp - 0xd4], edx
movzx ecx, byte [ebp - 0xec]
lea eax, [ebp - 0xc0]
call fcn.00428150
mov esi, dword [ebp - 0xe8]
lea ebx, [ebp - 0xc0]
mov eax, esi
call fcn.00428b90
mov ecx, esi
call fcn.00428aa0
test eax, eax
jne 0x42fada
jmp case.0x42f854.17
mov eax, dword [edi + 4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ebx, [eax + ecx*8]
mov ecx, dword [edi + 8]
lea edx, [ecx + ecx*4]
lea ecx, [eax + edx*8]
mov edx, dword [edi + 0xc]
lea edx, [edx + edx*4]
lea esi, [eax + edx*8]
mov al, byte [ecx + 0x1c]
or al, byte [ebx + 0x1c]
mov dword [ebp - 0xe8], esi
test al, 1
je 0x430512
call fcn.00428880
jmp case.0x42f854.17
call fcn.004285d0
mov ecx, ebx
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], edx
call fcn.004285d0
mov ebx, eax
mov esi, edx
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xbc], esi
mov al, byte [edi]
mov byte [ebp - 0xb8], al
cmp al, 0x52
jne 0x430557
and dword [ebp - 0xd0], ebx
and dword [ebp - 0xcc], esi
jmp 0x43067e
cmp al, 0x53
jne 0x43056c
or dword [ebp - 0xd0], ebx
or dword [ebp - 0xcc], esi
jmp 0x43067e
mov ecx, ebx
or ecx, esi
je 0x43067e
test esi, esi
jg 0x4305b6
jl 0x430580
test ebx, ebx
jae 0x4305ab
mov dl, 0xa9
sub dl, al
mov al, dl
mov byte [ebp - 0xb8], al
cmp esi, 0xffffffff
jl 0x4305e3
jg 0x430598
cmp ebx, 0xffffffc0
jbe 0x4305e3
neg ebx
adc esi, 0
neg esi
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xbc], esi
test esi, esi
jl 0x43060a
jg 0x4305b6
cmp ebx, 0x40
jb 0x43060a
cmp dword [ebp - 0xcc], 0
jg 0x4305f9
jl 0x4305ca
cmp dword [ebp - 0xd0], 0
jae 0x4305f9
cmp al, 0x54
je 0x4305f9
or eax, 0xffffffff
cdq
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], edx
jmp 0x43067e
mov dword [ebp - 0xc0], 0x40
mov dword [ebp - 0xbc], 0
jmp 0x4305b6
xor eax, eax
cdq
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], edx
jmp 0x43067e
mov edx, dword [ebp - 0xcc]
cmp al, 0x54
mov eax, dword [ebp - 0xd0]
mov ecx, ebx
jne 0x430627
call fcn.00491ad0
mov esi, eax
mov edi, edx
jmp 0x430666
call fcn.00491d70
cmp dword [ebp - 0xcc], 0
mov esi, eax
mov edi, edx
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], edi
jg 0x430672
jl 0x430650
cmp dword [ebp - 0xd0], 0
jae 0x430672
mov ecx, 0x40
sub ecx, ebx
or eax, 0xffffffff
or edx, 0xffffffff
call fcn.00491ad0
or esi, eax
or edi, edx
mov dword [ebp - 0xc4], edi
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xd0], esi
mov dword [ebp - 0xcc], edi
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xd0]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 0xcc]
mov cx, word [eax + 0x1c]
mov dword [eax + 0x14], edx
mov edx, 0xbf04
and cx, dx
or cx, 4
mov word [eax + 0x1c], cx
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
call fcn.00428730
mov eax, dword [edi + 8]
cdq
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
jmp case.0x42f854.17
mov eax, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea esi, [eax + edx*8]
call fcn.0042f520
test byte [esi + 0x1c], 8
je 0x4306f1
call fcn.00428690
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x430710
mov edi, dword [edi + 8]
test edi, edi
je 0x435099
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
and eax, 0xbf04
or eax, 4
mov word [esi + 0x1c], ax
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
test byte [edx + ecx*8 + 0x1c], 4
lea esi, [edx + ecx*8]
je case.0x42f854.17
call fcn.00428760
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [edi + edi*4]
lea edi, [ecx + eax*8]
movzx eax, word [edi + 0x1c]
test al, 1
jne case.0x42f854.17
mov ecx, eax
shr ecx, 3
and ecx, 2
or ecx, eax
mov word [edi + 0x1c], cx
test cl, 2
jne 0x430786
test cl, 0xc
je 0x430786
movzx esi, byte [ebp - 0xec]
mov eax, edi
call fcn.004283a0
mov eax, 0xfff3
and word [edi + 0x1c], ax
movzx eax, word [edi + 0x1c]
test eax, 0x4000
je 0x4307b5
mov eax, edi
call fcn.004282f0
mov ecx, 0xbfe3
and word [edi + 0x1c], cx
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov ecx, 0xbfe3
and word [edi + 0x1c], cx
mov dword [ebp - 0xd4], 0
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov eax, dword [ebp - 0xe0]
lea edx, [edi + edi*4]
lea edi, [eax + edx*8]
movzx eax, word [edi + 0x1c]
test al, 1
jne case.0x42f854.17
test al, 0x10
jne 0x43081b
test al, 2
jne 0x430802
test al, 0xc
je 0x430802
movzx esi, byte [ebp - 0xec]
mov eax, edi
call fcn.004283a0
mov cx, word [edi + 0x1c]
mov edx, 0xbf10
and cx, dx
or cx, 0x10
mov word [edi + 0x1c], cx
jmp case.0x42f854.17
and eax, 0xff10
mov word [edi + 0x1c], ax
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [edi + edi*4]
lea eax, [ecx + eax*8]
call fcn.004287c0
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov eax, dword [ebp - 0xe0]
lea edx, [edi + edi*4]
test byte [eax + edx*8 + 0x1c], 1
lea esi, [eax + edx*8]
jne case.0x42f854.17
call fcn.00428730
jmp case.0x42f854.17
mov edi, dword [edi + 4]
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
test byte [edx + ecx*8 + 0x1c], 1
lea esi, [edx + ecx*8]
jne case.0x42f854.17
call fcn.00428760
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x108], edx
mov dx, word [edx + 0x1c]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov word [ebp - 0xca], dx
mov bl, byte [ebp - 0xca]
mov dword [ebp - 0xf8], eax
mov ax, word [eax + 0x1c]
mov dl, al
or dl, bl
mov word [ebp - 0xc8], ax
test dl, 1
je 0x43093c
mov dl, byte [edi + 3]
test dl, dl
jns 0x4308f7
mov esi, dword [ebp - 0xf8]
and al, bl
mov ebx, dword [ebp - 0x108]
test al, 1
mov eax, 0
sete al
jmp 0x4309cf
test dl, 0x10
je 0x430924
mov edi, dword [edi + 8]
lea eax, [edi + edi*4]
lea eax, [ecx + eax*8]
mov cx, word [eax + 0x1c]
mov edx, 0xbf01
and cx, dx
or cx, 1
mov dword [ebp - 0xe8], eax
mov word [eax + 0x1c], cx
jmp case.0x42f854.17
test dl, 8
je case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov al, byte [edi + 3]
mov ebx, dword [ebp - 0x108]
and al, 0x67
mov byte [ebp - 0xcc], al
je 0x43098f
mov esi, dword [ebp - 0xec]
push esi
mov edi, ebx
call fcn.0042f600
mov al, byte [ebp - 0xcc]
add esp, 4
push esi
mov esi, dword [ebp - 0xf8]
mov edi, esi
call fcn.0042f600
mov eax, dword [ebp - 0xdc]
add esp, 4
cmp byte [eax + 0x1e], 0
jne 0x42fcff
mov edi, dword [ebp - 0xf0]
jmp 0x430995
mov esi, dword [ebp - 0xf8]
mov ecx, 0x4000
test word [ebx + 0x1c], cx
je 0x4309a7
mov eax, ebx
call fcn.004282f0
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x4309b9
mov eax, esi
call fcn.004282f0
mov eax, dword [edi + 0x10]
push eax
mov eax, ebx
mov ecx, esi
call fcn.00428df0
mov ecx, dword [ebp - 0xe0]
add esp, 4
mov dword [ebp - 0xd0], eax
movzx edx, byte [edi]
add edx, 0xffffffb5
cmp edx, 4
ja case.default.0x4309e0
jmp dword [edx*4 + 0x43547c]
xor edx, edx
test eax, eax
sete dl
jmp 0x430a1b
xor edx, edx
test eax, eax
setne dl
jmp 0x430a1b
xor edx, edx
test eax, eax
sets dl
jmp 0x430a1b
xor edx, edx
test eax, eax
setle dl
jmp 0x430a1b
xor edx, edx
test eax, eax
setg dl
jmp 0x430a1b
xor edx, edx
test eax, eax
setns dl
mov eax, edx
mov dword [ebp - 0xd0], eax
test byte [edi + 3], 0x10
je 0x430a71
mov edi, dword [edi + 8]
lea eax, [edi + edi*4]
mov dx, word [ecx + eax*8 + 0x1c]
lea ecx, [ecx + eax*8]
mov eax, 0xbf04
and dx, ax
or dx, 4
mov word [ecx + 0x1c], dx
mov eax, dword [ebp - 0xd0]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov dword [ebp - 0xe8], ecx
mov cl, byte [ebp - 0xca]
mov byte [ebx + 0x1c], cl
mov dl, byte [ebp - 0xc8]
mov byte [esi + 0x1c], dl
jmp case.0x42f854.17
test eax, eax
je 0x430a7f
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
mov cl, byte [ebp - 0xca]
mov byte [ebx + 0x1c], cl
mov dl, byte [ebp - 0xc8]
mov byte [esi + 0x1c], dl
jmp case.0x42f854.17
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x118], eax
jmp case.0x42f854.17
mov ecx, dword [edi + 0xc]
mov dword [ebp - 0xd0], ecx
mov ebx, dword [edi + 0x10]
mov dword [ebp - 0xc0], ebx
mov edx, dword [edi + 4]
mov dword [ebp - 0xc8], edx
mov eax, dword [edi + 8]
mov dword [ebp - 0xc4], eax
xor eax, eax
mov dword [ebp - 0xcc], eax
test ecx, ecx
jle 0x430b7d
mov edi, dword [ebp - 0x118]
mov esi, dword [ebp - 0xe0]
jmp 0x430aec
mov ebx, dword [ebp - 0xc0]
test edi, edi
je 0x430af5
mov ecx, dword [edi + eax*4]
jmp 0x430af7
mov ecx, eax
mov dword [ebp - 0xbc], ecx
mov edx, dword [ebx + eax*4 + 0xc]
mov dword [ebp - 0xb8], edx
mov ebx, dword [ebx + 8]
movzx eax, byte [ebx + eax]
mov dword [ebp - 0xb4], eax
push edx
mov edx, dword [ebp - 0xc4]
lea eax, [ecx + edx]
add ecx, dword [ebp - 0xc8]
lea eax, [eax + eax*4]
lea ecx, [ecx + ecx*4]
lea eax, [esi + eax*8]
lea ecx, [esi + ecx*8]
call fcn.00428df0
add esp, 4
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x430b66
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp eax, dword [ebp - 0xd0]
jl 0x430ae6
mov dword [ebp - 0x118], 0
jmp case.0x42f854.17
cmp dword [ebp - 0xb4], 0
je 0x430b7d
mov edx, dword [ebp - 0x110]
neg edx
mov dword [ebp - 0x110], edx
mov dword [ebp - 0x118], 0
jmp case.0x42f854.17
mov eax, dword [ebp - 0x110]
test eax, eax
jns 0x430ba5
mov edi, dword [edi + 4]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
jne 0x430bb6
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov edi, dword [edi + 0xc]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov esi, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
test byte [esi + eax*8 + 0x1c], 1
lea ecx, [esi + eax*8]
je 0x430be2
mov edx, 2
jmp 0x430bf4
call fcn.004285d0
or eax, edx
je 0x430bf2
mov edx, 1
jmp 0x430bf4
xor edx, edx
mov dword [ebp - 0xd0], edx
mov eax, dword [edi + 8]
lea ecx, [eax + eax*4]
test byte [esi + ecx*8 + 0x1c], 1
lea ecx, [esi + ecx*8]
je 0x430c11
mov eax, 2
jmp 0x430c29
call fcn.004285d0
or eax, edx
mov edx, dword [ebp - 0xd0]
je 0x430c27
mov eax, 1
jmp 0x430c29
xor eax, eax
mov dword [ebp - 0xcc], eax
cmp byte [edi], 0x45
jne 0x430c41
lea eax, [eax + edx*2]
movzx eax, byte [edx + eax + 0x49d60c]
jmp 0x430c4c
lea ecx, [eax + edx*2]
movzx eax, byte [edx + ecx + 0x49d640]
mov dword [ebp - 0xd0], eax
mov edi, dword [edi + 0xc]
lea edx, [edi + edi*4]
lea ecx, [esi + edx*8]
mov dword [ebp - 0xe8], ecx
cmp eax, 2
jne 0x430c7f
mov ax, word [ecx + 0x1c]
mov edx, 0xbf01
and ax, dx
or ax, 1
mov word [ecx + 0x1c], ax
jmp case.0x42f854.17
cdq
mov dword [ecx + 0x10], eax
mov ax, word [ecx + 0x1c]
mov dword [ecx + 0x14], edx
mov edx, 0xbf04
and ax, dx
or ax, 4
mov word [ecx + 0x1c], ax
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edi, dword [edi + 8]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
test byte [eax + ecx*8 + 0x1c], 1
lea edx, [edi + edi*4]
lea ecx, [eax + ecx*8]
lea esi, [eax + edx*8]
mov dword [ebp - 0xe8], esi
je 0x430cce
call fcn.00428880
jmp case.0x42f854.17
call fcn.004285d0
or eax, edx
jne 0x430cec
mov eax, 1
cdq
push edx
push eax
call fcn.004288d0
add esp, 8
jmp case.0x42f854.17
xor eax, eax
cdq
push edx
push eax
call fcn.004288d0
add esp, 8
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edi, dword [edi + 8]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
test byte [eax + ecx*8 + 0x1c], 1
lea edx, [edi + edi*4]
lea ecx, [eax + ecx*8]
lea esi, [eax + edx*8]
mov dword [ebp - 0xe8], esi
je 0x430d2d
call fcn.00428880
jmp case.0x42f854.17
call fcn.004285d0
not edx
not eax
push edx
push eax
call fcn.004288d0
add esp, 8
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
lea esi, [ecx + eax*8]
je 0x430d60
mov eax, dword [edi + 0xc]
jmp 0x430d8f
mov eax, esi
call fcn.00428640
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x430d79
mov eax, 1
jmp 0x430d7b
xor eax, eax
mov dword [ebp - 0xd0], eax
cmp byte [edi], 0x1c
jne 0x430d95
xor edx, edx
test eax, eax
sete dl
mov eax, edx
mov dword [ebp - 0xd0], eax
test eax, eax
je 0x430da8
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
cmp byte [edi], 0x1a
jne case.0x42f854.17
mov eax, 4
mov word [esi + 0x1c], ax
mov dword [esi + 0x10], 1
mov dword [esi + 0x14], 0
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edx, dword [ebp - 0xe0]
lea ecx, [eax + eax*4]
test byte [edx + ecx*8 + 0x1c], 1
je case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov ecx, dword [edi + 4]
mov ebx, dword [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0xc0], ecx
mov edx, dword [edi + 8]
xor esi, esi
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0xbc], edx
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xb8], esi
mov eax, dword [edi + 0xc]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov dword [ebp - 0x94], eax
mov eax, dword [ebx + 0x44]
mov dword [ebp - 0xb4], esi
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0xb8], esi
mov eax, dword [esi]
mov dword [ebp - 0xb0], eax
test eax, eax
je 0x430f2e
call fcn.0042c1c0
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov eax, dword [ebp - 0xb8]
cmp byte [eax + 0x1c], 0
je 0x430eca
mov dword [ebp - 0xd0], 0
jmp 0x430f70
mov ecx, dword [eax + 0x50]
mov edx, ebx
cmp ecx, dword [edx + 0x54]
jne 0x430ee8
mov ecx, dword [eax + 0x54]
mov dword [ebp - 0xd0], ecx
mov edx, dword [eax + 0x60]
mov dword [ebp - 0xb4], edx
jmp 0x430f66
cmp byte [eax + 0x1f], 0
mov esi, dword [ebp - 0xb0]
je 0x430f17
lea eax, [ebp - 0xc8]
push eax
call fcn.004204e0
mov ecx, dword [ebp - 0xc8]
add esp, 4
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], ecx
jmp 0x430f60
lea edx, [ebp - 0xd0]
push edx
call fcn.00420560
add esp, 4
mov dword [ebp - 0xd4], eax
jmp 0x430f60
mov eax, dword [esi + 0x10]
test eax, eax
jle 0x430ebb
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov dword [ebp - 0x4c], eax
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0xd0], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0xb4], edx
test byte [edi + 3], 0x20
je 0x430f5a
xor eax, eax
jmp 0x430f5d
mov eax, dword [ebx + 0x54]
mov dword [esi + 0x50], eax
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xd0]
test ecx, ecx
jne 0x430f8f
mov eax, dword [ebp - 0x94]
mov cx, word [eax + 0x1c]
mov edx, 0xbf01
and cx, dx
or cx, 1
mov word [eax + 0x1c], cx
jmp case.0x42f854.17
mov edx, dword [ebp - 0xdc]
cmp ecx, dword [edx + 0x48]
ja 0x42fada
mov edx, dword [eax + 0x14]
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0xa4], edx
mov ecx, dword [eax + 0x58]
mov dword [ebp - 0xac], ecx
mov ebx, dword [eax + 0x50]
cmp ebx, dword [esi + 0x54]
jne 0x430fcc
mov eax, dword [eax + 0x5c]
mov dword [ebp - 0xa8], eax
jmp 0x43120f
lea ecx, [ecx + edx*4]
mov dword [ebp - 0xa8], ecx
mov dword [ebp - 0x54], 0
mov dword [eax + 0x5c], ecx
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xd0]
mov dword [ecx + 0x54], edx
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 0x54]
mov dword [ecx + 0x50], eax
mov ecx, dword [ebp - 0xb4]
test ecx, ecx
je 0x43100c
mov dword [ebp - 0x98], ecx
jmp 0x431077
mov edx, dword [ebp - 0xb8]
cmp byte [edx + 0x1f], 0
mov esi, dword [ebp - 0xb0]
je 0x43102c
lea eax, [ebp - 0x54]
push eax
call fcn.00420cc0
add esp, 4
jmp 0x431042
xor eax, eax
cmp byte [esi + 0x53], 1
jne 0x431042
lea ecx, [ebp - 0x54]
push 1
push ecx
call fcn.00420c30
add esp, 8
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0x98], eax
cmp edx, dword [ebp - 0x54]
ja 0x431064
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0xb4], eax
mov dword [ecx + 0x60], eax
jmp 0x431071
mov edx, dword [ebp - 0xb8]
mov dword [edx + 0x60], 0
mov ecx, dword [ebp - 0x98]
mov al, byte [ecx]
cmp al, 0x80
jae 0x43108a
movzx edx, al
mov dword [ebp - 0x60], edx
mov eax, 1
jmp 0x43109e
lea esi, [ebp - 0x60]
call fcn.0040fc50
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x98]
movzx eax, al
movzx eax, al
mov dword [ebp - 0x58], eax
cmp edx, 0x18003
jbe 0x4310c1
mov eax, 0x1010e
call fcn.00472df0
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov esi, dword [ebp - 0xa4]
lea ebx, [esi + esi*4 + 3]
mov dword [ebp - 0xa0], ebx
cmp ebx, edx
jle 0x4310dd
mov ebx, edx
mov dword [ebp - 0xa0], ebx
cmp dword [ebp - 0xb4], 0
jne 0x431140
cmp dword [ebp - 0x54], ebx
jge 0x431140
mov edx, dword [ebp - 0xb8]
xor ecx, ecx
mov word [ebp - 0x74], cx
mov dword [ebp - 0x90], ecx
movzx eax, byte [edx + 0x1f]
push eax
push ecx
mov ecx, dword [ebp - 0xb0]
lea eax, [ebp - 0x90]
call fcn.00429070
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne case.0x42f854.17
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x60]
mov ebx, dword [ebp - 0xa0]
mov esi, dword [ebp - 0xa4]
mov dword [ebp - 0x98], ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x58]
add eax, ecx
mov dword [ebp - 0x68], eax
xor eax, eax
mov dword [ebp - 0x9c], eax
test esi, esi
jle 0x4311c6
mov ecx, dword [ebp - 0x64]
cmp dword [ebp - 0x68], ecx
mov ecx, dword [ebp - 0xa8]
jae 0x431270
mov dword [ecx + eax*4], edx
mov ecx, dword [ebp - 0x68]
mov al, byte [ecx]
cmp al, 0x80
jae 0x431184
movzx edx, al
inc ecx
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x68], ecx
jmp 0x431192
lea esi, [ebp - 0x50]
call fcn.0040fc50
movzx eax, al
add dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x9c]
mov edx, dword [ebp - 0xac]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp - 0x50]
call fcn.0042c350
mov edx, dword [ebp - 0x60]
add edx, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x60], edx
cmp edx, eax
jae 0x43127a
mov edx, dword [ebp - 0x64]
inc edx
mov dword [ebp - 0x68], edx
lea eax, [ebp - 0x90]
push eax
call fcn.00428530
mov eax, dword [ebp - 0x68]
mov ecx, 1
mov word [ebp - 0x74], cx
mov ecx, dword [ebp - 0x64]
add esp, 4
cmp eax, ecx
ja 0x4313c3
mov edx, dword [ebp - 0x60]
mov esi, dword [ebp - 0xd0]
cmp edx, esi
ja 0x4313c3
cmp eax, ecx
jne 0x431209
cmp edx, esi
jne 0x4313c3
mov ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xa8]
cmp dword [eax + edx*4], 0
je 0x431335
cmp dword [ebp - 0xb4], 0
je 0x431298
mov eax, dword [ebp - 0x94]
mov esi, 0x2460
test word [eax + 0x1c], si
je 0x431256
call fcn.004284c0
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0xbc]
mov ecx, dword [ecx + edx*4]
push ecx
mov ecx, dword [ebp - 0xa8]
mov ecx, dword [ecx + edx*4]
add ecx, dword [ebp - 0xb4]
mov esi, eax
jmp 0x43131c
mov dword [ecx + eax*4], 0
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp eax, dword [ebp - 0xa4]
jl 0x43115a
jmp 0x4311c6
mov eax, dword [ecx + edx*4]
call fcn.0042c350
mov ebx, dword [ebp - 0x94]
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0x90]
call fcn.00428b90
mov edx, dword [ebp - 0xb8]
movzx eax, byte [edx + 0x1f]
mov ecx, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0xa0]
push eax
mov eax, dword [ecx + edx*4]
mov ecx, dword [ebp - 0xb0]
push eax
lea eax, [ebp - 0x90]
call fcn.00429070
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne case.0x42f854.17
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xbc]
mov esi, dword [ebp - 0x94]
mov dword [ebp - 0x98], ecx
mov edx, dword [edx + eax*4]
push edx
call fcn.0042c420
mov eax, dword [ebp - 0x94]
mov cl, byte [ebp - 0xec]
add esp, 4
mov byte [eax + 0x1f], cl
jmp 0x43136e
cmp byte [edi + 1], 0xf8
jne 0x431354
mov edx, dword [edi + 0x10]
mov ebx, dword [ebp - 0x94]
push 0x800
push edx
call fcn.00428ad0
add esp, 8
jmp 0x43136e
mov eax, dword [ebp - 0x94]
mov cx, word [eax + 0x1c]
mov edx, 0xbf01
and cx, dx
or cx, 1
mov word [eax + 0x1c], cx
cmp dword [ebp - 0x6c], 0
je 0x4313ad
mov eax, dword [ebp - 0x94]
mov ecx, 0xe7ff
and word [eax + 0x1c], cx
mov eax, dword [ebp - 0x94]
mov edx, 0x200
or word [eax + 0x1c], dx
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x8c]
mov dword [eax + 4], ecx
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x94]
mov dword [eax + 0x24], edx
mov eax, dword [ebp - 0x94]
call fcn.00428290
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov eax, 0x1015e
call fcn.00472df0
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov ecx, dword [edi + 0x10]
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0xd0], ecx
mov edi, dword [edi + 4]
lea edx, [edi + edi*4]
lea edi, [eax + edx*8]
mov al, byte [ecx]
mov byte [ebp - 0xcc], al
test al, al
je 0x431443
lea esp, [esp]
inc ecx
mov dword [ebp - 0xd0], ecx
mov ecx, 0x4000
test word [edi + 0x1c], cx
je 0x43141f
mov eax, edi
call fcn.004282f0
mov al, byte [ebp - 0xcc]
mov edx, dword [ebp - 0xec]
push edx
call fcn.0042f600
mov ecx, dword [ebp - 0xd0]
mov al, byte [ecx]
add esp, 4
add edi, 0x28
mov byte [ebp - 0xcc], al
test al, al
jne 0x431400
inc ecx
mov dword [ebp - 0xd0], ecx
jmp case.0x42f854.17
xor esi, esi
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xc0], esi
mov dword [ebp - 0xb0], esi
mov eax, dword [edi + 4]
mov dword [ebp - 0x9c], eax
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0x98], ecx
mov ecx, dword [ebp - 0xe0]
lea edx, [eax + eax*4]
lea ebx, [ecx + edx*8]
mov edx, dword [ebp - 0xd8]
movzx edx, byte [edx + 0x65]
mov dword [ebp - 0xa4], ebx
mov eax, dword [edi + 8]
mov dword [ebp - 0x9c], eax
lea eax, [eax + eax*4]
lea eax, [ebx + eax*8 - 0x28]
mov dword [ebp - 0x94], edx
mov dword [ebp - 0xa0], eax
mov edi, dword [edi + 0xc]
lea edx, [edi + edi*4]
lea ecx, [ecx + edx*8]
mov edi, ebx
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xcc], edi
cmp ebx, eax
ja 0x4315bb
mov esi, dword [ebp - 0x98]
test esi, esi
je 0x43150f
mov edx, dword [ebp - 0xec]
mov ecx, edi
push edx
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov al, byte [eax + esi]
call fcn.0042f600
mov ebx, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xcc]
add esp, 4
mov ecx, 0x4000
test word [edi + 0x1c], cx
je 0x431533
cmp dword [edi + 0x18], 0
jle 0x431533
mov eax, edi
call fcn.004282f0
mov ebx, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xcc]
mov edx, dword [ebp - 0x94]
push edx
mov ecx, edi
call fcn.0042c260
mov ecx, eax
add esp, 4
mov dword [ebp - 0xa8], ecx
call fcn.0042c350
mov dword [ebp - 0x8c], eax
cdq
add dword [ebp - 0xc8], eax
push 0
push ecx
adc dword [ebp - 0xc4], edx
call fcn.0040fcc0
mov esi, dword [ebp - 0xc0]
add esi, eax
mov eax, 0x4000
add esp, 8
mov dword [ebp - 0xc0], esi
test word [edi + 0x1c], ax
je 0x431593
mov ecx, dword [edi + 0x10]
add dword [ebp - 0xb0], ecx
jmp 0x4315a6
cmp dword [ebp - 0x8c], 0
je 0x4315a6
mov dword [ebp - 0xb0], 0
add edi, 0x28
mov dword [ebp - 0xcc], edi
cmp edi, dword [ebp - 0xa0]
jbe 0x4314d2
mov eax, esi
cdq
push edx
push eax
call fcn.0040fcc0
mov edi, eax
add esi, edi
mov eax, esi
cdq
push edx
push eax
mov dword [ebp - 0xac], edi
mov dword [ebp - 0xc0], esi
call fcn.0040fcc0
add esp, 0x10
cmp edi, eax
jge 0x4315ed
inc esi
mov dword [ebp - 0xc0], esi
mov eax, dword [ebp - 0xb0]
cdq
mov ebx, eax
mov dword [ebp - 0xf8], edx
mov eax, esi
cdq
mov edi, eax
mov ecx, edx
mov edx, dword [ebp - 0xdc]
sub edi, ebx
sbb ecx, dword [ebp - 0xf8]
add edi, dword [ebp - 0xc8]
adc ecx, dword [ebp - 0xc4]
mov dword [ebp - 0xb8], edi
mov dword [ebp - 0xb4], ecx
mov eax, dword [edx + 0x48]
cdq
cmp ecx, edx
jg 0x42fada
jl 0x43163f
cmp edi, eax
ja 0x42fada
mov eax, edi
mov edi, dword [ebp - 0xe8]
push 0
call fcn.00428170
add esp, 4
test eax, eax
jne 0x42fcff
mov eax, dword [ebp - 0xc0]
mov esi, edi
mov ecx, dword [esi + 4]
mov dword [ebp - 0xd0], ecx
cmp eax, 0x80
jae 0x43167a
mov byte [ecx], al
mov eax, 1
jmp 0x43167f
call fcn.0040faa0
mov ecx, dword [ebp - 0xa4]
movzx edi, al
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x90], edi
mov dword [ebp - 0xcc], ecx
cmp ecx, eax
ja 0x43170a
mov edi, edi
mov edx, dword [ebp - 0x94]
push edx
call fcn.0042c260
add esp, 4
mov dword [ebp - 0xa8], eax
cmp eax, 0x80
jae 0x4316cc
mov ecx, dword [ebp - 0xd0]
mov byte [edi + ecx], al
mov eax, 1
jmp 0x4316da
mov edx, dword [ebp - 0xd0]
lea ecx, [edi + edx]
call fcn.0040faa0
mov edi, dword [ebp - 0x90]
mov ecx, dword [ebp - 0xcc]
movzx eax, al
add edi, eax
mov eax, dword [ebp - 0xa0]
add ecx, 0x28
mov dword [ebp - 0x90], edi
mov dword [ebp - 0xcc], ecx
cmp ecx, eax
jbe 0x4316a0
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0xcc], ecx
cmp ecx, eax
ja 0x43176b
jmp 0x431720
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xd0]
sub edx, edi
lea ebx, [edi + eax]
mov eax, dword [ebp - 0x94]
push edx
call fcn.0042c370
mov ecx, dword [ebp - 0xcc]
mov edi, dword [ebp - 0x90]
add ecx, 0x28
add edi, eax
add esp, 4
mov dword [ebp - 0x90], edi
mov dword [ebp - 0xcc], ecx
cmp ecx, dword [ebp - 0xa0]
jbe 0x431720
mov esi, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xb8]
mov edx, 0x410
mov dword [esi + 0x18], ecx
mov word [esi + 0x1c], dx
mov dword [esi + 0x20], 0
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x43179a
mov dword [esi + 0x10], eax
mov eax, 0x4410
mov word [esi + 0x1c], ax
mov byte [esi + 0x1f], 1
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edi + 4]
mov eax, dword [edx + 0x44]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ecx]
xor ecx, ecx
mov dword [ebp - 0xc8], eax
cmp eax, ecx
je 0x4317f2
lea edx, [ebp - 0xd0]
push edx
call fcn.00425330
mov ecx, dword [ebp - 0xd0]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xe8]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 0xcc]
add esp, 4
mov dword [eax + 0x14], edx
jmp case.0x42f854.17
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], ecx
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 0xcc]
mov dword [eax + 0x14], edx
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov dword [ebp - 0xd0], eax
mov edi, dword [edi + 0x10]
mov dword [ebp - 0xcc], edi
test eax, eax
jne 0x431932
mov ebx, dword [ebp - 0xdc]
cmp dword [ebx + 0x90], eax
jle 0x431864
mov edi, dword [ebp - 0xd8]
push str.cannot_open_savepoint___SQL_statements_in_progress
add edi, 0x38
mov eax, ebx
call fcn.0040d2b0
add esp, 4
mov dword [ebp - 0xd4], 5
jmp case.0x42f854.17
mov ecx, edi
call fcn.0040ef10
mov dword [ebp - 0xc8], eax
mov eax, dword [ebx + 0x1e4]
add eax, dword [ebx + 0x1e0]
push eax
push 0
call fcn.00465de0
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov ecx, dword [ebp - 0xc8]
add ecx, 0x19
mov esi, ebx
call fcn.0040d0f0
mov dword [ebp - 0xc4], eax
test eax, eax
je case.0x42f854.17
lea ecx, [eax + 0x18]
mov dword [eax], ecx
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xc4]
inc edx
push edx
mov edx, dword [ecx]
push eax
push edx
call fcn.00482370
mov eax, ebx
add esp, 0xc
cmp byte [eax + 0x1c], 0
je 0x4318ee
mov byte [eax + 0x1c], 0
mov byte [eax + 0x1e8], 1
jmp 0x4318f4
inc dword [eax + 0x1e0]
mov ecx, dword [eax + 0x1dc]
mov edx, dword [ebp - 0xc4]
mov dword [edx + 0x10], ecx
mov ecx, dword [ebp - 0xc4]
mov edx, dword [eax + 0x1f0]
mov dword [eax + 0x1dc], ecx
mov ecx, dword [ebp - 0xc4]
mov dword [ecx + 8], edx
mov edx, dword [eax + 0x1f4]
mov eax, dword [ebp - 0xc4]
mov dword [eax + 0xc], edx
jmp case.0x42f854.17
mov esi, dword [ebp - 0xdc]
mov dword [ebp - 0xb8], 0
mov ebx, dword [esi + 0x1dc]
mov dword [ebp - 0xc0], ebx
test ebx, ebx
je 0x431972
mov ecx, dword [ebx]
mov edx, edi
call fcn.0040f130
test eax, eax
je 0x43199a
inc dword [ebp - 0xb8]
mov ebx, dword [ebx + 0x10]
mov dword [ebp - 0xc0], ebx
test ebx, ebx
jne 0x431952
push edi
mov edi, dword [ebp - 0xd8]
push str.no_such_savepoint:__s
add edi, 0x38
mov eax, esi
call fcn.0040d2b0
add esp, 8
mov dword [ebp - 0xd4], 1
jmp case.0x42f854.17
cmp dword [esi + 0x90], 0
jg 0x431b8a
mov eax, dword [ebp - 0xd0]
cmp eax, 2
jne 0x4319bf
cmp dword [esi + 0x8c], 1
jg 0x431b93
cmp dword [ebx + 0x10], 0
jne 0x431a21
cmp byte [esi + 0x1e8], 0
je 0x431a21
mov dword [ebp - 0xf8], 1
cmp eax, 1
jne 0x431a2b
mov ebx, dword [ebp - 0xd8]
push eax
mov ecx, ebx
call fcn.0042b650
mov edi, eax
add esp, 4
test edi, edi
jne 0x42fb68
mov byte [esi + 0x1c], 1
call fcn.0042b6b0
cmp eax, 5
je 0x4350a8
mov byte [esi + 0x1e8], 0
mov ecx, dword [ebx + 0x5c]
mov dword [ebp - 0xd4], ecx
mov edi, esi
jmp 0x431ac2
mov dword [ebp - 0xf8], 0
mov ecx, dword [esi + 0x1e0]
sub ecx, dword [ebp - 0xb8]
xor eax, eax
dec ecx
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xb4], eax
cmp dword [esi + 4], eax
jle 0x431a95
jmp 0x431a56
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xd0]
push ecx
mov ecx, dword [esi + 8]
add eax, eax
mov eax, dword [ecx + eax*8 + 4]
push edx
call fcn.00420250
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov eax, dword [ebp - 0xb4]
inc eax
mov dword [ebp - 0xb4], eax
cmp eax, dword [esi + 4]
jl 0x431a50
mov ebx, dword [ebp - 0xc0]
cmp dword [ebp - 0xd0], 2
mov edi, dword [ebp - 0xdc]
jne 0x431ac8
mov esi, 0x200
test dword [edi + 0xc], esi
je 0x431ac8
mov eax, edi
call fcn.0042cc50
or eax, 0xffffffff
mov ecx, edi
call fcn.00442d50
or dword [edi + 0xc], esi
mov ebx, dword [ebp - 0xc0]
cmp dword [edi + 0x1dc], ebx
je 0x431b09
mov eax, dword [edi + 0x1dc]
mov dword [ebp - 0xbc], eax
mov edx, dword [eax + 0x10]
mov dword [edi + 0x1dc], edx
mov eax, dword [ebp - 0xbc]
push eax
push edi
call fcn.0040cea0
dec dword [edi + 0x1e0]
mov ebx, dword [ebp - 0xc0]
add esp, 8
cmp dword [edi + 0x1dc], ebx
jne 0x431ad0
cmp dword [ebp - 0xd0], 1
jne 0x431b40
mov ecx, dword [ebx + 0x10]
mov dword [edi + 0x1dc], ecx
mov edx, dword [ebp - 0xc0]
push edx
push edi
call fcn.0040cea0
add esp, 8
cmp dword [ebp - 0xf8], 0
jne case.0x42f854.17
dec dword [edi + 0x1e0]
jmp 0x431b5f
cmp dword [ebp - 0xf8], 0
mov eax, dword [ebx + 8]
mov dword [edi + 0x1f0], eax
mov ecx, dword [ebx + 0xc]
mov dword [edi + 0x1f4], ecx
jne case.0x42f854.17
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xd0]
push edx
push eax
mov ebx, edi
call fcn.00465de0
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
jmp case.0x42f854.17
cmp dword [ebp - 0xd0], 2
jne 0x431b9a
mov eax, str.rollback
jmp 0x431b9f
mov eax, str.release
mov edi, dword [ebp - 0xd8]
push eax
push str.cannot__s_savepoint___SQL_statements_in_progress
add edi, 0x38
mov eax, esi
call fcn.0040d2b0
add esp, 8
mov dword [ebp - 0xd4], 5
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov esi, dword [ebp - 0xdc]
mov dword [ebp - 0xd0], eax
mov edi, dword [edi + 8]
mov dword [ebp - 0xcc], edi
test eax, eax
je 0x431c07
cmp byte [esi + 0x1c], 0
jne 0x431c07
mov ebx, 1
mov dword [ebp - 0xc8], ebx
test edi, edi
je 0x431c2d
cmp dword [esi + 0x8c], ebx
jle 0x431c16
push str.cannot_rollback_transaction___SQL_statements_in_progress
jmp 0x431c3b
mov dword [ebp - 0xc8], 0
mov ebx, 1
movzx ecx, byte [esi + 0x1c]
cmp eax, ecx
jne 0x4350c2
test eax, eax
jne 0x431c5d
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x431c6b
cmp dword [esi + 0x90], 0
jle 0x431c16
push str.cannot_commit_transaction___SQL_statements_in_progress
mov edi, dword [ebp - 0xd8]
add edi, 0x38
mov eax, esi
call fcn.0040d2b0
add esp, 4
mov dword [ebp - 0xd4], 5
jmp case.0x42f854.17
mov eax, str.cannot_rollback___no_transaction_is_active
test edi, edi
jne 0x431c6b
mov eax, str.cannot_commit___no_transaction_is_active
mov edi, dword [ebp - 0xd8]
push eax
add edi, 0x38
mov eax, esi
call fcn.0040d2b0
add esp, 4
mov dword [ebp - 0xd4], ebx
jmp case.0x42f854.17
mov edx, dword [edi + 4]
mov eax, dword [ebp - 0xdc]
mov ecx, dword [eax + 8]
add edx, edx
mov eax, dword [ecx + edx*8 + 4]
mov dword [ebp - 0xd0], eax
test eax, eax
je case.0x42f854.17
mov edx, dword [edi + 8]
push edx
push eax
call fcn.0041eca0
add esp, 8
mov dword [ebp - 0xd4], eax
cmp eax, 5
je 0x435142
test eax, eax
jne 0x43517a
cmp dword [edi + 8], eax
je case.0x42f854.17
mov esi, dword [ebp - 0xd8]
cmp byte [esi + 0x67], al
je case.0x42f854.17
mov ebx, dword [ebp - 0xdc]
cmp byte [ebx + 0x1c], al
je 0x431cfe
cmp dword [ebx + 0x8c], 1
jle case.0x42f854.17
cmp dword [esi + 0x78], 0
jne 0x431d19
mov ecx, dword [ebx + 0x1e0]
inc dword [ebx + 0x1e4]
add ecx, dword [ebx + 0x1e4]
mov dword [esi + 0x78], ecx
mov edx, dword [esi + 0x78]
dec edx
push edx
push 0
call fcn.00465de0
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x431d4a
mov eax, dword [esi + 0x78]
push eax
mov eax, dword [ebp - 0xd0]
call fcn.00420200
add esp, 4
mov dword [ebp - 0xd4], eax
mov ecx, dword [ebx + 0x1f0]
mov dword [esi + 0x98], ecx
mov edx, dword [ebx + 0x1f4]
mov dword [esi + 0x9c], edx
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0xcc], eax
mov edi, dword [edi + 0xc]
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xc8], edi
push ecx
mov ecx, dword [edx + 8]
add eax, eax
mov eax, dword [ecx + eax*8 + 4]
push edi
call fcn.00425230
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xe8]
cdq
add esp, 8
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
jmp case.0x42f854.17
mov edx, dword [edi + 4]
mov eax, dword [ebp - 0xdc]
shl edx, 4
add edx, dword [eax + 8]
mov dword [ebp - 0xd0], edx
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xe0]
lea ecx, [eax + eax*4]
lea esi, [edx + ecx*8]
call fcn.00428730
mov eax, dword [esi + 0x10]
mov ecx, dword [edi + 8]
mov edx, dword [ebp - 0xd0]
push eax
mov eax, dword [edx + 4]
push ecx
call fcn.004252a0
mov dword [ebp - 0xd4], eax
mov eax, dword [edi + 8]
add esp, 8
cmp eax, 1
jne 0x431e1d
mov eax, dword [ebp - 0xd0]
mov ecx, dword [eax + 0xc]
mov edx, dword [esi + 0x10]
mov eax, dword [ebp - 0xdc]
mov dword [ecx], edx
or dword [eax + 0xc], 0x200
jmp 0x431e31
cmp eax, 2
jne 0x431e31
mov eax, dword [ebp - 0xd0]
mov ecx, dword [eax + 0xc]
mov dl, byte [esi + 0x10]
mov byte [ecx + 0x4c], dl
cmp dword [edi + 4], 1
jne case.0x42f854.17
mov eax, dword [ebp - 0xdc]
call fcn.0042cc50
mov eax, dword [ebp - 0xd8]
mov byte [eax + 0x63], 0
jmp case.0x42f854.17
mov ecx, dword [edi + 4]
mov esi, dword [ebp - 0xdc]
mov edx, dword [esi + 8]
add ecx, ecx
mov eax, dword [edx + ecx*8 + 4]
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x431e93
lea ecx, [ebp - 0xd0]
push ecx
push 1
call fcn.00425230
mov edx, dword [edi + 4]
mov eax, dword [esi + 8]
add esp, 8
add edx, edx
mov ecx, dword [eax + edx*8 + 0xc]
mov eax, dword [ecx + 4]
jmp 0x431e9f
mov dword [ebp - 0xd0], 0
xor eax, eax
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0xcc], eax
cmp edx, dword [edi + 8]
jne 0x431eb9
cmp eax, dword [edi + 0xc]
je case.0x42f854.17
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0x38]
push ecx
push esi
call fcn.0040cea0
push esi
mov ebx, str.database_schema_has_changed
call fcn.0040d230
mov ebx, dword [ebp - 0xd8]
mov dword [ebx + 0x38], eax
mov edi, dword [edi + 4]
mov eax, dword [esi + 8]
mov edx, edi
add edx, edx
mov ecx, dword [eax + edx*8 + 0xc]
mov edx, dword [ecx]
add esp, 0xc
cmp edx, dword [ebp - 0xd0]
je 0x431f01
mov eax, edi
mov ecx, esi
call fcn.00442d50
mov byte [ebx + 0x63], 1
mov dword [ebp - 0xd4], 0x11
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd8]
cmp byte [eax + 0x63], 0
je 0x431f2f
mov dword [ebp - 0xd4], 4
jmp case.0x42f854.17
mov esi, dword [ebp - 0xdc]
xor ecx, ecx
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], ecx
mov edx, dword [edi + 8]
mov dword [ebp - 0xc8], edx
mov eax, dword [edi + 0xc]
mov dword [ebp - 0xc4], eax
shl eax, 4
add eax, dword [esi + 8]
mov dword [ebp - 0xb4], eax
mov esi, dword [eax + 4]
mov dword [ebp - 0xbc], esi
cmp byte [edi], 0x28
jne 0x431f8f
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0xc0], 1
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x4c]
cmp al, byte [esi + 0x65]
jae 0x431f95
mov byte [esi + 0x65], al
jmp 0x431f95
mov dword [ebp - 0xc0], ecx
cmp byte [edi + 3], cl
je 0x431fc3
lea ecx, [edx + edx*4]
mov edx, dword [ebp - 0xe0]
lea esi, [edx + ecx*8]
call fcn.00428730
mov esi, dword [esi + 0x10]
mov dword [ebp - 0xc8], esi
cmp esi, 2
jl 0x43515e
mov ecx, dword [ebp - 0xd0]
mov al, byte [edi + 1]
cmp al, 0xfa
jne 0x431ff4
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ecx]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0xcc], eax
mov ecx, dword [edx + 8]
mov edx, dword [ecx + 0xc]
mov cl, byte [edx + 0x4d]
mov byte [eax + 4], cl
mov edx, dword [ebp - 0xcc]
movzx ecx, word [edx + 6]
inc ecx
jmp 0x431ffb
cmp al, 0xf2
jne 0x432001
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0xd0], ecx
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xd8]
push 1
push eax
push ecx
mov ecx, dword [edi + 4]
push ecx
push edx
call fcn.0042f400
add esp, 0x14
mov dword [ebp - 0xb8], eax
test eax, eax
je 0x42fcff
mov byte [eax + 0x1c], 1
mov eax, dword [ebp - 0xb8]
mov byte [eax + 0x20], 1
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
mov ebx, dword [ebp - 0xc0]
push ecx
mov ecx, dword [ebp - 0xbc]
push edx
call fcn.00420300
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xcc]
mov dword [ecx + 8], edx
mov ecx, dword [ebp - 0xb8]
add esp, 8
cmp byte [edi + 1], 0xfa
mov dword [ebp - 0xd4], eax
setne al
mov byte [ecx + 0x1e], al
mov eax, dword [ebp - 0xb8]
cmp byte [eax + 0x1e], 0
sete dl
mov byte [eax + 0x1f], dl
jmp case.0x42f854.17
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
mov esi, dword [ebp - 0xd8]
push 1
push 0xffffffffffffffff
push eax
push ecx
push esi
call fcn.0042f400
add esp, 0x14
mov dword [ebp - 0xd0], eax
test eax, eax
je 0x42fcff
mov byte [eax + 0x1c], 1
movzx edx, byte [edi + 3]
mov ecx, dword [ebp - 0xd0]
push 0x41e
or edx, 9
push edx
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx]
push 0
add ecx, 4
push eax
call fcn.0041dd00
add esp, 0x10
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x4321da
mov ecx, dword [ebp - 0xd0]
mov edx, dword [ecx + 4]
push 1
push edx
call fcn.0041eca0
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x4321da
cmp dword [edi + 0x10], eax
je 0x4321af
movzx eax, byte [edi + 3]
mov edx, dword [ebp - 0xd0]
or eax, 2
push eax
mov eax, dword [edx + 4]
lea ecx, [ebp - 0x11c]
push ecx
call fcn.00424bd0
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x4321a3
mov eax, dword [edi + 0x10]
mov ecx, dword [ebp - 0x11c]
push eax
push ecx
mov ecx, dword [ebp - 0xd0]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov ebx, 1
call fcn.00420300
mov edx, dword [edi + 0x10]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
mov dword [eax + 8], edx
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
mov ecx, dword [ebp - 0xd0]
mov edx, dword [ecx + 8]
mov al, byte [eax + 0x4d]
add esp, 8
mov byte [edx + 4], al
mov ecx, dword [ebp - 0xd0]
mov byte [ecx + 0x1e], 0
jmp 0x4321da
mov ecx, dword [ebp - 0xd0]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
push 0
push 1
mov ebx, 1
call fcn.00420300
mov edx, dword [ebp - 0xd0]
add esp, 8
mov dword [ebp - 0xd4], eax
mov byte [edx + 0x1e], bl
cmp byte [edi + 3], 0x10
mov ecx, dword [ebp - 0xd0]
setne al
mov byte [ecx + 0x20], al
mov eax, dword [ebp - 0xd0]
cmp byte [eax + 0x1e], 0
sete dl
mov byte [eax + 0x1f], dl
jmp case.0x42f854.17
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
mov esi, dword [ebp - 0xd8]
push 1
push 0xffffffffffffffff
push eax
push ecx
push esi
call fcn.0042f400
add esp, 0x14
mov dword [ebp - 0xd0], eax
test eax, eax
je 0x42fcff
mov edx, dword [edi + 0x10]
mov dword [eax + 8], edx
mov eax, dword [esi]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0xc]
mov eax, dword [ebp - 0xd0]
mov ecx, dword [eax + 8]
mov dl, byte [edx + 0x4d]
mov byte [ecx + 4], dl
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xdc]
mov byte [eax + 0x21], 1
mov eax, dword [ebp - 0xd0]
push ecx
call fcn.004366b0
add esp, 4
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov edx, dword [edi + 0xc]
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xd8]
push 0
push 0xffffffffffffffff
push edx
push eax
push ecx
call fcn.0042f400
add esp, 0x14
mov dword [ebp - 0xd0], eax
test eax, eax
je 0x42fcff
mov byte [eax + 0x1c], 1
mov edx, dword [edi + 8]
mov eax, dword [ebp - 0xd0]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xd0]
mov byte [ecx + 0x1e], 1
mov edx, dword [ebp - 0xd0]
mov byte [edx + 0x1f], 0
jmp case.0x42f854.17
mov esi, dword [ebp - 0xd8]
mov eax, dword [edi + 4]
mov ecx, dword [esi + 0x44]
mov eax, dword [ecx + eax*4]
push esi
call fcn.0042ab90
mov edx, dword [edi + 4]
mov eax, dword [esi + 0x44]
add esp, 4
mov dword [eax + edx*4], 0
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edi + 4]
mov eax, dword [edx + 0x44]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xc8], eax
cmp dword [eax], 0
je 0x42f86f
movzx ecx, byte [edi]
mov dword [ebp - 0xcc], ecx
mov byte [eax + 0x1c], 0
mov ecx, dword [ebp - 0xc8]
cmp byte [ecx + 0x1e], 0
je 0x432501
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea esi, [eax + edx*8]
call fcn.0042f520
mov ecx, esi
call fcn.004285d0
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], edx
mov byte [ecx + 0x19], 0
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x432490
test al, 8
jne 0x432376
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
xor ebx, ebx
cmp dword [ebp - 0xa0], ebx
jne 0x432440
mov eax, 0x80000000
cmp dword [ebp - 0x9c], eax
jne 0x432440
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x128], ebx
fild qword [ebp - 0x128]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
je 0x4323c1
fldz
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x432440
fldz
mov dword [ebp - 0xd0], 1
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
jne 0x4323f5
cmp dword [ebp - 0xcc], 0x30
jl 0x432431
mov edx, dword [ebp - 0xc8]
mov esi, dword [edx]
lea edi, [ebp - 0xd0]
call fcn.004210a0
jmp 0x432411
cmp dword [ebp - 0xcc], 0x2f
jg 0x432431
mov eax, dword [ebp - 0xc8]
mov esi, dword [eax]
lea edi, [ebp - 0xd0]
call fcn.004210d0
mov dword [ebp - 0xd4], eax
cmp eax, ebx
jne 0x43517a
cmp dword [ebp - 0xd0], ebx
je case.0x42f854.17
mov edi, dword [ebp - 0xf0]
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [ebp - 0xcc]
cmp eax, 0x2e
je 0x432471
cmp eax, 0x30
je 0x432471
fild qword [ebp - 0xa0]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
jne 0x432492
or eax, 0xffffffff
add dword [ebp - 0xa0], eax
adc dword [ebp - 0x9c], eax
jmp 0x432492
fild qword [ebp - 0xa0]
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x432492
add dword [ebp - 0xa0], 1
adc dword [ebp - 0x9c], ebx
jmp 0x432492
xor ebx, ebx
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0xa0]
lea ecx, [ebp - 0xd0]
push ecx
mov ecx, dword [ebp - 0xc8]
push ebx
push edx
mov edx, dword [ecx]
push eax
push ebx
push edx
call fcn.00421110
add esp, 0x18
mov dword [ebp - 0xd4], eax
cmp eax, ebx
jne 0x43517a
cmp dword [ebp - 0xd0], ebx
jne 0x432593
mov eax, dword [ebp - 0xc8]
mov byte [eax + 0x19], 1
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xc8]
mov dword [edx + 0x40], ecx
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0xc8]
mov dword [ecx + 0x44], eax
jmp 0x432593
mov edx, dword [edi + 0x10]
mov dword [ebp - 0xa8], edx
mov eax, dword [ecx + 8]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xcc]
and eax, 1
add eax, eax
add eax, eax
add eax, eax
mov word [ebp - 0xbc], dx
mov word [ebp - 0xba], ax
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea eax, [eax + edx*8]
mov edx, 0x4000
mov dword [ebp - 0xb0], eax
test word [eax + 0x1c], dx
je 0x43255b
call fcn.004282f0
mov ecx, dword [ebp - 0xc8]
lea eax, [ebp - 0xd0]
push eax
mov eax, dword [ecx]
push 0
push 0
push 0
lea edx, [ebp - 0xc0]
push edx
push eax
call fcn.00421110
add esp, 0x18
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov ecx, dword [ebp - 0xc8]
mov byte [ecx + 0x19], al
xor ebx, ebx
mov edx, dword [ebp - 0xc8]
mov byte [edx + 0x1d], 0
mov eax, dword [ebp - 0xc8]
mov dword [eax + 0x50], ebx
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xd0]
cmp ecx, 0x30
jl 0x4325ff
cmp eax, ebx
jl 0x4325cd
jne 0x4325c2
cmp ecx, 0x31
je 0x4325cd
mov dword [ebp - 0xd0], ebx
jmp case.0x42f854.17
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx]
lea ecx, [ebp - 0xd0]
push ecx
push eax
call fcn.004214f0
add esp, 8
mov dword [ebp - 0xd4], eax
cmp eax, ebx
jne 0x43517a
mov ecx, dword [ebp - 0xc8]
mov byte [ecx + 0x19], 0
jmp 0x432653
cmp eax, ebx
jg 0x432623
jne 0x43260a
cmp ecx, 0x2e
je 0x432623
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx]
xor ecx, ecx
cmp byte [eax + 0x53], 1
setne cl
mov dword [ebp - 0xd0], ecx
jmp 0x432653
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax]
lea edx, [ebp - 0xd0]
push edx
push ecx
call fcn.00421690
add esp, 8
mov dword [ebp - 0xd4], eax
cmp eax, ebx
jne 0x43517a
mov edx, dword [ebp - 0xc8]
mov byte [edx + 0x19], 0
cmp dword [ebp - 0xd0], ebx
je case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xd8]
mov eax, dword [edi + 4]
mov edx, dword [ecx + 0x44]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0xd0], eax
cmp dword [eax], 0
je case.0x42f854.17
mov ecx, dword [ebp - 0xe0]
mov byte [eax + 0x1c], 0
mov edi, dword [edi + 8]
lea eax, [edi + edi*4]
lea ecx, [ecx + eax*8]
call fcn.004285d0
mov ecx, dword [ebp - 0xd0]
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 0xd0]
mov dword [eax + 0x3c], edx
mov ecx, dword [ebp - 0xd0]
mov byte [ecx + 0x19], 0
mov edx, dword [ebp - 0xd0]
mov byte [edx + 0x1d], 1
jmp case.0x42f854.17
mov esi, dword [ebp - 0xd8]
mov ecx, dword [esi + 0x44]
mov ebx, dword [ebp - 0xe0]
xor edx, edx
mov dword [ebp - 0xd0], edx
mov eax, dword [edi + 4]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xcc], eax
mov ecx, dword [edi + 0xc]
lea ecx, [ecx + ecx*4]
lea ecx, [ebx + ecx*8]
mov dword [ebp - 0xf8], ecx
cmp dword [eax], edx
je 0x432819
cmp dword [edi + 0x10], edx
jle 0x432742
mov edx, dword [eax + 8]
mov dword [ebp - 0xb8], edx
mov dx, word [edi + 0x10]
mov word [ebp - 0xb4], dx
mov dword [ebp - 0xa8], ecx
mov ecx, 0x10
lea edx, [ebp - 0xb8]
mov word [ebp - 0xb2], cx
mov dword [ebp - 0xc0], edx
jmp 0x4327a4
mov edi, dword [eax + 8]
push 0x97
lea ebx, [ebp - 0xc4]
lea edx, [ebp - 0xa0]
call fcn.0042c650
add esp, 4
mov dword [ebp - 0xc0], eax
test eax, eax
je 0x42fd05
push eax
mov eax, dword [ebp - 0xf8]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0xcc]
push ecx
mov ecx, dword [eax + 8]
push edx
push ecx
call fcn.0042c6a0
mov eax, dword [ebp - 0xc0]
mov edi, dword [ebp - 0xf0]
add esp, 0x10
or word [eax + 6], 0x10
mov eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xc0]
lea edx, [ebp - 0xc8]
push edx
mov edx, dword [eax]
push 0
push 0
push 0
push ecx
push edx
call fcn.00421110
add esp, 0x18
cmp dword [edi + 0x10], 0
mov esi, eax
mov dword [ebp - 0xd4], esi
jne 0x4327e7
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xdc]
push eax
push ecx
call fcn.0040cea0
add esp, 8
test esi, esi
jne case.0x42f854.17
mov eax, dword [ebp - 0xcc]
xor edx, edx
cmp dword [ebp - 0xc8], edx
sete dl
mov dword [ebp - 0xd0], edx
mov byte [eax + 0x1d], 0
mov ecx, dword [ebp - 0xcc]
mov dword [ecx + 0x50], esi
mov edx, dword [ebp - 0xd0]
cmp byte [edi], 0x34
jne 0x432835
test edx, edx
je case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
test edx, edx
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0xe0]
lea edx, [eax + eax*4]
mov eax, dword [edi + 0x10]
lea esi, [ecx + edx*8]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xc0], ecx
mov edx, dword [edi + 4]
mov ecx, dword [eax + 0x44]
mov eax, dword [ecx + edx*4]
mov dword [ebp - 0xcc], eax
xor ecx, ecx
mov dword [eax + 0x4c], ecx
mov edx, dword [ebp - 0xcc]
mov dword [edx + 0x50], ecx
mov edx, dword [ebp - 0xcc]
mov eax, dword [edx]
mov dword [ebp - 0xc8], eax
mov ecx, dword [edx + 8]
mov cx, word [ecx + 6]
xor ebx, ebx
xor eax, eax
cmp bx, cx
mov ebx, dword [ebp - 0xc0]
mov word [ebp - 0xc4], cx
mov word [ebp - 0xd0], ax
jae 0x4328e5
nop
movzx edx, ax
lea edx, [edx + edx*4]
test byte [ebx + edx*8 + 0x1c], 1
jne 0x43299c
inc ax
mov word [ebp - 0xd0], ax
cmp ax, cx
jb 0x4328c0
mov edx, dword [ebp - 0xcc]
cmp dword [ebp - 0xc8], 0
je case.0x42f854.17
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0xc4]
inc ecx
mov edx, 0x20
mov dword [ebp - 0xb8], eax
mov word [ebp - 0xb4], cx
mov word [ebp - 0xb2], dx
mov dword [ebp - 0xa8], ebx
call fcn.00428730
mov edx, dword [ebp - 0xcc]
mov eax, dword [esi + 0x10]
add edx, 0x4c
push edx
push 0
mov dword [ebp - 0xa0], eax
mov ecx, dword [esi + 0x14]
push 0
push 0
lea eax, [ebp - 0xb8]
mov dword [ebp - 0x9c], ecx
mov ecx, dword [ebp - 0xc8]
push eax
push ecx
call fcn.00421110
add esp, 0x18
test byte [ebp - 0xb2], 0x20
mov dword [ebp - 0xd4], eax
jne 0x42f86f
mov eax, dword [ebp - 0xb0]
cmp eax, dword [ebp - 0xa0]
jne 0x43298b
mov edx, dword [ebp - 0xac]
cmp edx, dword [ebp - 0x9c]
je 0x42f86f
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0xac]
mov dword [esi + 0x14], eax
jmp case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
mov dword [ebp - 0xc8], 0
jmp case.0x42f854.17
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xe0]
lea ecx, [eax + eax*4]
mov eax, dword [edi + 4]
lea esi, [edx + ecx*8]
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ecx + 0x44]
mov ecx, dword [edx + eax*4]
mov dword [ebp - 0xd0], ecx
mov eax, dword [ecx]
xor edx, edx
mov dword [ebp - 0xcc], eax
cmp eax, edx
je 0x432a8d
mov dword [ebp - 0xc8], edx
mov ecx, dword [esi + 0x10]
lea ebx, [ebp - 0xc8]
push ebx
push 0
mov dword [ebp - 0xc0], ecx
mov edx, dword [esi + 0x14]
push edx
push ecx
push 0
push eax
mov dword [ebp - 0xbc], edx
call fcn.00421110
mov ecx, dword [ebp - 0xd0]
mov dword [ebp - 0xd4], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x40], eax
mov edx, dword [esi + 0x14]
mov eax, dword [ebp - 0xd0]
mov dword [eax + 0x44], edx
mov edx, dword [ebp - 0xd0]
add esp, 0x18
cmp dword [ebp - 0xc8], 0
sete cl
mov byte [edx + 0x19], cl
mov eax, dword [ebp - 0xd0]
mov byte [eax + 0x1c], 0
mov ecx, dword [ebp - 0xd0]
mov dword [ecx + 0x50], 0
mov edx, dword [ebp - 0xd0]
mov byte [edx + 0x1d], 0
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x432a7f
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
mov ecx, dword [ebp - 0xd0]
mov dword [ecx + 0x4c], eax
jmp case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
mov dword [ecx + 0x4c], edx
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edx + 0x44]
mov eax, dword [ecx + eax*4]
mov esi, dword [eax + 0x30]
mov ecx, dword [ebp - 0xe8]
mov dword [ecx + 0x10], esi
mov eax, dword [eax + 0x34]
mov dword [ecx + 0x14], eax
mov ecx, dword [edi + 4]
mov edx, dword [edx + 0x44]
mov eax, dword [edx + ecx*4]
add dword [eax + 0x30], 1
adc dword [eax + 0x34], 0
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov edx, dword [edx + 0x44]
xor eax, eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc4], eax
mov ecx, dword [edi + 4]
mov edx, dword [edx + ecx*4]
mov dword [ebp - 0xc8], edx
mov ecx, dword [edx]
cmp ecx, eax
je 0x432dea
cmp byte [edx + 0x1b], al
jne 0x432cc0
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0xd0], eax
mov ecx, dword [ecx + 0x1c]
mov esi, eax
or esi, ecx
mov dword [ebp - 0xcc], ecx
jne 0x432bc0
mov esi, dword [edx]
lea edi, [ebp - 0xc4]
call fcn.004210d0
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
cmp dword [ebp - 0xc4], eax
je 0x432b5a
mov eax, 1
xor ecx, ecx
jmp 0x432bae
mov ecx, dword [ebp - 0xc8]
mov esi, dword [ecx]
lea eax, [ebp - 0xd0]
push eax
call fcn.004204e0
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
add esp, 4
cmp eax, 0xffffffff
jne 0x432ba8
cmp ecx, 0x7fffffff
jne 0x432ba8
mov edx, dword [ebp - 0xc8]
mov byte [edx + 0x1b], 1
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xd0]
jmp 0x432bba
add eax, 1
adc ecx, 0
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
mov edi, dword [ebp - 0xf0]
mov edx, dword [edi + 0xc]
test edx, edx
je 0x432c93
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0xa8]
test ecx, ecx
je 0x432c0d
mov dword [ebp - 0xb8], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x432bff
jmp 0x432bf0
mov ecx, eax
mov dword [ebp - 0xb8], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x432bf0
mov edi, dword [edi + 0xc]
mov eax, dword [ecx + 0x10]
lea edx, [edi + edi*4]
lea esi, [eax + edx*8]
jmp 0x432c19
lea ecx, [edx + edx*4]
mov edx, dword [ebp - 0xe0]
lea esi, [edx + ecx*8]
mov dword [ebp - 0xbc], esi
call fcn.00428730
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx + 0x10]
mov ecx, dword [edx + 0x14]
cmp eax, 0xffffffff
jne 0x432c41
cmp ecx, 0x7fffffff
je 0x435170
mov esi, dword [ebp - 0xc8]
cmp byte [esi + 0x1b], 0
jne 0x435170
add eax, 1
adc ecx, 0
cmp dword [ebp - 0xcc], ecx
jg 0x432c75
jl 0x432c69
cmp dword [ebp - 0xd0], eax
jae 0x432c75
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], ecx
mov eax, dword [ebp - 0xd0]
mov dword [edx + 0x10], eax
mov ecx, dword [ebp - 0xcc]
mov dword [edx + 0x14], ecx
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xd0]
cmp ecx, 0x7fffffff
jg 0x432caa
jl 0x432ca2
cmp eax, 0xffffffff
jae 0x432caa
add eax, 1
adc ecx, 0
jmp 0x432cae
xor eax, eax
xor ecx, ecx
mov edx, dword [ebp - 0xc8]
mov esi, dword [edx]
push ecx
push eax
call fcn.00420390
add esp, 8
mov edx, dword [ebp - 0xc8]
cmp byte [edx + 0x1b], 0
je 0x432dc9
mov eax, dword [ebp - 0xfc]
mov ecx, dword [ebp - 0x100]
and eax, 0x3fffffff
add ecx, 1
lea esi, [ebp - 0xc4]
push esi
adc eax, 0
push 0
push eax
push ecx
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc0], 0
mov eax, dword [edx]
push 0
push eax
call fcn.00421110
add esp, 0x18
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x432dc9
mov ecx, dword [ebp - 0xc4]
test ecx, ecx
jne 0x432db8
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp eax, 0x64
jge 0x432db8
lea ecx, [ebp - 0xd0]
push ecx
push 8
call fcn.0040e770
mov eax, dword [ebp - 0xd0]
add esp, 8
cmp dword [ebp - 0xc0], 5
jge 0x432d6c
and eax, 0xffffff
xor ecx, ecx
jmp 0x432d78
mov ecx, dword [ebp - 0xcc]
and ecx, 0x3fffffff
add eax, 1
lea edx, [ebp - 0xc4]
push edx
adc ecx, 0
push 0
push ecx
push eax
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], ecx
mov ecx, dword [eax]
push 0
push ecx
call fcn.00421110
add esp, 0x18
mov dword [ebp - 0xd4], eax
test eax, eax
je 0x432d23
jmp 0x432dc9
cmp dword [ebp - 0xd4], 0
jne 0x432dc9
test ecx, ecx
je 0x435170
mov edx, dword [ebp - 0xc8]
mov byte [edx + 0x19], 0
mov eax, dword [ebp - 0xc8]
mov byte [eax + 0x1d], 0
mov ecx, dword [ebp - 0xc8]
mov dword [ecx + 0x50], 0
mov eax, dword [ebp - 0xe8]
mov edx, dword [ebp - 0xd0]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xcc]
mov dword [eax + 0x14], ecx
jmp case.0x42f854.17
mov eax, dword [edi + 8]
mov ecx, dword [ebp - 0xe0]
mov ebx, dword [ebp - 0xd8]
lea edx, [eax + eax*4]
lea esi, [ecx + edx*8]
mov edx, dword [ebx + 0x44]
mov dword [ebp - 0xd0], esi
mov eax, dword [edi + 4]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0xc0], eax
cmp byte [edi], 0x39
mov eax, dword [edi + 0xc]
jne 0x432e53
lea edx, [eax + eax*4]
lea ecx, [ecx + edx*8]
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0xc8], eax
mov edx, dword [ecx + 0x14]
jmp 0x432e5a
cdq
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], edx
test byte [edi + 3], 1
je 0x432e69
inc dword [ebx + 0x6c]
test byte [edi + 3], 2
je 0x432e93
mov ecx, dword [ebp - 0xdc]
mov dword [ecx + 0x30], eax
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0xc4]
mov dword [ecx + 0x34], eax
mov esi, dword [ebp - 0xd0]
mov dword [ebp - 0xfc], edx
xor eax, eax
test byte [esi + 0x1c], 1
je 0x432ead
mov dword [esi + 4], eax
mov ecx, dword [ebp - 0xd0]
mov dword [ecx + 0x18], eax
mov esi, dword [ebp - 0xd0]
test byte [edi + 3], 0x10
je 0x432ec4
mov edx, dword [ebp - 0xc0]
mov ecx, dword [edx + 0x4c]
mov dword [ebp - 0xb8], ecx
jmp 0x432eca
mov dword [ebp - 0xb8], eax
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x432ed8
mov eax, dword [esi + 0x10]
mov ecx, dword [ebp - 0xc0]
mov dword [ebp - 0xbc], eax
mov esi, dword [ecx]
push 0
push 0
call fcn.00420390
movzx eax, byte [edi + 3]
mov edx, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xbc]
push edx
and eax, 8
push eax
mov eax, dword [ebp - 0xd0]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 4]
push ecx
mov ecx, dword [ebp - 0xc4]
push edx
mov edx, dword [ebp - 0xc8]
push eax
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax]
push ecx
push edx
push 0
call fcn.00424470
mov ecx, dword [ebp - 0xc0]
mov byte [ecx + 0x19], 0
mov edx, dword [ebp - 0xc0]
mov byte [edx + 0x1d], 0
mov ecx, dword [ebp - 0xc0]
add esp, 0x28
mov dword [ebp - 0xd4], eax
mov dword [ecx + 0x50], 0
test eax, eax
jne case.0x42f854.17
mov edx, dword [ebp - 0xdc]
cmp dword [edx + 0xbc], eax
je case.0x42f854.17
cmp dword [edi + 0x10], eax
je case.0x42f854.17
mov eax, dword [ebp - 0xc0]
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0xdc]
mov eax, dword [ecx + 8]
add edx, edx
mov edx, dword [eax + edx*8]
mov dword [ebp - 0xb4], edx
mov esi, dword [edi + 0x10]
mov dword [ebp - 0xb0], esi
mov al, byte [edi + 3]
mov edi, dword [ebp - 0xc4]
and al, 4
movzx eax, al
push edi
mov edi, dword [ebp - 0xc8]
neg eax
sbb eax, eax
push edi
and eax, 5
add eax, 0x12
push esi
push edx
mov dword [ebp - 0xac], eax
mov edx, dword [ecx + 0xb8]
push eax
mov eax, dword [ecx + 0xbc]
push edx
call eax
add esp, 0x18
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov edx, dword [edx + 0x44]
xor eax, eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov ecx, dword [edi + 4]
mov esi, dword [edx + ecx*4]
mov ecx, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], esi
cmp dword [ecx + 0xbc], eax
je 0x43302b
cmp dword [edi + 0x10], eax
je 0x43302b
mov edx, dword [esi + 0x40]
mov dword [ebp - 0xd0], edx
mov eax, dword [esi + 0x44]
mov dword [ebp - 0xcc], eax
call fcn.0042c1c0
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov ecx, dword [ebp - 0xc8]
mov esi, dword [ecx]
push eax
push eax
call fcn.00420390
mov edx, dword [ebp - 0xc8]
mov esi, dword [edx]
add esp, 8
call fcn.004246a0
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0xd4], eax
mov dword [ecx + 0x50], 0
test eax, eax
jne 0x4330ba
mov edx, dword [ebp - 0xdc]
mov ecx, dword [edx + 0xbc]
test ecx, ecx
je 0x4330ba
mov eax, dword [edi + 0x10]
test eax, eax
je 0x4330ba
mov esi, dword [ebp - 0xcc]
push esi
mov esi, dword [ebp - 0xd0]
push esi
mov esi, dword [edx + 8]
mov edx, dword [edx + 0xb8]
push eax
mov eax, dword [ebp - 0xc8]
mov eax, dword [eax + 0xc]
add eax, eax
mov eax, dword [esi + eax*8]
push eax
push 9
push edx
call ecx
add esp, 0x18
test byte [edi + 8], 1
je case.0x42f854.17
mov eax, dword [ebp - 0xd8]
inc dword [eax + 0x6c]
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov eax, dword [edx + 0x6c]
mov ecx, dword [ebp - 0xdc]
add dword [ecx + 0x40], eax
mov dword [ecx + 0x3c], eax
mov dword [edx + 0x6c], 0
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ecx + 0x44]
mov eax, dword [edi + 4]
mov eax, dword [edx + eax*4]
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xd0], eax
mov ecx, dword [edi + 0xc]
lea ecx, [ecx + ecx*4]
lea edx, [edx + ecx*8]
lea ecx, [ebp - 0xcc]
push ecx
call fcn.004371a0
add esp, 4
cmp dword [ebp - 0xcc], 0
mov dword [ebp - 0xd4], eax
je case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 8]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ecx, [eax + edx*8]
mov edx, dword [edi + 4]
mov eax, dword [ebp - 0xd8]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xd0], eax
call fcn.00437120
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov eax, dword [edi + 8]
mov edx, dword [ebp - 0xe0]
lea ecx, [eax + eax*4]
mov eax, dword [edi + 4]
lea ebx, [edx + ecx*8]
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ecx + 0x44]
mov esi, dword [edx + eax*4]
mov dword [ebp - 0xd0], esi
mov eax, dword [esi]
mov dword [ebp - 0xe8], ebx
mov dword [ebp - 0xcc], eax
call fcn.0042c1c0
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov ecx, dword [ebp - 0xd0]
mov esi, dword [ebp - 0xcc]
cmp byte [ecx + 0x1f], al
je 0x433217
lea edx, [ebp - 0xc0]
push edx
call fcn.004204e0
mov eax, dword [ebp - 0xdc]
mov eax, dword [eax + 0x48]
cdq
add esp, 4
cmp dword [ebp - 0xbc], edx
jg 0x42fada
mov ecx, dword [ebp - 0xc0]
jl 0x43320d
cmp ecx, eax
ja 0x42fada
mov eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x43323b
lea edx, [ebp - 0xc8]
push edx
call fcn.00420560
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xdc]
add esp, 4
cmp eax, dword [ecx + 0x48]
ja 0x42fada
push 0
mov edi, ebx
call fcn.00428170
add esp, 4
test eax, eax
jne 0x42fcff
mov ax, word [ebx + 0x1c]
mov edx, dword [ebp - 0xc8]
mov ecx, 0xbf10
and ax, cx
or ax, 0x10
mov dword [ebx + 0x18], edx
mov word [ebx + 0x1c], ax
mov edx, dword [ebp - 0xd0]
cmp byte [edx + 0x1f], 0
mov ecx, dword [ebp - 0xcc]
je 0x4332a5
mov eax, dword [ebx + 4]
push 0
push eax
mov eax, dword [ebp - 0xc8]
push eax
push 0
push ecx
call fcn.004208c0
add esp, 0x14
mov dword [ebp - 0xd4], eax
mov byte [ebx + 0x1f], 1
jmp case.0x42f854.17
mov edx, dword [ebx + 4]
mov eax, dword [ebp - 0xc8]
push edx
push eax
push 0
push ecx
call fcn.00420be0
add esp, 0x10
mov dword [ebp - 0xd4], eax
mov byte [ebx + 0x1f], 1
jmp case.0x42f854.17
mov edx, dword [edi + 4]
mov edi, dword [ebp - 0xd8]
mov eax, dword [edi + 0x44]
mov esi, dword [eax + edx*4]
mov dword [ebp - 0xd0], esi
cmp byte [esi + 0x1c], 0
je 0x4332f9
mov edx, dword [ebp - 0xe8]
mov ecx, 1
mov word [edx + 0x1c], cx
jmp case.0x42f854.17
cmp byte [esi + 0x1d], 0
je 0x43332e
mov eax, dword [esi + 0x38]
mov dword [ebp - 0xc8], eax
mov ecx, dword [esi + 0x3c]
mov eax, dword [ebp - 0xe8]
mov edx, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], ecx
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xc4]
mov dword [eax + 0x14], ecx
jmp case.0x42f854.17
cmp dword [esi + 0x24], 0
je 0x43338a
mov edx, dword [esi + 0x24]
mov eax, dword [edx]
mov dword [ebp - 0xc0], eax
mov eax, dword [eax]
mov dword [ebp - 0xbc], eax
mov edx, dword [esi + 0x24]
mov eax, dword [eax + 0x30]
lea ecx, [ebp - 0xc8]
push ecx
push edx
call eax
mov ecx, dword [ebp - 0xc0]
push ecx
push edi
mov dword [ebp - 0xd4], eax
call fcn.0042f650
mov eax, dword [ebp - 0xe8]
mov edx, dword [ebp - 0xc8]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xc4]
add esp, 0x10
mov dword [eax + 0x14], ecx
jmp case.0x42f854.17
call fcn.0042c1c0
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov eax, dword [ebp - 0xd0]
cmp byte [eax + 0x19], 0
je 0x4333d2
mov edx, dword [eax + 0x40]
mov dword [ebp - 0xc8], edx
mov eax, dword [eax + 0x44]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xe8]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xc4]
mov dword [eax + 0x14], ecx
jmp case.0x42f854.17
mov esi, dword [eax]
lea ecx, [ebp - 0xc8]
push ecx
call fcn.004204e0
mov edx, dword [ebp - 0xc8]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xe8]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0xc4]
add esp, 4
mov dword [eax + 0x14], ecx
jmp case.0x42f854.17
mov edx, dword [edi + 4]
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0x44]
mov eax, dword [ecx + edx*4]
mov dword [ebp - 0xd0], eax
mov byte [eax + 0x1c], 1
mov edx, dword [ebp - 0xd0]
mov byte [edx + 0x19], 0
mov eax, dword [ebp - 0xd0]
mov esi, dword [eax]
test esi, esi
je case.0x42f854.17
call fcn.0041c8f0
jmp case.0x42f854.17
mov ecx, dword [edi + 4]
mov edx, dword [ebp - 0xd8]
mov eax, dword [edx + 0x44]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xd0], eax
mov esi, dword [eax]
mov dword [ebp - 0xcc], esi
test esi, esi
jne 0x433470
mov dword [ebp - 0xc8], 1
jmp 0x43348d
lea edi, [ebp - 0xc8]
call fcn.004210d0
mov edi, dword [ebp - 0xf0]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
mov cl, byte [ebp - 0xc8]
mov byte [eax + 0x1c], cl
mov edx, dword [ebp - 0xd0]
mov byte [edx + 0x1d], 0
mov eax, dword [ebp - 0xd0]
mov byte [eax + 0x19], 0
mov ecx, dword [ebp - 0xd0]
mov dword [ecx + 0x50], 0
mov edi, dword [edi + 8]
test edi, edi
jle case.0x42f854.17
cmp dword [ebp - 0xc8], 0
je case.0x42f854.17
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd8]
inc dword [eax + 0x80]
jmp 0x4334ef
mov eax, dword [ebp - 0xd8]
mov edx, dword [edi + 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xc8], 1
cmp dword [eax + 0x48], 0
je 0x43352b
mov ecx, dword [ebp - 0xdc]
push eax
lea edx, [ebp - 0xc8]
call fcn.00436da0
add esp, 4
mov dword [ebp - 0xd4], eax
jmp 0x433580
mov eax, dword [eax]
lea edi, [ebp - 0xc8]
mov esi, eax
mov dword [ebp - 0xcc], eax
call fcn.004210a0
cmp dword [ebp - 0xc8], 0
mov edx, dword [ebp - 0xd0]
mov edi, dword [ebp - 0xf0]
sete cl
mov byte [edx + 0x1a], cl
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
mov byte [eax + 0x1d], 0
mov ecx, dword [ebp - 0xd0]
mov dword [ecx + 0x50], 0
mov edx, dword [ebp - 0xd0]
mov byte [edx + 0x19], 0
mov al, byte [ebp - 0xc8]
mov ecx, dword [ebp - 0xd0]
mov byte [ecx + 0x1c], al
cmp dword [ebp - 0xc8], 0
je case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx + 0xe0]
test eax, eax
jne 0x4351cb
mov esi, dword [ebp - 0xd8]
mov ecx, dword [edi + 4]
mov edx, dword [esi + 0x44]
mov eax, dword [edx + ecx*4]
mov dword [ebp - 0xd0], eax
test eax, eax
je case.0x42f854.17
cmp dword [eax + 0x48], 0
je 0x4335f7
lea ecx, [ebp - 0xcc]
push ecx
mov ecx, dword [ebp - 0xdc]
push eax
call fcn.00437070
jmp 0x433610
mov dword [ebp - 0xcc], 1
mov eax, dword [eax]
mov ecx, dword [edi + 0x10]
lea edx, [ebp - 0xcc]
push edx
push eax
call ecx
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0xd4], eax
mov al, byte [ebp - 0xcc]
mov byte [edx + 0x1c], al
mov ecx, dword [ebp - 0xd0]
add esp, 8
mov dword [ecx + 0x50], 0
cmp dword [ebp - 0xcc], 0
jne 0x43365a
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0xe4], eax
mov al, byte [edi + 3]
test al, al
je 0x43365a
movzx edx, al
inc dword [esi + edx*4 + 0x78]
lea eax, [esi + edx*4 + 0x78]
mov eax, dword [ebp - 0xd0]
mov byte [eax + 0x19], 0
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edi + 4]
mov eax, dword [edx + 0x44]
mov ecx, dword [eax + ecx*4]
mov dword [ebp - 0xd0], ecx
mov eax, dword [edi + 8]
mov esi, dword [ecx]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ebx, [eax + edx*8]
mov dword [ebp - 0xcc], esi
test esi, esi
je case.0x42f854.17
mov edx, 0x4000
test word [ebx + 0x1c], dx
je 0x4336c9
mov eax, ebx
call fcn.004282f0
mov dword [ebp - 0xd4], eax
test eax, eax
jne case.0x42f854.17
mov esi, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xd0]
cmp dword [ecx + 0x48], 0
je 0x4336ea
mov eax, dword [ebp - 0xdc]
push ecx
push eax
call fcn.00436c60
add esp, 8
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov eax, dword [ebx + 0x18]
mov dword [ebp - 0xc8], eax
mov ebx, dword [ebx + 4]
mov dword [ebp - 0xc4], ebx
test byte [edi + 3], 0x10
je 0x433707
mov ecx, dword [ecx + 0x4c]
jmp 0x433709
xor ecx, ecx
push ecx
mov ecx, dword [edi + 0xc]
push ecx
push 0
push 0
cdq
push 0x49a1a2
push edx
push eax
push ebx
mov eax, esi
call fcn.00424470
mov edx, dword [ebp - 0xd0]
add esp, 0x20
mov dword [ebp - 0xd4], eax
mov dword [edx + 0x50], 0
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xd8]
mov eax, dword [edi + 4]
mov edx, dword [ecx + 0x44]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0xd0], eax
mov ecx, dword [eax]
mov dword [ebp - 0xcc], ecx
test ecx, ecx
je case.0x42f854.17
mov eax, dword [eax + 8]
mov dword [ebp - 0xc0], eax
mov dx, word [edi + 0xc]
xor eax, eax
mov word [ebp - 0xbc], dx
mov word [ebp - 0xba], ax
mov edi, dword [edi + 8]
mov eax, dword [ebp - 0xe0]
lea edx, [edi + edi*4]
lea edx, [eax + edx*8]
lea eax, [ebp - 0xc8]
push eax
push 0
push 0
mov dword [ebp - 0xb0], edx
push 0
lea edx, [ebp - 0xc0]
push edx
push ecx
call fcn.00421110
add esp, 0x18
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x4337d4
cmp dword [ebp - 0xc8], eax
jne 0x4337d4
mov esi, dword [ebp - 0xcc]
call fcn.004246a0
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
mov dword [eax + 0x50], 0
jmp case.0x42f854.17
mov ecx, dword [edi + 4]
mov edx, dword [ebp - 0xd8]
mov eax, dword [edx + 0x44]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xcc], eax
mov ecx, dword [eax]
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xd0], ecx
mov edx, 1
mov word [eax + 0x1c], dx
cmp dword [ebp - 0xd0], 0
je case.0x42f854.17
mov esi, dword [ebp - 0xcc]
call fcn.0042c1c0
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov ecx, dword [ebp - 0xcc]
cmp byte [ecx + 0x1c], al
jne case.0x42f854.17
mov eax, dword [ebp - 0xd0]
lea edx, [ebp - 0xc8]
push edx
call fcn.0042c9e0
add esp, 4
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x43517a
mov ecx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xe8]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 0xc4]
mov ecx, 4
mov dword [eax + 0x14], edx
mov word [eax + 0x1c], cx
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd8]
mov edx, dword [edi + 4]
mov ecx, dword [eax + 0x44]
mov eax, dword [ecx + edx*4]
mov dword [ebp - 0xd0], eax
cmp dword [eax], 0
je case.0x42f854.17
mov edx, dword [eax + 8]
mov dword [ebp - 0xc8], edx
mov cx, word [edi + 0x10]
mov word [ebp - 0xc4], cx
cmp byte [edi + 3], 0
je 0x4338d6
mov edx, 0xc
mov word [ebp - 0xc2], dx
jmp 0x4338e2
mov ecx, 4
mov word [ebp - 0xc2], cx
mov edi, dword [edi + 0xc]
mov ecx, dword [ebp - 0xe0]
lea edx, [edi + edi*4]
lea edx, [ecx + edx*8]
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xb8], edx
push ecx
lea edx, [ebp - 0xc8]
push edx
mov edi, eax
call fcn.0042cb50
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xf0]
add esp, 8
cmp byte [eax], 0x64
jne 0x43392a
neg ecx
jmp 0x43392b
inc ecx
mov dword [ebp - 0xcc], ecx
test ecx, ecx
jle case.0x42f854.17
mov eax, dword [eax + 8]
dec eax
mov dword [ebp - 0xe4], eax
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xdc]
mov dword [ebp - 0xcc], 0
mov eax, dword [ecx + 0x88]
mov dword [ebp - 0xc8], eax
mov edx, 1
test eax, eax
je 0x433998
lea ecx, [ecx]
cmp dword [eax + 0x34], 0xbdf20da3
jne 0x43398b
cmp byte [eax + 0x66], 2
jae 0x43398b
cmp dword [eax + 0x58], 0
jl 0x43398b
add dword [ebp - 0xcc], edx
mov eax, dword [eax + 0x40]
mov dword [ebp - 0xc8], eax
test eax, eax
jne 0x433970
mov esi, dword [ebp - 0xe8]
mov eax, edx
mov word [esi + 0x1c], ax
cmp dword [ebp - 0xcc], edx
jle 0x4339c5
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0xd4], 6
mov byte [ecx + 0x60], 2
jmp case.0x42f854.17
mov eax, dword [edi + 0xc]
mov dword [ebp - 0xc4], eax
mov ecx, dword [ecx + 8]
lea edx, [ebp - 0xd0]
push edx
mov edx, dword [edi + 4]
add eax, eax
mov eax, dword [ecx + eax*8 + 4]
push edx
call fcn.004251e0
mov ecx, eax
mov edx, 4
mov word [esi + 0x1c], dx
mov eax, dword [ebp - 0xd0]
cdq
add esp, 8
mov dword [ebp - 0xd4], ecx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
test ecx, ecx
jne case.0x42f854.17
mov esi, dword [ebp - 0xd0]
test esi, esi
je case.0x42f854.17
mov edi, dword [edi + 4]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xdc]
call fcn.00444af0
mov al, byte [ebp - 0xc4]
inc al
mov byte [ebp - 0xf1], al
jmp case.0x42f854.17
mov dword [ebp - 0xd0], 0
mov eax, dword [edi + 0xc]
mov edx, dword [edi + 4]
neg eax
sbb eax, eax
lea ecx, [ebp - 0xd0]
and eax, ecx
mov ecx, dword [ebp - 0xdc]
push eax
mov eax, dword [edi + 8]
push edx
mov edx, dword [ecx + 8]
add eax, eax
mov eax, dword [edx + eax*8 + 4]
call fcn.00424dd0
add esp, 8
cmp dword [edi + 0xc], 0
mov dword [ebp - 0xd4], eax
je case.0x42f854.17
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xd8]
add dword [ecx + 0x6c], eax
mov edi, dword [edi + 0xc]
test edi, edi
jle case.0x42f854.17
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
lea ecx, [edx + ecx*8 + 0x10]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xdc]
mov dword [ebp - 0xd0], 0
mov eax, dword [edi + 4]
shl eax, 4
add eax, dword [ecx + 8]
xor ecx, ecx
mov dword [ebp - 0xc8], eax
cmp byte [edi], 0x69
lea edx, [ebp - 0xd0]
setne cl
inc ecx
push ecx
mov dword [ebp - 0xcc], ecx
mov eax, dword [eax + 4]
push edx
call fcn.00424bd0
mov ecx, dword [ebp - 0xe8]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
cdq
add esp, 8
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov dword [ebp - 0xd0], eax
mov ecx, str.sqlite_temp_master
cmp eax, 1
je 0x433b36
mov ecx, str.sqlite_master
mov ebx, dword [ebp - 0xdc]
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xc4], ebx
mov edx, dword [edi + 4]
mov dword [ebp - 0xc0], edx
lea edx, [esi + 0x38]
mov dword [ebp - 0xbc], edx
mov edx, dword [edi + 0x10]
push edx
push ecx
mov ecx, dword [ebx + 8]
add eax, eax
mov edx, dword [ecx + eax*8]
push edx
push str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
push ebx
call fcn.0040e410
add esp, 0x14
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x42fd0b
push 0
lea eax, [ebp - 0xc4]
push eax
mov byte [ebx + 0x7c], 1
mov ecx, dword [ebp - 0xc8]
push fcn.00455c70
push ecx
push ebx
mov dword [ebp - 0xb8], 0
call fcn.00452c90
mov edi, eax
add esp, 0x14
mov dword [ebp - 0xd4], edi
test edi, edi
jne 0x433bd0
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0xd4], edx
mov edi, edx
mov eax, dword [ebp - 0xc8]
push eax
push ebx
call fcn.0040cea0
add esp, 8
mov byte [ebx + 0x7c], 0
cmp edi, 7
je 0x42fd0b
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ebx, dword [ebp - 0xdc]
call fcn.004410a0
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xdc]
mov eax, dword [edi + 4]
push ecx
mov ecx, dword [edi + 0x10]
call fcn.004430f0
add esp, 4
jmp case.0x42f854.17
mov edx, dword [ebp - 0xdc]
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 4]
push edx
call fcn.00442c50
add esp, 4
jmp case.0x42f854.17
mov eax, dword [ebp - 0xdc]
mov ecx, dword [edi + 0x10]
push eax
mov eax, dword [edi + 4]
call fcn.00460f90
add esp, 4
jmp case.0x42f854.17
mov eax, dword [edi + 8]
mov esi, dword [ebp - 0xdc]
lea ecx, [eax*4 + 4]
mov dword [ebp - 0xd0], eax
call fcn.0040d0f0
mov dword [ebp - 0xcc], eax
test eax, eax
je 0x42fcff
mov ecx, dword [edi + 0xc]
mov edx, dword [ebp - 0xe0]
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*8]
mov dword [ebp - 0xbc], ecx
mov ecx, dword [edi + 4]
lea ecx, [ecx + ecx*4]
lea esi, [edx + ecx*8]
xor ecx, ecx
mov dword [ebp - 0xc8], ecx
cmp dword [ebp - 0xd0], ecx
jle 0x433ce5
lea edx, [ecx + ecx*4]
lea ecx, [esi + edx*8]
call fcn.004285d0
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0xcc]
mov dword [edx + ecx*4], eax
mov ecx, dword [ebp - 0xc8]
inc ecx
mov dword [ebp - 0xc8], ecx
cmp ecx, dword [ebp - 0xd0]
jl 0x433cb0
mov eax, dword [ebp - 0xcc]
mov dword [eax + ecx*4], 0
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 0x10]
mov ecx, dword [ebp - 0xcc]
lea eax, [ebp - 0xc4]
push eax
mov eax, dword [ebp - 0xd0]
push edx
movzx edx, byte [edi + 3]
mov edi, dword [ebp - 0xdc]
push eax
mov eax, dword [edi + 8]
add edx, edx
push ecx
mov ecx, dword [eax + edx*8 + 4]
call fcn.004263e0
mov ecx, dword [ebp - 0xcc]
push ecx
push edi
mov dword [ebp - 0xc0], eax
call fcn.0040cea0
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xbc]
cdq
add esp, 0x18
sub dword [ecx + 0x10], eax
sbb dword [ecx + 0x14], edx
call fcn.00428880
cmp dword [ebp - 0xc4], 0
je 0x433d7d
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x42fcff
push 1
push eax
mov eax, fcn.0040ce00
or ecx, 0xffffffff
mov edx, esi
call fcn.00428bf0
add esp, 8
movzx ecx, byte [ebp - 0xec]
mov eax, esi
call fcn.00428150
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov edi, dword [edi + 8]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
test byte [eax + edx*8 + 0x1c], 0x20
lea esi, [eax + edx*8]
lea ecx, [edi + edi*4]
lea ebx, [eax + ecx*8]
jne 0x433dc0
mov edi, esi
call fcn.004289e0
test byte [esi + 0x1c], 0x20
je 0x42fcff
mov edx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x10]
mov edi, dword [esi + 0x10]
push edx
push eax
call fcn.00414930
add esp, 8
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ecx + 0xe0]
test edx, edx
jne 0x4351cb
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 0x20
lea ebx, [ecx + eax*8]
je 0x433e3e
mov eax, dword [ebx + 0x10]
lea esi, [ebp - 0xd0]
call fcn.00414cf0
test eax, eax
je 0x433e3e
mov edx, dword [ebp - 0xcc]
mov edi, dword [edi + 0xc]
mov eax, dword [ebp - 0xd0]
push edx
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
push eax
lea esi, [edx + ecx*8]
call fcn.004288d0
add esp, 8
jmp case.0x42f854.17
mov esi, ebx
call fcn.00428880
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0xd0], eax
test byte [esi + 0x1c], 0x20
lea ebx, [ecx + edx*8]
jne 0x433e98
mov edi, esi
call fcn.004289e0
test byte [esi + 0x1c], 0x20
je 0x42fcff
mov eax, dword [ebp - 0xd0]
mov edi, dword [ebp - 0xf0]
test eax, eax
je 0x433edc
js 0x433ea3
and eax, 0xf
jmp 0x433ea8
mov eax, 0xff
mov ecx, dword [ebx + 0x14]
mov edx, dword [ebx + 0x10]
push ecx
mov ecx, dword [esi + 0x10]
push edx
call fcn.00414d70
add esp, 8
mov dword [ebp - 0xcc], eax
test eax, eax
je 0x433ed4
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd0]
test eax, eax
js case.0x42f854.17
mov eax, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x10]
mov edi, dword [esi + 0x10]
push eax
push ecx
call fcn.00414930
add esp, 8
jmp case.0x42f854.17
mov ecx, dword [edi + 0x10]
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0xb8], ecx
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea edx, [eax + edx*8]
mov dword [ebp - 0xc8], edx
cmp byte [edi + 3], 0
je 0x433f56
mov eax, dword [esi + 0xa8]
mov edi, dword [ecx + 0x10]
mov dword [ebp - 0xb4], edi
mov dword [ebp - 0xbc], eax
test eax, eax
je 0x433f56
lea ecx, [ecx]
cmp dword [eax + 0x20], edi
je case.0x42f854.17
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0xbc], eax
test eax, eax
jne 0x433f40
mov eax, dword [esi + 0xb0]
mov ebx, dword [ebp - 0xdc]
cmp eax, dword [ebx + 0x70]
jl 0x433f88
push str.too_many_levels_of_trigger_recursion
lea edi, [esi + 0x38]
mov eax, ebx
mov dword [ebp - 0xd4], 1
call fcn.0040d2b0
add esp, 4
jmp case.0x42f854.17
test byte [edx + 0x1c], 0x40
jne 0x4340e0
mov eax, dword [ecx + 8]
add eax, dword [ecx + 0xc]
lea edx, [eax + eax*4]
mov dword [ebp - 0xd0], eax
mov eax, dword [ecx + 0xc]
lea edi, [eax + edx*2]
lea edi, [edi*4 + 0x40]
mov eax, ebx
mov dword [ebp - 0xcc], edi
call fcn.0040d0d0
mov dword [ebp - 0xbc], eax
test eax, eax
je 0x42fd05
mov ecx, dword [ebp - 0xc8]
push ecx
call fcn.00428530
mov eax, dword [ebp - 0xc8]
mov edx, 0x40
mov word [eax + 0x1c], dx
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xc8]
mov dword [edx + 0x10], ecx
mov eax, dword [ebp - 0xbc]
mov dword [eax], esi
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xd0]
mov dword [ecx + 0x24], edx
mov eax, dword [ebp - 0xb8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebp - 0xbc]
mov dword [edx + 0x28], ecx
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xe4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov eax, dword [ebp - 0xbc]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0xbc]
mov ecx, dword [esi + 0x18]
mov dword [edx + 0x14], ecx
mov eax, dword [esi + 0x44]
mov ecx, dword [ebp - 0xbc]
mov dword [ecx + 0x18], eax
mov dx, word [esi + 0x32]
mov eax, dword [ebp - 0xbc]
mov word [eax + 0x1c], dx
mov ecx, dword [esi + 4]
mov edx, dword [ebp - 0xbc]
mov dword [edx + 8], ecx
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0xbc]
mov dword [ecx + 0xc], eax
mov edx, dword [ebp - 0xb8]
mov eax, dword [edx + 0x10]
mov ecx, dword [ebp - 0xbc]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0xbc]
mov eax, dword [ecx + 0x24]
lea edx, [eax + eax*4]
lea edx, [ecx + edx*8 + 0x40]
lea eax, [ecx + 0x40]
add esp, 4
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xc4], eax
cmp eax, edx
je 0x4340e9
lea ecx, [ecx]
mov ecx, 1
mov word [eax + 0x1c], cx
mov edx, dword [ebp - 0xc4]
mov dword [edx], ebx
mov eax, dword [ebp - 0xc4]
add eax, 0x28
mov dword [ebp - 0xc4], eax
cmp eax, dword [ebp - 0xc0]
jne 0x4340b0
mov ecx, dword [ebp - 0xbc]
jmp 0x4340e9
mov ecx, dword [edx + 0x10]
mov dword [ebp - 0xbc], ecx
inc dword [esi + 0xb0]
mov eax, dword [esi + 0xa8]
mov edx, dword [ebp - 0x100]
mov dword [ecx + 0x3c], eax
mov ecx, dword [ebp - 0xbc]
mov dword [ecx + 0x30], edx
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xfc]
mov dword [eax + 0x34], ecx
mov edx, dword [esi + 0x6c]
mov eax, dword [ebp - 0xbc]
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0xbc]
lea ecx, [eax + 0x18]
mov dword [esi + 0xa8], eax
mov dword [esi + 8], ecx
mov dword [esi + 0x6c], 0
mov edx, dword [eax + 0x24]
mov dword [esi + 0x18], edx
mov ax, word [eax + 0x28]
mov word [esi + 0x32], ax
mov eax, edx
lea edx, [eax + eax*4 + 5]
lea eax, [ecx + edx*8]
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0xb8]
mov dword [esi + 0x44], eax
mov eax, dword [ecx]
mov dword [esi + 4], eax
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x114], eax
mov dword [esi + 0x1c], ecx
mov dword [ebp - 0xe4], 0xffffffff
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edx + 0xa8]
mov ebx, dword [ebp - 0xe8]
mov dword [ebp - 0xd0], ecx
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
mov ecx, dword [ecx + 0x10]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 4]
add eax, dword [edi + 4]
push 0x1000
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
push eax
mov dword [ebp - 0xcc], eax
call fcn.00428ad0
add esp, 8
jmp case.0x42f854.17
cmp dword [edi + 4], 0
mov eax, dword [edi + 8]
cdq
je 0x4341ec
mov ecx, dword [ebp - 0xdc]
add dword [ecx + 0x1f0], eax
adc dword [ecx + 0x1f4], edx
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xd8]
add dword [ecx + 0x90], eax
adc dword [ecx + 0x94], edx
jmp case.0x42f854.17
cmp dword [edi + 4], 0
je 0x434230
mov eax, dword [ebp - 0xdc]
mov edx, dword [eax + 0x1f0]
or edx, dword [eax + 0x1f4]
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0x90]
or ecx, dword [eax + 0x94]
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edx + 0xa8]
test ecx, ecx
je 0x434291
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x434283
mov ecx, eax
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x434274
mov eax, dword [edi + 4]
mov ecx, dword [ecx + 0x10]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
jmp 0x4342a0
mov eax, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea esi, [eax + edx*8]
mov dword [ebp - 0xd0], esi
call fcn.00428730
mov edi, dword [edi + 8]
mov edx, dword [ebp - 0xe0]
lea ecx, [edi + edi*4]
lea esi, [edx + ecx*8]
call fcn.00428730
mov ecx, dword [esi + 0x10]
mov eax, dword [ebp - 0xd0]
mov esi, dword [esi + 0x14]
cmp dword [eax + 0x14], esi
jg case.0x42f854.17
jl 0x4342df
cmp dword [eax + 0x10], ecx
jae case.0x42f854.17
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], esi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
cmp dword [ecx + eax*8 + 0x14], 0
jl case.0x42f854.17
jg 0x434310
mov edx, ecx
cmp dword [edx + eax*8 + 0x10], 0
jbe case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
cmp dword [ecx + eax*8 + 0x14], 0
jg case.0x42f854.17
jl 0x434345
mov edx, ecx
cmp dword [edx + eax*8 + 0x10], 0
jae case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
mov eax, dword [edi + 0xc]
cdq
add dword [ecx + 0x10], eax
adc dword [ecx + 0x14], edx
mov edx, dword [ecx + 0x10]
or edx, dword [ecx + 0x14]
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
movzx ecx, byte [edi + 3]
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xd0], ecx
mov eax, dword [edi + 8]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov edx, dword [ebp - 0xd8]
mov dword [ebp - 0xc4], eax
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x80], eax
xor eax, eax
mov dword [ebp - 0xcc], eax
test ecx, ecx
jle 0x4343f2
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ebp - 0x80]
mov dword [edx + eax*4], ecx
mov ecx, dword [ebp - 0xc4]
call fcn.0042f3d0
mov eax, dword [ebp - 0xcc]
add dword [ebp - 0xc4], 0x28
inc eax
mov dword [ebp - 0xcc], eax
cmp eax, dword [ebp - 0xd0]
jl 0x4343bf
mov eax, dword [edi + 0x10]
mov edx, dword [ebp - 0xe0]
mov esi, dword [ebp - 0xdc]
mov dword [ebp - 0xc0], eax
mov eax, dword [edi + 0xc]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*8]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0x90], eax
inc dword [eax + 0x18]
xor ebx, ebx
mov eax, 1
mov word [ebp - 0x9c], ax
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xb4], ebx
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0xb8], esi
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x88], ebx
test byte [eax + 3], 8
je 0x434466
mov ecx, dword [edi - 4]
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0xd0]
mov eax, dword [eax + 0x10]
push edx
push ecx
lea edx, [ebp - 0xc0]
push edx
call eax
add esp, 0xc
cmp dword [ebp - 0x8c], ebx
je 0x4344ba
mov bl, 1
lea edi, [ebp - 0xb8]
call fcn.004291c0
mov edi, dword [ebp - 0xd8]
push eax
push 0x4a05bc
add edi, 0x38
mov eax, esi
call fcn.0040d2b0
mov ecx, dword [ebp - 0x8c]
add esp, 8
mov dword [ebp - 0xd4], ecx
lea edx, [ebp - 0xb8]
push edx
call fcn.00428530
add esp, 4
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xe0]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
mov dword [ebp - 0xd0], ecx
mov eax, dword [edi + 0x10]
call fcn.00428450
mov dword [ebp - 0xd4], eax
test eax, eax
je 0x43451f
mov edi, dword [ebp - 0xd0]
mov bl, 1
call fcn.004291c0
mov edi, dword [ebp - 0xd8]
push eax
mov eax, dword [ebp - 0xdc]
push 0x4a05bc
add edi, 0x38
call fcn.0040d2b0
add esp, 8
movzx ecx, byte [ebp - 0xec]
mov eax, dword [ebp - 0xd0]
call fcn.00428150
mov ecx, dword [ebp - 0xd0]
call fcn.00428aa0
test eax, eax
jne 0x42fada
jmp case.0x42f854.17
or eax, 0xffffffff
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc8], eax
xor esi, esi
mov dword [ebp - 0xcc], esi
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
lea edx, [ebp - 0xc4]
push edx
mov edx, dword [ebp - 0xdc]
push eax
push ecx
push edx
lea eax, [ebp - 0xc8]
call fcn.00471af0
add esp, 0x10
mov dword [ebp - 0xd4], eax
cmp eax, 5
jne 0x43459f
mov dword [ebp - 0xd4], esi
mov dword [ebp - 0xcc], 1
mov edx, dword [ebp - 0xe0]
xor eax, eax
mov dword [ebp - 0xd0], eax
mov edi, dword [edi + 0xc]
lea ecx, [edi + edi*4]
lea esi, [edx + ecx*8]
mov dword [ebp - 0xc0], esi
lea esp, [esp]
mov eax, dword [ebp + eax*4 - 0xcc]
cdq
push edx
push eax
call fcn.004288d0
mov eax, dword [ebp - 0xd0]
mov esi, dword [ebp - 0xc0]
inc eax
add esi, 0x28
add esp, 8
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xc0], esi
cmp eax, 3
jl 0x4345c0
jmp case.0x42f854.17
mov edx, dword [edi + 0xc]
mov ecx, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], edx
mov eax, dword [edi + 4]
mov ecx, dword [ecx + 8]
add eax, eax
mov eax, dword [ecx + eax*8 + 4]
mov dword [ebp - 0xd0], eax
mov eax, dword [eax + 4]
mov esi, dword [eax]
mov dword [ebp - 0xcc], esi
movzx ebx, byte [esi + 5]
mov dword [ebp - 0xc4], ebx
cmp edx, 0xffffffff
jne 0x43463b
mov edx, ebx
mov dword [ebp - 0xc8], edx
cmp byte [esi + 0xf], 3
jae 0x434657
mov ecx, dword [esi + 0x40]
cmp dword [ecx], 0
je 0x43465f
cmp dword [esi + 0x4c], 0
jl 0x43465f
jg 0x434657
cmp dword [esi + 0x48], 0
jbe 0x43465f
mov edx, ebx
mov dword [ebp - 0xc8], edx
mov eax, dword [esi + 0x90]
mov dword [ebp - 0xc0], eax
cmp edx, 5
jne 0x43468d
cmp byte [eax], 0
je 0x434680
mov eax, esi
call fcn.00419820
test eax, eax
jne 0x43468d
mov edx, ebx
mov dword [ebp - 0xc8], edx
jmp 0x434769
cmp edx, ebx
je 0x434769
cmp ebx, 5
je 0x4346a3
cmp edx, 5
jne 0x434769
mov eax, dword [ebp - 0xdc]
cmp byte [eax + 0x1c], 0
je 0x434722
cmp dword [eax + 0x8c], 1
jg 0x434722
cmp ebx, 5
jne 0x4346dc
mov eax, esi
call fcn.00419960
mov dword [ebp - 0xd4], eax
test eax, eax
jne 0x434714
mov ecx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xcc]
jmp 0x4346e6
cmp ebx, 4
jne 0x4346f1
lea ecx, [ebx - 2]
mov eax, esi
call fcn.004196c0
mov edx, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xd0]
xor eax, eax
cmp edx, 5
sete al
inc eax
push eax
push ecx
call fcn.00426a70
add esp, 8
mov dword [ebp - 0xd4], eax
test eax, eax
je 0x43475d
mov edx, dword [ebp - 0xc4]
mov dword [ebp - 0xc8], edx
jmp 0x434763
mov dword [ebp - 0xd4], 1
mov eax, str.into
cmp edx, 5
je 0x43473b
mov eax, str.out_of
push eax
push str.cannot_change__s_wal_mode_from_within_a_transaction
mov edi, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xdc]
add edi, 0x38
call fcn.0040d2b0
add esp, 8
jmp case.0x42f854.17
mov edx, dword [ebp - 0xc8]
mov esi, dword [ebp - 0xcc]
mov ecx, edx
mov eax, esi
call fcn.004196c0
mov dword [ebp - 0xc8], eax
mov edi, dword [edi + 8]
mov eax, dword [ebp - 0xe0]
lea edx, [edi + edi*4]
lea edx, [eax + edx*8]
mov ecx, 0xa02
mov word [edx + 0x1c], cx
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xe8], edx
cmp eax, 6
jne 0x4347a5
xor ecx, ecx
jmp 0x4347ac
mov ecx, dword [eax*4 + 0x49da8c]
mov dword [edx + 4], ecx
call fcn.0040ef10
movzx ecx, byte [ebp - 0xec]
mov dword [edx + 0x18], eax
mov eax, edx
mov byte [edx + 0x1f], 1
call fcn.00428150
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xdc]
add ecx, 0x38
call fcn.004649d0
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov edx, dword [edi + 4]
mov eax, dword [ebp - 0xdc]
mov ecx, dword [eax + 8]
add edx, edx
mov ebx, dword [ecx + edx*8 + 4]
mov dword [ebp - 0xd0], ebx
call fcn.0041f9a0
mov dword [ebp - 0xd4], eax
cmp eax, 0x65
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
mov dword [ebp - 0xd4], 0
jmp case.0x42f854.17
cmp dword [edi + 4], 0
jne 0x434848
mov eax, dword [ebp - 0xdc]
call fcn.0042cc50
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
mov byte [edx + 0x63], 1
jmp case.0x42f854.17
mov cl, byte [edi + 0xc]
test cl, cl
jne 0x434871
mov eax, dword [ebp - 0xdc]
test dword [eax + 0xc], 0x80000
jne case.0x42f854.17
mov edx, dword [edi + 8]
mov eax, dword [edi + 4]
push edx
mov edx, dword [ebp - 0xdc]
mov edx, dword [edx + 8]
add eax, eax
mov esi, dword [edx + eax*8 + 4]
call fcn.00426960
add esp, 4
mov dword [ebp - 0xd4], eax
cmp al, 6
jne case.0x42f854.17
mov eax, dword [edi + 0x10]
push eax
push str.database_table_is_locked:__s
jmp 0x434741
mov edi, dword [edi + 0x10]
mov esi, dword [ebp - 0xdc]
mov dword [ebp - 0xd0], edi
call fcn.00465cf0
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
test eax, eax
je case.0x42f854.17
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0xd8]
push ecx
push edx
call fcn.0042f650
add esp, 8
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd8]
mov ecx, dword [edi + 0x10]
add eax, 0x38
push eax
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0xdc]
push ecx
call fcn.00465840
add esp, 8
mov dword [ebp - 0xd4], eax
jmp case.0x42f854.17
mov esi, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xdc]
mov byte [esi + 0x66], 2
mov edx, dword [edi + 0x10]
mov eax, dword [edi + 4]
push edx
call fcn.00465af0
add esp, 4
mov dword [ebp - 0xd4], eax
mov byte [esi + 0x66], 0
jmp case.0x42f854.17
xor eax, eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 8]
mov dword [ebp - 0xc8], eax
mov ecx, dword [eax]
lea edx, [ebp - 0xcc]
push edx
mov dword [ebp - 0xc4], ecx
push eax
mov eax, dword [ecx + 0x18]
call eax
mov ecx, dword [ebp - 0xc8]
mov ebx, dword [ebp - 0xd8]
push ecx
mov esi, eax
push ebx
mov dword [ebp - 0xd4], esi
call fcn.0042f650
add esp, 0x10
test esi, esi
jne case.0x42f854.17
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xcc]
push esi
push 0xffffffffffffffff
mov dword [eax], edx
mov ecx, dword [edi + 4]
push esi
push ecx
push ebx
call fcn.0042f400
add esp, 0x14
mov dword [ebp - 0xd0], eax
test eax, eax
je 0x4349e2
mov edx, dword [ebp - 0xcc]
mov dword [eax + 0x24], edx
mov eax, dword [ebp - 0xcc]
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xd0]
mov dword [eax + 0x28], edx
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xdc]
mov byte [ecx + 0x1e], 1
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [eax + 0x1c]
push edx
call ecx
add esp, 4
jmp case.0x42f854.17
mov eax, dword [edi + 0xc]
mov esi, dword [ebp - 0xd8]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea eax, [eax + edx*8]
mov edx, dword [esi + 0x44]
mov esi, dword [esi + 0xc]
mov dword [ebp - 0xc4], eax
lea ebx, [eax + 0x28]
mov dword [ebp - 0xc0], ebx
mov ecx, dword [edi + 4]
mov ecx, dword [edx + ecx*4]
mov dword [ebp - 0xb4], ecx
mov edx, dword [ecx + 0x24]
mov dword [ebp - 0xbc], edx
mov ecx, dword [edx]
mov dword [ebp - 0xb8], ecx
mov ecx, dword [ecx]
mov dword [ebp - 0xc8], ecx
mov ecx, dword [ebx + 0x10]
mov dword [ebp - 0xd0], ecx
mov eax, dword [eax + 0x10]
mov dword [ebp - 0xcc], eax
xor eax, eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0xac], eax
cmp ecx, eax
jle 0x434ac8
jmp 0x434a87
mov ebx, dword [ebp - 0xc0]
lea ecx, [eax + eax*4 + 5]
lea edx, [ebx + ecx*8]
mov ecx, dword [ebp - 0xa8]
mov dword [ecx + eax*4], edx
mov edx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + edx*4]
call fcn.0042f3d0
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xac], eax
cmp eax, ecx
jl 0x434a81
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xa8]
mov esi, dword [ebp - 0xd8]
push eax
mov eax, dword [ebp - 0xcc]
push ecx
mov byte [esi + 0x66], 1
mov ecx, dword [edi + 0x10]
push ecx
mov ecx, dword [ebp - 0xc8]
push eax
push edx
mov edx, dword [ecx + 0x20]
call edx
mov ebx, eax
mov eax, dword [ebp - 0xb8]
add esp, 0x14
push eax
push esi
mov dword [ebp - 0xd4], ebx
mov byte [esi + 0x66], 0
call fcn.0042f650
add esp, 8
test ebx, ebx
jne 0x434b2f
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx + 0x28]
push ecx
call eax
add esp, 4
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 0
je 0x434b42
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
mov ecx, dword [ebp - 0xb4]
mov byte [ecx + 0x1c], 0
jmp case.0x42f854.17
mov eax, dword [ebp - 0xd8]
mov ecx, dword [eax + 0x44]
mov edx, dword [edi + 4]
mov eax, dword [edi + 0xc]
mov esi, dword [ecx + edx*4]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea eax, [eax + edx*8]
mov dword [ebp - 0xc8], eax
cmp byte [esi + 0x1c], 0
je 0x434b87
mov esi, eax
call fcn.00428880
jmp case.0x42f854.17
mov ecx, dword [esi + 0x24]
mov eax, dword [ecx]
mov dword [ebp - 0xd0], eax
mov edx, dword [eax]
push 0x40
lea eax, [ebp - 0xc0]
push 0
push eax
mov dword [ebp - 0xcc], edx
call fcn.00489270
mov ebx, dword [ebp - 0xc8]
add esp, 0xc
lea eax, [ebp - 0xb8]
call fcn.00428b90
mov ecx, dword [ebp - 0x9c]
and ecx, 0xbf01
or ecx, 1
mov word [ebp - 0x9c], cx
mov edx, dword [edi + 8]
mov ecx, dword [esi + 0x24]
push edx
mov edx, dword [ebp - 0xcc]
lea eax, [ebp - 0xc0]
push eax
mov eax, dword [edx + 0x2c]
push ecx
call eax
mov ecx, dword [ebp - 0xd0]
mov edx, dword [ebp - 0xd8]
add esp, 0xc
push ecx
push edx
mov dword [ebp - 0xd4], eax
call fcn.0042f650
mov eax, dword [ebp - 0x8c]
add esp, 8
test eax, eax
je 0x434c1d
mov dword [ebp - 0xd4], eax
movzx ecx, byte [ebp - 0xec]
lea eax, [ebp - 0xb8]
call fcn.00428150
mov eax, dword [ebp - 0xc8]
lea ebx, [ebp - 0xb8]
call fcn.00428b90
mov ecx, dword [ebp - 0xc8]
call fcn.00428aa0
test eax, eax
jne 0x42fada
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ecx + 0x44]
mov dword [ebp - 0xc8], 0
mov eax, dword [edi + 4]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0xc4], eax
cmp byte [eax + 0x1c], 0
jne case.0x42f854.17
mov ecx, dword [eax + 0x24]
mov ecx, dword [ecx]
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0xd0], ecx
mov ecx, dword [ecx]
mov dword [ebp - 0xcc], ecx
mov byte [esi + 0x66], 1
mov edx, dword [eax + 0x24]
mov eax, dword [ecx + 0x24]
push edx
call eax
mov ecx, dword [ebp - 0xd0]
add esp, 4
push ecx
mov ebx, eax
push esi
mov dword [ebp - 0xd4], ebx
mov byte [esi + 0x66], 0
call fcn.0042f650
add esp, 8
test ebx, ebx
jne 0x434ce8
mov edx, dword [ebp - 0xc4]
mov eax, dword [edx + 0x24]
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ecx + 0x28]
push eax
call edx
add esp, 4
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0
jne case.0x42f854.17
mov edi, dword [edi + 8]
dec edi
mov dword [ebp - 0xe4], edi
jmp case.0x42f854.17
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xd0], eax
mov edi, dword [edi + 4]
lea ecx, [edi + edi*4]
lea ecx, [edx + ecx*8]
mov dword [ebp - 0xcc], ecx
mov ecx, dword [ecx + 4]
mov edx, dword [eax]
mov edx, dword [edx + 0x4c]
push ecx
push eax
call edx
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd0]
push eax
push esi
call fcn.0042f650
mov byte [esi + 0x63], 0
jmp 0x434fb5
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd0], eax
mov eax, dword [eax]
mov dword [ebp - 0xcc], eax
mov edx, dword [edi + 8]
mov dword [ebp - 0xc8], edx
cmp dword [eax + 0x34], 0
je case.0x42f854.17
mov esi, dword [ebp - 0xdc]
mov al, byte [esi + 0x22]
mov ecx, dword [ebp - 0xd8]
mov byte [ebp - 0x101], al
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0xb8], eax
mov eax, dword [edi + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0xe0]
lea ecx, [eax + ecx*8]
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xc4], 0
test edx, edx
jle 0x434dfe
jmp 0x434dc0
call fcn.0042f3d0
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xb8]
mov dword [eax + edx*4], ecx
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xb4]
inc eax
add ecx, 0x28
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xc4], eax
cmp eax, dword [ebp - 0xc8]
jl 0x434dc0
mov cl, byte [edi + 3]
mov byte [esi + 0x22], cl
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xc8]
lea edx, [ebp - 0xc0]
push edx
mov edx, dword [ebp - 0xd0]
push eax
mov eax, dword [ebp - 0xcc]
push ecx
mov ecx, dword [eax + 0x34]
push edx
call ecx
mov dl, byte [ebp - 0x101]
mov ecx, dword [ebp - 0xd8]
mov ebx, eax
mov byte [esi + 0x22], dl
mov eax, dword [ebp - 0xd0]
push eax
push ecx
mov dword [ebp - 0xd4], ebx
call fcn.0042f650
add esp, 0x18
test ebx, ebx
jne 0x434e91
cmp dword [edi + 4], ebx
je 0x4330c4
mov eax, dword [ebp - 0xc0]
mov edx, dword [ebp - 0xbc]
mov dword [esi + 0x30], eax
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0xbc]
mov dword [esi + 0x34], eax
mov eax, dword [ebp - 0xd8]
inc dword [eax + 0x6c]
mov dword [ebp - 0xfc], edx
jmp case.0x42f854.17
cmp ebx, 0x13
jne 0x4330c4
mov ecx, dword [edi + 0x10]
cmp byte [ecx + 0x10], 0
je 0x4330c4
mov al, byte [edi + 3]
cmp al, 4
jne 0x434ebd
mov dword [ebp - 0xd4], 0
jmp case.0x42f854.17
cmp al, 5
jne 0x434ed4
mov edx, dword [ebp - 0xd8]
mov eax, 2
mov byte [edx + 0x60], al
jmp case.0x42f854.17
mov edx, dword [ebp - 0xd8]
movzx eax, al
mov byte [edx + 0x60], al
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ecx + 8]
add eax, eax
mov eax, dword [edx + eax*8 + 4]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x30]
mov eax, dword [ebp - 0xe8]
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0
jmp case.0x42f854.17
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ecx + 8]
mov edi, dword [edi + 0xc]
add eax, eax
mov ecx, dword [edx + eax*8 + 4]
xor eax, eax
test edi, edi
je 0x434f39
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x30]
cmp eax, edi
jae 0x434f39
mov eax, edi
call fcn.0041e6b0
mov ecx, dword [ebp - 0xe8]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
jmp case.0x42f854.17
mov ecx, dword [ebp - 0xdc]
cmp dword [ecx + 0x98], 0
je case.0x42f854.17
mov edi, dword [edi + 0x10]
test edi, edi
je 0x434f67
mov ecx, edi
jmp 0x434f73
mov edx, dword [ebp - 0xd8]
mov ecx, dword [edx + 0xa0]
mov dword [ebp - 0xd0], ecx
test ecx, ecx
je case.0x42f854.17
mov eax, dword [ebp - 0xd8]
push eax
call fcn.0042f000
mov esi, dword [ebp - 0xdc]
add esp, 4
mov dword [ebp - 0xcc], eax
mov ecx, dword [esi + 0x9c]
mov edx, dword [esi + 0x98]
push eax
push ecx
call edx
mov eax, dword [ebp - 0xcc]
push eax
push esi
call fcn.0040cea0
add esp, 0x10
inc dword [ebp - 0xe4]
cmp dword [ebp - 0xd4], 0
jne 0x42fb00
mov esi, dword [ebp - 0xd8]
mov ebx, dword [ebp - 0xdc]
jmp 0x42f7b0
mov dword [ebp - 0xd4], 9
jmp 0x42fb00
mov ecx, dword [edi + 4]
mov dword [ebx + 0x5c], ecx
mov dl, byte [edi + 8]
mov ecx, dword [ebp - 0xe4]
mov byte [ebx + 0x60], dl
mov dword [ebx + 0x58], ecx
mov eax, dword [edi + 0x10]
test eax, eax
je 0x435046
push eax
mov eax, dword [ebp - 0xdc]
push 0x4a05bc
lea edi, [ebx + 0x38]
call fcn.0040d2b0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 0x10]
mov edx, dword [ebx + 0xa0]
push ecx
mov ecx, dword [ebp - 0xe4]
push edx
mov edx, dword [eax + 4]
push ecx
push str.abort_at__d_in___s_:__s
push edx
call fcn.0040e630
add esp, 0x1c
jmp 0x435065
cmp dword [ebx + 0x5c], 0
je 0x435065
mov eax, dword [ebx + 0xa0]
push eax
push ecx
mov ecx, dword [edi + 4]
push str.constraint_failed_at__d_in___s_
push ecx
call fcn.0040e630
add esp, 0x10
call fcn.0042b6b0
mov edi, 5
cmp eax, edi
je 0x4350ba
mov edi, dword [ebx + 0x5c]
neg edi
sbb edi, edi
and edi, 0xffffff9c
add edi, 0x65
jmp 0x42fb68
lea ecx, [ebp - 0xc0]
push ecx
call fcn.00428530
add esp, 4
jmp 0x42fcff
mov dword [ebp - 0xd4], 0x14
jmp 0x43517a
mov edx, dword [ebp - 0xe4]
mov dword [ebx + 0x58], edx
mov byte [esi + 0x1c], 0
mov edi, 5
mov dword [ebx + 0x5c], edi
jmp 0x42fb68
test edi, edi
je 0x4350f4
mov eax, esi
call fcn.004710e0
mov byte [esi + 0x1c], 1
mov esi, dword [ebp - 0xdc]
call fcn.004708d0
mov eax, dword [ebp - 0xd8]
mov edi, dword [eax + 0x5c]
neg edi
sbb edi, edi
and edi, 0xffffff9c
add edi, 0x65
jmp 0x42fb68
push ebx
mov ebx, dword [ebp - 0xd8]
mov ecx, ebx
call fcn.0042b650
mov edi, eax
add esp, 4
test edi, edi
jne 0x42fb68
mov al, byte [ebp - 0xd0]
mov byte [esi + 0x1c], al
call fcn.0042b6b0
mov edi, 5
cmp eax, edi
jne 0x4350d1
mov ecx, dword [ebp - 0xe4]
mov dl, 1
sub dl, byte [ebp - 0xd0]
mov dword [ebx + 0x58], ecx
mov byte [esi + 0x1c], dl
mov dword [ebx + 0x5c], edi
jmp 0x42fb68
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xe4]
mov edi, 5
mov dword [eax + 0x58], ecx
mov dword [eax + 0x5c], edi
jmp 0x42fb68
mov eax, 0x10474
call fcn.00472df0
mov dword [ebp - 0xd4], eax
jmp 0x43517a
mov dword [ebp - 0xd4], 0xd
mov ecx, dword [ebp - 0xdc]
cmp byte [ecx + 0x1e], 0
je 0x435192
mov dword [ebp - 0xd4], 7
jmp 0x4351a2
cmp dword [ebp - 0xd4], 0xc0a
je 0x42fb00
mov eax, dword [ebp - 0xd4]
call fcn.004711b0
mov edi, dword [ebp - 0xd8]
push eax
push 0x4a05bc
add edi, 0x38
mov eax, ecx
call fcn.0040d2b0
add esp, 8
jmp 0x42fb00
mov esi, dword [ebp - 0xd8]
mov ebx, dword [ebp - 0xdc]
mov eax, 9
mov dword [ebp - 0xd4], eax
mov dword [esi + 0x5c], eax
mov eax, dword [str.interrupted]
test eax, eax
jne 0x4351f3
mov eax, str.unknown_error
push eax
push 0x4a05bc
lea edi, [esi + 0x38]
mov eax, ebx
call fcn.0040d2b0
add esp, 8
jmp 0x42fb00