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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x134
mov eax, dword [0x566148]
xor eax, esp
mov dword [esp + 0x130], eax
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x14]
push esi
push edi
mov edi, dword [ebx]
mov ecx, dword [edi + 8]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ebx + 0x4c]
mov dword [esp + 0x4c], eax
mov al, byte [edx + 0x49]
xor esi, esi
mov byte [esp + 0x47], al
lea eax, [ebx + 0x80]
push eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x38], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x30], edi
mov byte [esp + 0x4f], 0
mov dword [esp + 0x54], esi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x40], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], eax
call fcn.004738f0
add esp, 4
cmp dword [ebx + 0x58], 7
je 0x484218
xor eax, eax
mov dword [ebx + 0x58], eax
mov dword [ebx + 0x2c], eax
mov edx, dword [edi + 0xd8]
mov dword [edi + 0x1a0], eax
test edx, edx
jne 0x488e09
mov edx, dword [ebx + 0x54]
xor ecx, ecx
cmp dword [edi + 0x100], eax
mov dword [esp + 0x34], edx
setne cl
mov dword [esp + 0x60], ecx
cmp byte [edi + 0x1e], 0
jne 0x484218
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x4c]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*4]
mov ecx, dword [esp + 0x2c]
xor edx, edx
mov dword [esp + 0x38], edi
cmp dword [esp + 0x60], edx
je 0x483cf0
mov eax, dword [ecx + 0x108]
cmp eax, dword [esp + 0x50]
jne 0x483cec
mov eax, ecx
mov ecx, dword [eax + 0x104]
mov edx, dword [eax + 0x100]
push ecx
call edx
add esp, 4
test eax, eax
jne 0x488c4a
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x50], eax
xor edx, edx
inc dword [esp + 0x50]
test byte [edi + 2], 2
je 0x483d1b
mov eax, dword [edi + 8]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov dword [esp + 0x3c], esi
call fcn.0047d590
mov ecx, dword [esp + 0x2c]
mov edx, 4
mov word [esi + 0x1c], dx
xor edx, edx
movzx eax, byte [edi]
dec eax
cmp eax, 0x90
ja case.0x483d2a.17
jmp dword [eax*4 + 0x488e40]
mov eax, dword [ecx + 0xd8]
test eax, eax
jne 0x488e0b
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x30]
lea ecx, [eax + eax*4]
lea ecx, [edx + ecx*8]
mov eax, 4
mov word [ecx + 0x1c], ax
mov eax, dword [esp + 0x34]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov ecx, dword [edi + 8]
dec ecx
mov dword [esp + 0x34], ecx
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
mov ecx, dword [eax + edx*8]
mov dword [esp + 0x34], ecx
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea ecx, [eax + edx*8]
mov eax, dword [ecx]
mov edx, 4
mov word [ecx + 0x1c], dx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x34]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x34], ecx
jmp case.0x483d2a.17
mov eax, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
je case.0x483d2a.17
cmp dword [edi + 4], edx
jne 0x488c57
mov eax, dword [ebx + 0xd4]
cmp eax, edx
je 0x488c57
mov edx, dword [eax + 0x3c]
dec dword [ebx + 0xd8]
mov ecx, dword [ebx + 0x6c]
mov dword [ebx + 0xd4], edx
mov edx, dword [esp + 0x2c]
add dword [edx + 0x40], ecx
mov dword [edx + 0x3c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 8]
mov dword [ecx + 0x14], edx
mov edx, dword [eax + 0xc]
mov dword [ecx + 0xc], edx
mov edx, dword [eax + 0x10]
mov dword [ecx + 0x4c], edx
mov edx, dword [eax + 0x14]
mov dword [ecx + 0x48], edx
mov edx, dword [eax + 0x18]
mov dword [ecx + 0x34], edx
mov dx, word [eax + 0x1c]
mov word [ecx + 0x32], dx
mov esi, dword [eax + 0x30]
mov edx, dword [ecx]
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 eax, dword [eax + 4]
mov dword [esp + 0x34], eax
jne 0x483e62
mov ecx, dword [ebx + 0x14]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
dec edx
mov dword [esp + 0x34], edx
mov eax, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x4c]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x30], ecx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
cdq
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x483d2a.17
mov edi, dword [edi + 0x10]
mov edx, dword [edi]
mov dword [esi], edx
mov eax, dword [edi + 4]
mov dword [esi + 4], eax
jmp case.0x483d2a.17
mov ecx, 8
mov word [esi + 0x1c], cx
mov edx, dword [edi + 0x10]
fld qword [edx]
fstp qword [esi + 8]
jmp case.0x483d2a.17
mov ecx, dword [edi + 0x10]
mov byte [edi], 9
mov dword [esp + 0x40], ecx
call fcn.0046b0f0
cmp byte [esp + 0x47], 1
mov dword [edi + 4], eax
je 0x483fc4
test ecx, ecx
jne 0x483eda
push esi
call fcn.0047d970
add esp, 4
jmp 0x483f65
mov esi, dword [esi + 0x10]
test esi, esi
je 0x483ee6
mov eax, dword [esi + 0x48]
jmp 0x483eeb
mov eax, 0x3b9aca00
xor esi, esi
mov dword [esp + 0x24], eax
test eax, eax
js 0x483f00
cmp byte [ecx + esi], 0
je 0x483f00
inc esi
cmp esi, eax
jle 0x483ef5
mov ebx, dword [esp + 0x3c]
xor eax, eax
mov dword [esp + 0x38], 0x202
push ebx
cmp eax, fcn.00468fe0
jne 0x483f27
call fcn.0047d600
mov eax, dword [esp + 0x44]
mov dword [ebx + 0x14], eax
mov dword [ebx + 0x24], eax
jmp 0x483f3b
call fcn.0047d600
mov ecx, dword [esp + 0x44]
mov dword [ebx + 0x14], ecx
mov dword [esp + 0x3c], 0xa02
mov dx, word [esp + 0x3c]
add esp, 4
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], esi
mov word [ebx + 0x1c], dx
mov word [ebx + 0x1e], 0x103
cmp esi, dword [esp + 0x24]
jg 0x48493c
mov esi, dword [esp + 0x3c]
movzx ecx, byte [esp + 0x47]
mov eax, esi
mov dword [esp + 0x24], 0
call fcn.0047d1f0
test eax, eax
jne 0x484218
mov dword [esi + 0x24], eax
mov ax, word [esi + 0x1c]
mov ecx, 0xfbff
and ax, cx
mov edx, 0x800
or ax, dx
or bl, 0xff
mov word [esi + 0x1c], ax
cmp byte [edi + 1], bl
jne 0x483fb5
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x2c]
push eax
push ecx
call fcn.00468fe0
add esp, 8
mov byte [edi + 1], bl
mov edx, dword [esi + 0x14]
mov dword [edi + 0x10], edx
mov eax, dword [esi + 0x18]
mov dword [edi + 4], eax
mov ecx, dword [edi + 4]
mov edx, dword [esp + 0x2c]
cmp ecx, dword [edx + 0x48]
jg 0x48493c
mov ebx, dword [esp + 0x28]
mov eax, 0xa02
mov word [esi + 0x1c], ax
mov ecx, dword [edi + 0x10]
mov al, byte [esp + 0x47]
mov dword [esi + 0x14], ecx
mov edx, dword [edi + 4]
mov dword [esi + 0x18], edx
mov byte [esi + 0x1f], al
jmp case.0x483d2a.17
mov ecx, 1
mov word [esi + 0x1c], cx
jmp case.0x483d2a.17
mov ecx, dword [edi + 0x10]
mov edi, dword [edi + 4]
mov dword [esp + 0x38], ecx
cmp ecx, edx
jne 0x48402a
push esi
call fcn.0047d970
mov al, byte [esp + 0x4b]
add esp, 4
mov byte [esi + 0x1f], al
jmp case.0x483d2a.17
mov eax, dword [esi + 0x10]
cmp eax, edx
je 0x484036
mov eax, dword [eax + 0x48]
jmp 0x48403b
mov eax, 0x3b9aca00
mov dword [esp + 0x40], 0x10
cmp edi, edx
jge 0x484068
xor edi, edi
cmp eax, edx
jl 0x484060
lea ecx, [ecx]
mov dl, byte [ecx + edi + 1]
or dl, byte [ecx + edi]
je 0x484060
add edi, 2
cmp edi, eax
jle 0x484050
mov dword [esp + 0x40], 0x210
xor eax, eax
push esi
cmp eax, fcn.00468fe0
jne 0x484086
call fcn.0047d600
mov eax, dword [esp + 0x3c]
add esp, 4
mov dword [esi + 0x14], eax
mov dword [esi + 0x24], eax
jmp 0x48409d
call fcn.0047d600
mov ecx, dword [esp + 0x3c]
add esp, 4
or dword [esp + 0x40], 0x800
mov dword [esi + 0x14], ecx
mov dx, word [esp + 0x40]
mov al, byte [esp + 0x47]
mov word [esi + 0x1e], 0x104
mov dword [esi + 0x20], 0
mov dword [esi + 0x18], edi
mov word [esi + 0x1c], dx
mov byte [esi + 0x1f], al
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
dec eax
mov dword [esp + 0x78], eax
mov esi, dword [edi + 8]
mov dword [esp + 0x7c], esi
mov ecx, dword [edi + 0xc]
test ecx, ecx
jle 0x484157
mov edi, dword [esp + 0x30]
jmp 0x4840ea
mov esi, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x28]
mov edx, dword [edx + 0x3c]
dec ecx
mov dword [esp + 0x80], ecx
lea ecx, [eax + eax*4]
lea ecx, [edx + ecx*8]
inc eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x78], eax
call fcn.0047db10
test eax, eax
jne 0x48493c
lea eax, [esi + esi*4]
lea ebx, [edi + eax*8]
inc esi
mov dword [esp + 0x7c], esi
mov esi, ebx
mov dword [esp + 0x3c], ebx
call fcn.0047d590
mov ecx, 1
mov word [ebx + 0x1c], cx
mov edx, dword [esp + 0x84]
push 0x800
push edx
call fcn.0047db40
mov ecx, dword [esp + 0x88]
add esp, 8
test ecx, ecx
jg 0x4840e2
dec ecx
mov dword [esp + 0x80], ecx
jmp 0x48426a
mov eax, dword [edi + 0xc]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x7c], eax
mov ecx, dword [edi + 4]
mov dword [esp + 0x80], ecx
mov edx, dword [edi + 8]
mov dword [esp + 0x84], edx
lea ecx, [ecx + ecx*4]
lea edx, [edx + edx*4]
lea edi, [esi + ecx*8]
lea esi, [esi + edx*8]
mov dword [esp + 0x3c], esi
test eax, eax
je 0x4841cc
dec eax
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x78], eax
mov ebx, edi
mov eax, esi
mov dword [esi + 0x24], 0
call fcn.0047dbf0
mov ecx, dword [esp + 0x78]
mov dword [edi + 0x24], ecx
mov eax, dword [esp + 0x7c]
add edi, 0x28
add esi, 0x28
test eax, eax
jne 0x484197
mov dword [esp + 0x3c], esi
dec eax
mov dword [esp + 0x7c], eax
jmp 0x48426a
mov eax, dword [edi + 8]
mov edi, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea ebx, [eax + edx*8]
lea ecx, [edi + edi*4]
lea edx, [eax + ecx*8]
push 0x1000
push edx
mov dword [esp + 0x44], ebx
call fcn.0047db40
mov eax, 0x1000
add esp, 8
test word [ebx + 0x1c], ax
je 0x48426a
mov ecx, ebx
push ecx
call fcn.0047d350
add esp, 4
test eax, eax
je 0x48426a
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
push str.out_of_memory
add esi, 0x5c
mov byte [eax + 0x1e], 1
call fcn.004693e0
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x28], 7
jmp 0x484959
mov eax, dword [edi + 8]
mov edi, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea ebx, [eax + edx*8]
lea ecx, [edi + edi*4]
push 0x1000
lea edx, [eax + ecx*8]
mov dword [esp + 0x40], ebx
push edx
call fcn.0047db40
add esp, 8
mov ebx, dword [esp + 0x28]
inc dword [esp + 0x34]
cmp dword [esp + 0x24], 0
jne 0x48495c
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x2c]
jmp 0x483c92
push 0
mov ecx, ebx
call fcn.00480450
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
jne case.0x483d2a.17
push 1
push ebx
call fcn.00480380
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
jne case.0x483d2a.17
mov edx, dword [ebx + 0x50]
mov ecx, dword [esp + 0x30]
add edx, 2
or edx, 1
mov dword [ebx + 0x50], edx
mov eax, dword [edi + 4]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [ebx + 0x2c], eax
mov dword [esp + 0x78], eax
xor eax, eax
mov dword [esp + 0x7c], eax
cmp dword [edi + 8], eax
jle 0x48430c
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x78]
lea esi, [eax + edx*8]
call fcn.0047d420
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
lea ecx, [eax + eax*4]
lea ecx, [edx + ecx*8]
call fcn.004838c0
mov eax, dword [esp + 0x7c]
inc eax
mov dword [esp + 0x7c], eax
cmp eax, dword [edi + 8]
jl 0x4842dc
mov eax, dword [esp + 0x2c]
cmp byte [eax + 0x1e], 0
jne 0x484218
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x28]
inc ecx
mov dword [edx + 0x54], ecx
mov esi, 0x64
jmp 0x4849b2
mov eax, dword [edi + 4]
mov ebx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea ecx, [ebx + eax*8]
mov eax, dword [edi + 8]
mov edi, dword [edi + 0xc]
lea edx, [eax + eax*4]
lea esi, [ebx + edx*8]
lea eax, [edi + edi*4]
lea ebx, [ebx + eax*8]
movzx eax, word [ecx + 0x1c]
mov dword [esp + 0x38], ecx
mov cl, byte [esi + 0x1c]
or cl, al
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], ebx
test cl, 1
je 0x484377
push ebx
call fcn.0047d970
add esp, 4
jmp 0x48426a
test eax, 0x4000
je 0x48438f
mov esi, dword [esp + 0x38]
call fcn.0047d3c0
test eax, eax
jne 0x484218
mov esi, dword [esp + 0x40]
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x4843ab
call fcn.0047d3c0
test eax, eax
jne 0x484218
mov eax, dword [esp + 0x38]
test byte [eax + 0x1c], 0x12
jne 0x4843c9
movzx edi, byte [esp + 0x47]
mov esi, eax
call fcn.0047d470
test eax, eax
jne 0x484218
mov ecx, dword [esp + 0x40]
test byte [ecx + 0x1c], 0x12
jne 0x4843e7
movzx edi, byte [esp + 0x47]
mov esi, ecx
call fcn.0047d470
test eax, eax
jne 0x484218
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x18]
mov ecx, dword [esp + 0x40]
add eax, dword [ecx + 0x18]
cdq
mov ecx, edx
mov edx, dword [esp + 0x2c]
mov esi, eax
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], ecx
mov eax, dword [edx + 0x48]
cdq
cmp ecx, edx
jg 0x48493c
jl 0x48441c
cmp esi, eax
ja 0x48493c
mov ax, word [ebx + 0x1c]
mov ecx, 0xbf02
and ax, cx
or ax, 2
xor edx, edx
cmp ebx, dword [esp + 0x40]
mov word [ebx + 0x1c], ax
mov eax, dword [esp + 0x78]
sete dl
add eax, 2
push edx
push eax
push ebx
call fcn.0047d220
add esp, 0xc
test eax, eax
jne 0x484218
mov esi, dword [esp + 0x40]
cmp ebx, esi
je 0x48446f
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x14]
mov eax, dword [ebx + 0x14]
push ecx
push edx
push eax
call fcn.004ee090
add esp, 0xc
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
mov eax, dword [ebx + 0x14]
add eax, dword [esi + 0x18]
push ecx
push edx
push eax
call fcn.004ee090
mov edx, dword [esp + 0x84]
mov ecx, dword [ebx + 0x14]
mov byte [edx + ecx], 0
mov ecx, dword [esp + 0x84]
mov eax, dword [ebx + 0x14]
mov byte [eax + ecx + 1], 0
mov cl, byte [esp + 0x53]
mov edx, 0x200
add esp, 0xc
or word [ebx + 0x1c], dx
mov eax, dword [esp + 0x78]
mov dword [ebx + 0x18], eax
mov byte [ebx + 0x1f], cl
jmp 0x48426a
mov edi, dword [edi + 4]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea ebx, [eax + edx*8]
mov edi, ebx
call fcn.004839f0
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 8]
mov esi, dword [esp + 0x30]
lea edx, [eax + eax*4]
lea edi, [esi + edx*8]
call fcn.004839f0
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0xc]
movzx edx, word [ebx + 0x1c]
lea ecx, [eax + eax*4]
movzx eax, word [edi + 0x1c]
or edx, eax
lea esi, [esi + ecx*8]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], edx
test dl, 1
jne 0x484762
mov cl, byte [ebx + 0x1c]
and cl, byte [edi + 0x1c]
test cl, 4
je 0x48462e
mov ecx, dword [ebx]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x80], ecx
mov ebx, dword [ebx + 4]
mov dword [esp + 0x84], ebx
mov eax, dword [edi]
mov dword [esp + 0x88], eax
mov edi, dword [edi + 4]
mov dword [esp + 0x8c], edi
movzx edx, byte [edx]
add edx, 0xffffffaa
cmp edx, 3
ja case.default.0x484559
jmp dword [edx*4 + 0x489084]
add eax, ecx
adc edi, ebx
mov dword [esp + 0x8c], edi
jmp 0x484602
sub eax, ecx
sbb edi, ebx
mov dword [esp + 0x8c], edi
jmp 0x484602
push ebx
push ecx
push edi
push eax
call fcn.004eed00
jmp 0x4845fb
mov edx, ecx
or edx, ebx
je 0x484762
mov edx, ecx
and edx, ebx
cmp edx, 0xffffffff
jne 0x4845bf
test eax, eax
jne 0x4845bf
cmp edi, 0x80000000
jne 0x4845bf
mov ecx, 1
xor ebx, ebx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], ebx
push ebx
push ecx
push edi
push eax
call fcn.004efdf0
jmp 0x4845fb
mov edx, ecx
or edx, ebx
je 0x484762
mov edx, ecx
and edx, ebx
cmp edx, 0xffffffff
jne 0x4845f2
mov ecx, 1
xor ebx, ebx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], ebx
push ebx
push ecx
push edi
push eax
call fcn.004efed0
mov dword [esp + 0x8c], edx
mov dword [esp + 0x88], eax
mov cx, word [esi + 0x1c]
mov edx, 0xbf04
and cx, dx
mov dword [esi], eax
mov eax, dword [esp + 0x8c]
or cx, 4
mov dword [esi + 4], eax
mov word [esi + 0x1c], cx
jmp 0x48426a
mov eax, ebx
call fcn.0047d760
fstp qword [esp + 0x90]
mov eax, edi
call fcn.0047d760
fst qword [esp + 0x98]
mov eax, dword [esp + 0x38]
movzx eax, byte [eax]
add eax, 0xffffffaa
cmp eax, 3
ja case.default.0x484659
jmp dword [eax*4 + 0x489094]
fadd qword [esp + 0x90]
jmp 0x48470e
fsub qword [esp + 0x90]
jmp 0x48470e
fmul qword [esp + 0x90]
jmp 0x48470e
fld qword [esp + 0x90]
fld st(0)
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x48475e
fdivp st(1)
jmp 0x48470e
fld qword [esp + 0x90]
call fcn.00522f26
mov edi, eax
mov ebx, edx
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], ebx
call fcn.00522f26
mov ecx, edi
or ecx, ebx
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
je 0x484762
mov ecx, edi
and ecx, ebx
cmp ecx, 0xffffffff
jne 0x4846f9
mov edi, 1
xor ebx, ebx
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], ebx
push ebx
push edi
push edx
push eax
call fcn.004efed0
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
fild qword [esp + 0x68]
sub esp, 8
fst qword [esp + 0xa0]
fstp qword [esp]
call fcn.0046b0c0
add esp, 8
test eax, eax
jne 0x484762
mov dx, word [esi + 0x1c]
fld qword [esp + 0x98]
mov eax, 0xbf08
fstp qword [esi + 8]
and dx, ax
or dx, 8
mov word [esi + 0x1c], dx
test byte [esp + 0x78], 8
jne 0x48426a
mov esi, dword [esp + 0x3c]
call fcn.0047d7e0
jmp 0x48426a
fstp st(0)
fstp st(0)
push esi
call fcn.0047d970
add esp, 4
jmp 0x48426a
movzx ecx, byte [edi + 3]
mov eax, dword [ebx + 0x24]
mov esi, dword [esp + 0x30]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], ecx
mov eax, dword [edi + 8]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
mov dword [esp + 0x7c], eax
xor eax, eax
mov dword [esp + 0x78], eax
cmp ecx, edx
jle 0x4847ce
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xc0]
mov dword [edx + eax*4], ecx
mov ecx, dword [esp + 0x7c]
call fcn.004838c0
mov eax, dword [esp + 0x78]
add dword [esp + 0x7c], 0x28
inc eax
mov dword [esp + 0x78], eax
cmp eax, dword [esp + 0xc4]
jl 0x4847a0
cmp byte [edi + 1], 0xfb
mov eax, dword [edi + 0x10]
jne 0x4847e9
xor ecx, ecx
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
jmp 0x4847fb
mov dword [esp + 0x84], eax
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
xor ecx, ecx
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea esi, [eax + edx*8]
mov eax, dword [esp + 0x2c]
mov edx, 1
mov dword [esp + 0x98], eax
mov ebx, esi
lea eax, [esp + 0x88]
mov dword [esp + 0x3c], esi
mov word [esp + 0xa4], dx
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], ecx
call fcn.0047dbf0
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0x80]
and ecx, 0xbf01
or ecx, 1
mov word [esp + 0xa4], cx
mov dword [esp + 0xb4], 0
test byte [eax + 3], 8
je 0x48487a
mov edx, dword [edi - 4]
mov dword [esp + 0xb8], edx
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xc4]
push ecx
push edx
mov edx, dword [eax + 0xc]
lea ecx, [esp + 0x88]
push ecx
call edx
mov eax, dword [esp + 0x38]
add esp, 0xc
cmp byte [eax + 0x1e], 0
jne 0x488ce0
mov ebx, dword [esp + 0x84]
test ebx, ebx
je 0x4848cd
mov ecx, dword [edi + 4]
push ecx
call fcn.004809b0
mov edx, dword [esp + 0x88]
add esp, 4
mov dword [edi + 0x10], edx
mov byte [edi + 1], 0xf9
cmp dword [esp + 0xb4], 0
je 0x48490e
lea eax, [esp + 0x88]
push 1
push eax
call fcn.0047e120
mov esi, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x38]
push 0x544f90
add esi, 0x5c
call fcn.004693e0
mov ecx, dword [esp + 0xc4]
mov esi, dword [esp + 0x4c]
add esp, 0x10
mov dword [esp + 0x24], ecx
movzx ecx, byte [esp + 0x47]
lea eax, [esp + 0x88]
call fcn.0047d1f0
lea ebx, [esp + 0x88]
mov eax, esi
call fcn.0047dbf0
mov ecx, esi
call fcn.0047db10
test eax, eax
je 0x48426a
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
push str.string_or_blob_too_big
lea esi, [ebx + 0x5c]
call fcn.004693e0
mov dword [esp + 0x28], 0x12
add esp, 4
mov eax, dword [ebx + 0x5c]
mov ecx, dword [ebx + 0xb8]
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x24]
push eax
push ecx
push edx
push str.statement_aborts_at__d:___s___s
push esi
mov dword [ebx + 0x58], esi
call fcn.0046a840
add esp, 0x14
mov eax, ebx
call fcn.004804b0
cmp esi, 0xc0a
jne 0x484998
mov eax, dword [esp + 0x2c]
mov byte [eax + 0x1e], 1
cmp byte [esp + 0x4b], 0
mov esi, 1
je 0x4849b2
mov eax, dword [esp + 0x2c]
push 0
call fcn.00495120
add esp, 4
mov ecx, dword [esp + 0x5c]
xor ebx, ebx
cmp dword [ecx], ebx
jle 0x4849f4
lea edx, [ecx + 4]
mov dword [esp + 0x4c], edx
mov eax, dword [esp + 0x4c]
mov edi, dword [eax]
dec dword [edi + 0xc]
jne 0x4849ea
mov edx, dword [edi + 4]
mov eax, dword [edx + 0x30]
test eax, eax
je 0x4849e6
push eax
call dword [0x567f48]
mov ecx, dword [esp + 0x60]
add esp, 4
mov byte [edi + 0xa], 0
add dword [esp + 0x4c], 4
inc ebx
cmp ebx, dword [ecx]
jl 0x4849c3
mov ecx, dword [esp + 0x13c]
pop edi
mov eax, esi
pop esi
pop ebx
xor ecx, esp
call fcn.004e8965
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x30]
mov eax, dword [edi + 4]
lea eax, [eax + eax*4]
lea esi, [edx + eax*8]
mov eax, dword [edi + 8]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*8]
mov ecx, dword [edi + 0xc]
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*8]
mov dl, byte [eax + 0x1c]
or dl, byte [esi + 0x1c]
mov dword [esp + 0x3c], ecx
test dl, 1
je 0x484a47
push ecx
call fcn.0047d970
add esp, 4
jmp case.0x483d2a.17
call fcn.0047d6d0
mov dword [esp + 0x78], eax
mov eax, esi
mov dword [esp + 0x7c], edx
call fcn.0047d6d0
mov ecx, eax
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], edx
movzx eax, byte [edi]
sub eax, 0x52
je 0x484aa9
dec eax
je 0x484a9f
mov edx, dword [esp + 0x7c]
dec eax
mov eax, dword [esp + 0x78]
je 0x484a90
call fcn.00523020
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
jmp 0x484ab1
call fcn.004f00f0
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
jmp 0x484ab1
or dword [esp + 0x78], ecx
or dword [esp + 0x7c], edx
jmp 0x484ab1
and dword [esp + 0x78], ecx
and dword [esp + 0x7c], edx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
mov edx, dword [esp + 0x7c]
mov cx, word [eax + 0x1c]
mov dword [eax + 4], edx
mov edx, 0xbf04
and cx, dx
or cx, 4
mov word [eax + 0x1c], cx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
call fcn.0047d880
mov eax, dword [edi + 8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea esi, [eax + edx*8]
mov edi, esi
call fcn.004839f0
test byte [esi + 0x1c], 8
je 0x484b1a
call fcn.0047d7e0
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x484b3f
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 8]
mov ebx, dword [esp + 0x28]
test eax, eax
je 0x488cf5
dec eax
mov dword [esp + 0x34], eax
jmp case.0x483d2a.17
and eax, 0xbf04
or eax, 4
mov word [esi + 0x1c], ax
jmp 0x48426a
mov edi, dword [edi + 4]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
test byte [eax + edx*8 + 0x1c], 4
lea esi, [eax + edx*8]
je case.0x483d2a.17
call fcn.0047d8b0
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov edx, dword [esp + 0x30]
lea ecx, [edi + edi*4]
movzx eax, word [edx + ecx*8 + 0x1c]
lea esi, [edx + ecx*8]
test al, 1
jne case.0x483d2a.17
mov ecx, eax
shr ecx, 3
and ecx, 2
or ecx, eax
mov word [esi + 0x1c], cx
test cl, 2
jne 0x484bb2
test cl, 0xc
je 0x484bb2
movzx edi, byte [esp + 0x47]
call fcn.0047d470
mov ebx, dword [esp + 0x28]
mov edx, 0xfff3
and word [esi + 0x1c], dx
movzx eax, word [esi + 0x1c]
test eax, 0x4000
je 0x484bdd
call fcn.0047d3c0
mov dword [esp + 0x24], eax
mov eax, 0xbfe3
and word [esi + 0x1c], ax
jmp case.0x483d2a.17
mov eax, 0xbfe3
and word [esi + 0x1c], ax
mov dword [esp + 0x24], 0
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov edx, dword [esp + 0x30]
lea ecx, [edi + edi*4]
movzx eax, word [edx + ecx*8 + 0x1c]
lea esi, [edx + ecx*8]
test al, 1
jne case.0x483d2a.17
test al, 0x10
jne 0x484c40
test al, 2
jne 0x484c27
test al, 0xc
je 0x484c27
movzx edi, byte [esp + 0x47]
call fcn.0047d470
mov ebx, dword [esp + 0x28]
mov ax, word [esi + 0x1c]
mov ecx, 0xbf10
and ax, cx
or ax, 0x10
mov word [esi + 0x1c], ax
jmp case.0x483d2a.17
and eax, 0xff10
mov word [esi + 0x1c], ax
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
test byte [eax + edx*8 + 0x1c], 0xd
lea eax, [eax + edx*8]
jne case.0x483d2a.17
call fcn.0047d8e0
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov edx, dword [esp + 0x30]
lea ecx, [edi + edi*4]
test byte [edx + ecx*8 + 0x1c], 1
lea esi, [edx + ecx*8]
jne case.0x483d2a.17
call fcn.0047d880
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [edi + edi*4]
test byte [ecx + eax*8 + 0x1c], 1
lea esi, [ecx + eax*8]
jne case.0x483d2a.17
call fcn.0047d8b0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov esi, dword [esp + 0x30]
lea edx, [eax + eax*4]
mov eax, dword [edi + 0xc]
lea ecx, [esi + edx*8]
movzx edx, word [ecx + 0x1c]
lea eax, [eax + eax*4]
mov word [esp + 0x7e], dx
movzx edx, word [esi + eax*8 + 0x1c]
lea eax, [esi + eax*8]
mov word [esp + 0x80], dx
mov dword [esp + 0x40], eax
movzx eax, word [eax + 0x1c]
mov dword [esp + 0x38], ecx
movzx ecx, word [ecx + 0x1c]
mov dl, al
or dl, cl
test dl, 1
je 0x484d53
mov dl, byte [edi + 3]
test dl, dl
jns 0x484d11
and al, cl
test al, 1
mov eax, 0
sete al
jmp 0x484dd1
test dl, 0x10
je 0x484d3d
mov edi, dword [edi + 8]
lea eax, [edi + edi*4]
mov cx, word [esi + eax*8 + 0x1c]
lea eax, [esi + eax*8]
mov edx, 0xbf01
and cx, dx
or cx, 1
mov dword [esp + 0x3c], eax
mov word [eax + 0x1c], cx
jmp case.0x483d2a.17
test dl, 8
je case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov al, byte [edi + 3]
and al, 0x67
mov byte [esp + 0x7c], al
je 0x484d95
mov esi, dword [esp + 0x47]
mov ecx, dword [esp + 0x38]
push esi
call fcn.00483ad0
mov al, byte [esp + 0x80]
mov ecx, dword [esp + 0x44]
add esp, 4
push esi
call fcn.00483ad0
mov eax, dword [esp + 0x30]
add esp, 4
cmp byte [eax + 0x1e], 0
jne 0x484218
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
mov ecx, 0x4000
test word [edx + 0x1c], cx
je 0x484dab
mov esi, edx
call fcn.0047d3c0
mov ecx, dword [esp + 0x40]
mov eax, 0x4000
test word [ecx + 0x1c], ax
je 0x484dc1
mov esi, ecx
call fcn.0047d3c0
mov eax, dword [edi + 0x10]
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
call fcn.0047dda0
mov dword [esp + 0x78], eax
movzx ecx, byte [edi]
add ecx, 0xffffffb5
cmp ecx, 4
ja case.default.0x484de0
jmp dword [ecx*4 + 0x4890a4]
xor edx, edx
test eax, eax
sete dl
mov eax, edx
jmp 0x484e23
xor ecx, ecx
test eax, eax
setne cl
jmp 0x484e21
xor edx, edx
test eax, eax
sets dl
mov eax, edx
jmp 0x484e23
xor ecx, ecx
test eax, eax
setle cl
jmp 0x484e21
xor edx, edx
test eax, eax
setg dl
mov eax, edx
jmp 0x484e23
xor ecx, ecx
test eax, eax
setns cl
mov eax, ecx
mov dword [esp + 0x78], eax
test byte [edi + 3], 0x10
je 0x484e5e
mov edi, dword [edi + 8]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea ecx, [eax + edx*8]
mov dx, word [ecx + 0x1c]
mov eax, 0xbf04
and dx, ax
or dx, 4
mov word [ecx + 0x1c], dx
mov eax, dword [esp + 0x78]
cdq
mov dword [esp + 0x3c], ecx
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x484e6a
test eax, eax
je 0x484e6a
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
mov cl, byte [esp + 0x7e]
mov edx, dword [esp + 0x38]
mov byte [edx + 0x1c], cl
mov al, byte [esp + 0x80]
mov ecx, dword [esp + 0x40]
mov byte [ecx + 0x1c], al
jmp case.0x483d2a.17
mov edx, dword [edi + 0x10]
mov dword [esp + 0x58], edx
jmp case.0x483d2a.17
mov eax, dword [edi + 0xc]
mov dword [esp + 0x78], eax
mov edx, dword [edi + 0x10]
mov dword [esp + 0x88], edx
mov ecx, dword [edi + 4]
mov dword [esp + 0x80], ecx
mov ecx, dword [edi + 8]
mov dword [esp + 0x84], ecx
xor ecx, ecx
mov dword [esp + 0x7c], ecx
test eax, eax
jle 0x484f5b
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x58]
jmp 0x484ed8
mov edx, dword [esp + 0x88]
test ebx, ebx
je 0x484ee1
mov esi, dword [ebx + ecx*4]
jmp 0x484ee3
mov esi, ecx
mov dword [esp + 0x8c], esi
mov eax, dword [edx + ecx*4 + 0xc]
mov dword [esp + 0x90], eax
mov edx, dword [edx + 8]
movzx ecx, byte [edx + ecx]
mov edx, dword [esp + 0x84]
mov dword [esp + 0x94], ecx
lea ecx, [esi + edx]
lea ecx, [ecx + ecx*4]
lea edx, [edi + ecx*8]
mov ecx, dword [esp + 0x80]
add ecx, esi
lea ecx, [ecx + ecx*4]
lea ecx, [edi + ecx*8]
call fcn.0047dda0
mov dword [esp + 0x54], eax
test eax, eax
jne 0x484f47
mov ecx, dword [esp + 0x7c]
inc ecx
mov dword [esp + 0x7c], ecx
cmp ecx, dword [esp + 0x78]
jl 0x484ed1
mov dword [esp + 0x58], eax
jmp 0x48426a
cmp dword [esp + 0x94], 0
je 0x484f5b
mov edx, dword [esp + 0x54]
neg edx
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], 0
jmp 0x48426a
mov eax, dword [esp + 0x54]
cmp eax, edx
jge 0x484f7d
mov edi, dword [edi + 4]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
jne 0x484f8c
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov edi, dword [edi + 0xc]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
lea eax, [ecx + eax*8]
je 0x484fb4
mov ecx, 2
jmp 0x484fc6
call fcn.0047d6d0
or eax, edx
je 0x484fc4
mov ecx, 1
jmp 0x484fc6
xor ecx, ecx
mov esi, dword [esp + 0x30]
mov dword [esp + 0x78], ecx
mov eax, dword [edi + 8]
lea edx, [eax + eax*4]
test byte [esi + edx*8 + 0x1c], 1
lea eax, [esi + edx*8]
je 0x484fe5
mov eax, 2
jmp 0x484ffb
call fcn.0047d6d0
or eax, edx
mov ecx, dword [esp + 0x78]
je 0x484ff9
mov eax, 1
jmp 0x484ffb
xor eax, eax
mov dword [esp + 0x7c], eax
cmp byte [edi], 0x45
jne 0x485011
lea eax, [eax + ecx*2]
movzx eax, byte [ecx + eax + 0x53bcb0]
jmp 0x48501c
lea edx, [eax + ecx*2]
movzx eax, byte [ecx + edx + 0x53bcbc]
mov dword [esp + 0x78], eax
mov edi, dword [edi + 0xc]
lea ecx, [edi + edi*4]
lea ecx, [esi + ecx*8]
mov dword [esp + 0x3c], ecx
cmp eax, 2
jne 0x48504b
mov dx, word [ecx + 0x1c]
mov eax, 0xbf01
and dx, ax
or dx, 1
mov word [ecx + 0x1c], dx
jmp case.0x483d2a.17
cdq
mov dword [ecx + 4], edx
mov dx, word [ecx + 0x1c]
mov dword [ecx], eax
mov eax, 0xbf04
and dx, ax
or dx, 4
mov word [ecx + 0x1c], dx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
mov edi, dword [edi + 8]
lea edx, [eax + eax*4]
test byte [ecx + edx*8 + 0x1c], 1
lea eax, [ecx + edx*8]
lea edx, [edi + edi*4]
lea esi, [ecx + edx*8]
mov dword [esp + 0x3c], esi
je 0x485099
push esi
call fcn.0047d970
add esp, 4
jmp case.0x483d2a.17
call fcn.0047d6d0
or eax, edx
jne 0x4850b7
mov eax, 1
cdq
push edx
push eax
call fcn.0047d9c0
add esp, 8
jmp case.0x483d2a.17
xor eax, eax
cdq
push edx
push eax
call fcn.0047d9c0
add esp, 8
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
mov edi, dword [edi + 8]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
lea edx, [edi + edi*4]
lea eax, [ecx + eax*8]
lea esi, [ecx + edx*8]
mov dword [esp + 0x3c], esi
je 0x4850f8
push esi
call fcn.0047d970
add esp, 4
jmp case.0x483d2a.17
call fcn.0047d6d0
not edx
not eax
push edx
push eax
call fcn.0047d9c0
add esp, 8
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
lea eax, [ecx + eax*8]
je 0x485129
mov eax, dword [edi + 0xc]
jmp 0x485154
call fcn.0047d760
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x485140
mov eax, 1
jmp 0x485142
xor eax, eax
mov dword [esp + 0x78], eax
cmp byte [edi], 0x1b
jne 0x485158
xor edx, edx
test eax, eax
sete dl
mov eax, edx
mov dword [esp + 0x78], eax
test eax, eax
je case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
test byte [ecx + eax*8 + 0x1c], 1
je case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
test byte [eax + edx*8 + 0x1c], 1
jne case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov ecx, dword [edi + 4]
xor eax, eax
mov dword [esp + 0x88], ecx
mov edx, dword [edi + 8]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], edx
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], eax
mov eax, dword [edi + 0xc]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [esp + 0xb4], eax
mov dx, word [eax + 0x1c]
mov esi, 0xbf01
and dx, si
or dx, 1
mov word [eax + 0x1c], dx
mov eax, dword [ebx + 0x34]
mov esi, dword [esp + 0x88]
xor edx, edx
mov dword [esp + 0x94], edx
mov esi, dword [eax + esi*4]
mov dword [esp + 0x90], esi
mov eax, dword [esi]
mov dword [esp + 0x98], eax
cmp eax, edx
je 0x48533a
call fcn.00480ba0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc6
mov eax, dword [esp + 0x90]
cmp byte [eax + 0x14], 0
je 0x485295
mov dword [esp + 0x78], 0
jmp case.0x483d2a.17
mov ecx, dword [eax + 0x44]
cmp ecx, dword [ebx + 0x50]
jne 0x4852b0
mov edx, dword [eax + 0x48]
mov dword [esp + 0x78], edx
mov ecx, dword [eax + 0x54]
mov dword [esp + 0x94], ecx
jmp 0x4852e3
cmp byte [eax + 0x17], 0
mov esi, dword [esp + 0x98]
je 0x485327
lea edx, [esp + 0x80]
push edx
call fcn.00476ee0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x84]
add esp, 4
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x78]
test ecx, ecx
je case.0x483d2a.17
mov edx, dword [esp + 0x2c]
cmp ecx, dword [edx + 0x48]
ja 0x48493c
mov edx, dword [eax + 0x2c]
mov dword [esp + 0xa4], edx
mov ecx, dword [eax + 0x4c]
mov dword [esp + 0x9c], ecx
mov esi, dword [eax + 0x44]
cmp esi, dword [ebx + 0x50]
jne 0x485383
mov eax, dword [eax + 0x50]
mov dword [esp + 0xa0], eax
jmp 0x48566e
lea ecx, [esp + 0x78]
push ecx
call fcn.00476f60
add esp, 4
mov dword [esp + 0x24], eax
jmp 0x4852dc
mov eax, dword [esi + 0x24]
cmp eax, edx
jle 0x48537a
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [esp + 0xf8], eax
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x78], ecx
mov eax, dword [eax + 0x14]
mov dword [esp + 0x94], eax
test byte [edi + 3], 0x20
je 0x48536f
xor eax, eax
mov dword [esi + 0x44], eax
jmp 0x4852dc
mov eax, dword [ebx + 0x50]
mov dword [esi + 0x44], eax
jmp 0x4852dc
mov dword [esp + 0x78], edx
jmp case.0x483d2a.17
lea ecx, [ecx + edx*4]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xf4], 0
mov dword [eax + 0x50], ecx
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x78]
mov dword [ecx + 0x48], edx
mov ecx, dword [esp + 0x90]
mov eax, dword [ebx + 0x50]
mov dword [ecx + 0x44], eax
mov ecx, dword [esp + 0x94]
test ecx, ecx
je 0x4853cd
mov dword [esp + 0xb0], ecx
jmp 0x485449
mov edx, dword [esp + 0x90]
cmp byte [edx + 0x17], 0
mov esi, dword [esp + 0x98]
je 0x4853f3
lea eax, [esp + 0xf4]
push eax
call fcn.00477560
add esp, 4
jmp 0x48540d
xor eax, eax
cmp byte [esi + 0x43], 1
jne 0x48540d
lea ecx, [esp + 0xf4]
push 1
push ecx
call fcn.004774d0
add esp, 8
mov edx, dword [esp + 0x78]
mov dword [esp + 0xb0], eax
cmp edx, dword [esp + 0xf4]
ja 0x485434
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x94], eax
mov dword [ecx + 0x54], eax
jmp 0x485442
mov edx, dword [esp + 0x90]
mov dword [edx + 0x54], 0
mov ecx, dword [esp + 0xb0]
mov al, byte [ecx]
cmp al, 0x80
jae 0x485460
movzx edx, al
mov dword [esp + 0xe8], edx
mov eax, 1
jmp 0x48547d
lea esi, [esp + 0xe8]
call fcn.0046beb0
mov edx, dword [esp + 0xe8]
mov ecx, dword [esp + 0xb0]
movzx eax, al
movzx eax, al
mov dword [esp + 0xf0], eax
cmp edx, 0x18003
jbe 0x4854a2
mov eax, 0xd8c5
call fcn.004c0720
mov dword [esp + 0x24], eax
jmp case.0x483d2a.17
mov esi, dword [esp + 0xa4]
lea eax, [esi + esi*4 + 3]
mov dword [esp + 0xa8], eax
cmp eax, edx
jle 0x4854c1
mov eax, edx
mov dword [esp + 0xa8], eax
cmp dword [esp + 0x94], 0
jne 0x485541
cmp dword [esp + 0xf4], eax
jge 0x485541
mov edx, dword [esp + 0x90]
xor ecx, ecx
mov word [esp + 0xd4], cx
mov dword [esp + 0xc8], ecx
movzx ecx, byte [edx + 0x17]
push ecx
push eax
mov eax, dword [esp + 0xa0]
push 0
lea ebx, [esp + 0xc4]
call fcn.0047e020
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
jne 0x48426a
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xe8]
mov eax, dword [esp + 0xa8]
mov esi, dword [esp + 0xa4]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0xb0], ecx
add eax, ecx
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0xf0]
add eax, ecx
xor ecx, ecx
mov dword [esp + 0xe0], eax
mov dword [esp + 0xac], ecx
test esi, esi
jle 0x485615
mov eax, dword [esp + 0xe0]
cmp eax, dword [esp + 0xe4]
mov eax, dword [esp + 0xa0]
jae 0x4856e5
mov dword [eax + ecx*4], edx
mov ecx, dword [esp + 0xe0]
mov al, byte [ecx]
mov edx, dword [esp + 0xac]
cmp al, 0x80
jae 0x4855b1
movzx ecx, al
mov eax, dword [esp + 0x9c]
mov dword [eax + edx*4], ecx
mov eax, 1
jmp 0x4855c3
mov eax, dword [esp + 0x9c]
lea esi, [eax + edx*4]
call fcn.0046beb0
movzx eax, al
mov edx, dword [esp + 0x9c]
movzx ecx, al
add dword [esp + 0xe0], ecx
mov ecx, dword [esp + 0xac]
mov eax, dword [edx + ecx*4]
call fcn.00480d20
mov edx, dword [esp + 0xe8]
add edx, eax
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], edx
cmp edx, eax
jae 0x4856fa
mov ecx, dword [esp + 0xe4]
inc ecx
mov dword [esp + 0xe0], ecx
mov ebx, dword [esp + 0x28]
lea edx, [esp + 0xb8]
push edx
call fcn.0047d600
mov ecx, dword [esp + 0xe8]
mov eax, 1
mov word [esp + 0xd8], ax
mov eax, dword [esp + 0xe4]
add esp, 4
cmp eax, ecx
ja 0x485848
mov edx, dword [esp + 0xe8]
mov esi, dword [esp + 0x78]
cmp edx, esi
ja 0x485848
cmp eax, ecx
jne 0x485667
cmp edx, esi
jne 0x485848
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0xa0]
cmp dword [edx + eax*4], 0
je 0x4857c1
cmp dword [esp + 0x94], 0
je 0x485714
mov esi, dword [esp + 0xb4]
call fcn.0047d590
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x9c]
mov edx, dword [ecx + eax*4]
mov ecx, dword [esp + 0xa0]
mov ecx, dword [ecx + eax*4]
add ecx, dword [esp + 0x94]
mov esi, dword [esp + 0xb4]
push edx
call fcn.00480df0
mov eax, dword [esp + 0xb8]
mov cl, byte [esp + 0x4b]
add esp, 4
mov byte [eax + 0x1f], cl
jmp 0x4857e3
mov dword [eax + ecx*4], 0
mov edx, dword [esp + 0xe8]
mov ecx, dword [esp + 0xac]
inc ecx
mov dword [esp + 0xac], ecx
cmp ecx, dword [esp + 0xa4]
jl 0x48556b
jmp 0x485611
mov eax, dword [ecx + eax*4]
call fcn.00480d20
mov ebx, dword [esp + 0xb4]
mov dword [esp + 0xa8], eax
lea eax, [esp + 0xb8]
call fcn.0047dbf0
mov edx, dword [esp + 0x90]
movzx eax, byte [edx + 0x17]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0xa0]
push eax
mov eax, dword [esp + 0x90]
push ecx
mov ecx, dword [edx + eax*4]
mov eax, dword [esp + 0xa0]
push ecx
lea ebx, [esp + 0xc4]
call fcn.0047e020
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
jne 0x48426a
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x8c]
mov esi, dword [esp + 0xb4]
mov dword [esp + 0xb0], ecx
mov edx, dword [edx + eax*4]
push edx
call fcn.00480df0
mov eax, dword [esp + 0xb8]
mov cl, byte [esp + 0x4b]
mov ebx, dword [esp + 0x2c]
add esp, 4
mov byte [eax + 0x1f], cl
jmp 0x4857e3
cmp byte [edi + 1], 0xf8
jne 0x4857e3
mov edx, dword [edi + 0x10]
mov ebx, dword [esp + 0xb4]
push 0x800
push edx
call fcn.0047db40
mov ebx, dword [esp + 0x30]
add esp, 8
cmp dword [esp + 0xdc], 0
je 0x48582f
mov eax, dword [esp + 0xb4]
mov ecx, 0xe7ff
and word [eax + 0x1c], cx
mov eax, dword [esp + 0xb4]
mov edx, 0x200
or word [eax + 0x1c], dx
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0x14], ecx
mov edx, dword [esp + 0xdc]
mov eax, dword [esp + 0xb4]
mov dword [eax + 0x24], edx
mov ecx, dword [esp + 0xb4]
push ecx
call fcn.0047d350
add esp, 4
mov dword [esp + 0x24], eax
jmp case.0x483d2a.17
mov eax, 0xd90f
call fcn.004c0720
mov dword [esp + 0x24], eax
jmp case.0x483d2a.17
mov ecx, dword [edi + 0x10]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x78], ecx
mov edi, dword [edi + 4]
lea edx, [edi + edi*4]
lea esi, [eax + edx*8]
mov al, byte [ecx]
mov byte [esp + 0x7c], al
test al, al
je 0x4858b9
lea esp, [esp]
inc ecx
mov dword [esp + 0x78], ecx
mov ecx, 0x4000
test word [esi + 0x1c], cx
je 0x485899
call fcn.0047d3c0
mov al, byte [esp + 0x7c]
mov edx, dword [esp + 0x47]
push edx
mov ecx, esi
call fcn.00483ad0
mov ecx, dword [esp + 0x7c]
mov al, byte [ecx]
add esp, 4
add esi, 0x28
mov byte [esp + 0x7c], al
test al, al
jne 0x485880
inc ecx
mov dword [esp + 0x78], ecx
jmp case.0x483d2a.17
xor eax, eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov eax, dword [edi + 4]
mov dword [esp + 0xac], eax
mov ecx, dword [edi + 0x10]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea ebx, [eax + edx*8]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xa4], ebx
mov eax, dword [edi + 8]
lea ecx, [eax + eax*4]
mov dword [esp + 0xac], eax
lea eax, [ebx + ecx*8 - 0x28]
movzx ecx, byte [edx + 0x64]
mov esi, ebx
mov dword [esp + 0xa8], eax
mov dword [esp + 0xb4], ecx
mov dword [esp + 0x7c], esi
cmp ebx, eax
ja 0x485a43
lea esp, [esp]
cmp dword [esp + 0xb0], 0
je 0x485996
mov edx, dword [esp + 0x47]
mov ecx, esi
sub ecx, ebx
push edx
mov eax, 0x66666667
imul ecx
mov ecx, dword [esp + 0xb4]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov al, byte [eax + ecx]
mov ecx, esi
call fcn.00483ad0
mov ebx, dword [esp + 0xa8]
mov esi, dword [esp + 0x80]
add esp, 4
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x4859b7
cmp dword [esi + 0x18], 0
jle 0x4859b7
call fcn.0047d3c0
mov ebx, dword [esp + 0xa4]
mov esi, dword [esp + 0x7c]
mov eax, dword [esp + 0xb4]
push eax
mov edx, esi
call fcn.00480c40
add esp, 4
mov dword [esp + 0xa0], eax
call fcn.00480d20
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0xbc], eax
cdq
add dword [esp + 0x80], eax
push 0
push ecx
adc dword [esp + 0x8c], edx
call fcn.0046bf20
add dword [esp + 0x90], eax
mov edx, 0x4000
add esp, 8
test word [esi + 0x1c], dx
je 0x485a1a
mov eax, dword [esi]
add dword [esp + 0x98], eax
jmp 0x485a2f
cmp dword [esp + 0xbc], 0
je 0x485a2f
mov dword [esp + 0x98], 0
add esi, 0x28
mov dword [esp + 0x7c], esi
cmp esi, dword [esp + 0xa8]
jbe 0x485950
mov esi, dword [esp + 0x88]
mov eax, esi
cdq
push edx
push eax
call fcn.0046bf20
mov ebx, eax
add esi, ebx
mov eax, esi
cdq
push edx
push eax
mov dword [esp + 0xac], ebx
mov dword [esp + 0x98], esi
call fcn.0046bf20
add esp, 0x10
cmp ebx, eax
jge 0x485a7f
inc esi
mov dword [esp + 0x88], esi
mov eax, esi
cdq
mov esi, eax
mov eax, dword [esp + 0x98]
mov ecx, edx
cdq
sub esi, eax
sbb ecx, edx
add esi, dword [esp + 0x80]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0x84]
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], ecx
mov eax, dword [edx + 0x48]
cdq
cmp ecx, edx
jg 0x48493c
jl 0x485ac8
cmp esi, eax
ja 0x48493c
mov edi, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
lea eax, [edi + edi*4]
push 0
lea edi, [ecx + eax*8]
push esi
push edi
mov dword [esp + 0x48], edi
call fcn.0047d220
add esp, 0xc
test eax, eax
jne 0x484218
mov eax, dword [esp + 0x88]
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x78], ecx
cmp eax, 0x80
jae 0x485b0d
mov dl, al
mov byte [ecx], dl
mov eax, 1
jmp 0x485b12
call fcn.0046bd00
mov ecx, dword [esp + 0xa4]
movzx esi, al
mov eax, dword [esp + 0xa8]
mov edx, ecx
mov dword [esp + 0xb8], esi
mov dword [esp + 0x7c], edx
cmp ecx, eax
ja 0x485ba9
jmp 0x485b40
mov eax, dword [esp + 0xb4]
push eax
call fcn.00480c40
add esp, 4
mov dword [esp + 0xa0], eax
cmp eax, 0x80
jae 0x485b6e
mov edx, dword [esp + 0x78]
mov cl, al
mov byte [esi + edx], cl
mov eax, 1
jmp 0x485b79
mov ecx, dword [esp + 0x78]
add ecx, esi
call fcn.0046bd00
mov esi, dword [esp + 0xb8]
movzx edx, al
mov eax, dword [esp + 0xa8]
add esi, edx
mov edx, dword [esp + 0x7c]
add edx, 0x28
mov dword [esp + 0xb8], esi
mov dword [esp + 0x7c], edx
cmp edx, eax
jbe 0x485b40
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x7c], ecx
cmp ecx, eax
ja 0x485bf8
mov eax, dword [esp + 0x90]
mov edx, dword [esp + 0x78]
sub eax, esi
push eax
mov eax, dword [esp + 0xb8]
lea ebx, [esi + edx]
call fcn.00480d40
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0xbc]
add ecx, 0x28
add esi, eax
add esp, 4
mov dword [esp + 0xb8], esi
mov dword [esp + 0x7c], ecx
cmp ecx, dword [esp + 0xa8]
jbe 0x485bb1
mov eax, dword [esp + 0x90]
mov ecx, 0x410
mov dword [edi + 0x18], eax
mov word [edi + 0x1c], cx
mov dword [edi + 0x20], 0
mov eax, dword [esp + 0x98]
test eax, eax
je 0x485c28
mov edx, 0x4410
mov dword [edi], eax
mov word [edi + 0x1c], dx
mov byte [edi + 0x1f], 1
jmp 0x48426a
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax]
mov dword [esp + 0x80], eax
cmp eax, edx
je 0x485c6d
lea ecx, [esp + 0x78]
push ecx
call fcn.0047b150
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x28], eax
mov dword [esi], edx
mov eax, dword [esp + 0x80]
add esp, 4
mov dword [esi + 4], eax
jmp case.0x483d2a.17
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], edx
mov dword [esi], edx
mov eax, dword [esp + 0x7c]
mov dword [esi + 4], eax
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov dword [esp + 0x78], eax
mov esi, dword [edi + 0x10]
mov dword [esp + 0x7c], esi
cmp eax, edx
jne 0x485d6d
cmp dword [ecx + 0x90], edx
jle 0x485cc2
push str.cannot_open_savepoint___SQL_statements_in_progress
mov eax, dword [esp + 0x30]
lea esi, [ebx + 0x5c]
call fcn.004693e0
add esp, 4
mov dword [esp + 0x24], 5
jmp case.0x483d2a.17
mov ecx, esi
call fcn.0046b0f0
mov esi, dword [esp + 0x2c]
lea ecx, [eax + 0x19]
mov dword [esp + 0x80], eax
call fcn.004691e0
mov dword [esp + 0x84], eax
test eax, eax
je 0x48426a
lea ecx, [eax + 0x18]
mov dword [eax], ecx
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x84]
inc edx
push edx
mov edx, dword [ecx]
push eax
push edx
call fcn.004ee090
mov eax, esi
add esp, 0xc
cmp byte [eax + 0x1c], 0
je 0x485d25
mov byte [eax + 0x1c], 0
mov byte [eax + 0x1d4], 1
jmp 0x485d2b
inc dword [eax + 0x1cc]
mov ecx, dword [eax + 0x1c8]
mov edx, dword [esp + 0x84]
mov dword [edx + 0x10], ecx
mov ecx, dword [esp + 0x84]
mov edx, dword [eax + 0x1d8]
mov dword [eax + 0x1c8], ecx
mov ecx, dword [esp + 0x84]
mov dword [ecx + 8], edx
mov edx, dword [eax + 0x1dc]
mov eax, dword [esp + 0x84]
mov dword [eax + 0xc], edx
jmp 0x48426a
mov dword [esp + 0x90], edx
mov edi, dword [ecx + 0x1c8]
mov dword [esp + 0x88], edi
cmp edi, edx
je 0x485da7
mov ecx, dword [edi]
mov edx, esi
call fcn.0046b300
test eax, eax
je 0x485dc9
inc dword [esp + 0x90]
mov edi, dword [edi + 0x10]
mov dword [esp + 0x88], edi
test edi, edi
jne 0x485d85
mov eax, dword [esp + 0x2c]
push esi
push str.no_such_savepoint:__s
lea esi, [ebx + 0x5c]
call fcn.004693e0
add esp, 8
mov dword [esp + 0x24], 1
jmp case.0x483d2a.17
mov edx, dword [esp + 0x2c]
cmp dword [edx + 0x90], 0
jg 0x485f8a
mov eax, dword [esp + 0x78]
cmp eax, 2
jne 0x485df0
cmp dword [edx + 0x8c], 1
jg 0x485f91
cmp dword [edi + 0x10], 0
jne 0x485e4e
cmp byte [edx + 0x1d4], 0
je 0x485e4e
mov dword [esp + 0x40], 1
cmp eax, 1
jne 0x485e56
push eax
mov ecx, ebx
call fcn.00480450
mov esi, eax
add esp, 4
test esi, esi
jne 0x4849b2
mov esi, dword [esp + 0x2c]
mov eax, ebx
mov byte [esi + 0x1c], 1
call fcn.004804b0
cmp eax, 5
je 0x488d02
mov ecx, esi
mov byte [ecx + 0x1d4], 0
mov edx, dword [ebx + 0x58]
mov dword [esp + 0x24], edx
jmp 0x485ef0
mov dword [esp + 0x40], 0
mov ecx, dword [edx + 0x1cc]
sub ecx, dword [esp + 0x90]
xor eax, eax
dec ecx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
cmp dword [edx + 4], eax
jle 0x485ec9
jmp 0x485e87
mov ecx, dword [esp + 0x90]
mov edx, dword [edx + 8]
push ecx
mov ecx, dword [esp + 0x7c]
add eax, eax
mov esi, dword [edx + eax*8 + 4]
push ecx
call fcn.00476c60
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc2
mov eax, dword [esp + 0x94]
mov edx, dword [esp + 0x2c]
inc eax
mov dword [esp + 0x94], eax
cmp eax, dword [edx + 4]
jl 0x485e80
mov edi, dword [esp + 0x88]
cmp dword [esp + 0x78], 2
mov esi, dword [esp + 0x2c]
jne 0x485ef7
test dword [esi + 0xc], 0x200
je 0x485ef7
mov eax, esi
call fcn.00481730
push 0
mov eax, esi
call fcn.00495120
add esp, 4
mov edi, dword [esp + 0x88]
cmp dword [esi + 0x1c8], edi
je 0x485f3c
nop
mov eax, dword [esi + 0x1c8]
mov dword [esp + 0x8c], eax
mov eax, dword [eax + 0x10]
mov dword [esi + 0x1c8], eax
mov ecx, dword [esp + 0x8c]
push ecx
push esi
call fcn.00468fe0
dec dword [esi + 0x1cc]
mov edi, dword [esp + 0x90]
add esp, 8
cmp dword [esi + 0x1c8], edi
jne 0x485f00
cmp dword [esp + 0x78], 1
jne 0x485f73
mov edx, dword [edi + 0x10]
mov dword [esi + 0x1c8], edx
mov eax, dword [esp + 0x88]
push eax
push esi
call fcn.00468fe0
add esp, 8
cmp dword [esp + 0x40], 0
jne 0x48426a
dec dword [esi + 0x1cc]
jmp 0x48426a
mov ecx, dword [edi + 8]
mov dword [esi + 0x1d8], ecx
mov edx, dword [edi + 0xc]
mov dword [esi + 0x1dc], edx
jmp 0x48426a
cmp dword [esp + 0x78], 2
jne 0x485f98
mov eax, str.rollback
jmp 0x485f9d
mov eax, str.release
push eax
push str.cannot__s_savepoint___SQL_statements_in_progress
lea esi, [ebx + 0x5c]
mov eax, edx
call fcn.004693e0
add esp, 8
mov dword [esp + 0x24], 5
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov dword [esp + 0x78], eax
mov edi, dword [edi + 8]
mov dword [esp + 0x7c], edi
cmp eax, edx
je 0x485ff7
cmp byte [ecx + 0x1c], 0
jne 0x485ff7
mov esi, 1
mov dword [esp + 0x80], esi
cmp edi, edx
je 0x486015
cmp dword [ecx + 0x8c], esi
jle 0x485ffe
push str.cannot_rollback_transaction___SQL_statements_in_progress
jmp 0x485ca6
mov dword [esp + 0x80], edx
movzx ecx, byte [ecx + 0x1c]
cmp eax, ecx
jne 0x488d1a
cmp eax, edx
jne 0x486027
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x486035
cmp dword [ecx + 0x90], edx
jle 0x485ffe
push str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x485ca6
mov eax, str.cannot_rollback___no_transaction_is_active
cmp edi, edx
jne 0x486035
mov eax, str.cannot_commit___no_transaction_is_active
push eax
mov eax, dword [esp + 0x30]
lea esi, [ebx + 0x5c]
call fcn.004693e0
add esp, 4
mov dword [esp + 0x24], 1
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ecx + 8]
add eax, eax
mov eax, dword [ecx + eax*8 + 4]
mov dword [esp + 0x78], eax
cmp eax, edx
je case.0x483d2a.17
mov edx, dword [edi + 8]
push edx
push eax
call fcn.00475ca0
add esp, 8
mov dword [esp + 0x24], eax
cmp eax, 5
je 0x488d8c
test eax, eax
jne 0x488dc2
cmp dword [edi + 8], eax
je case.0x483d2a.17
cmp byte [ebx + 0x66], al
je case.0x483d2a.17
mov esi, dword [esp + 0x2c]
cmp byte [esi + 0x1c], al
je 0x4860b4
cmp dword [esi + 0x8c], 1
jle case.0x483d2a.17
cmp dword [ebx + 0xd0], 0
jne 0x4860d5
mov ecx, dword [esi + 0x1cc]
inc dword [esi + 0x1d0]
add ecx, dword [esi + 0x1d0]
mov dword [ebx + 0xd0], ecx
mov edx, dword [ebx + 0xd0]
mov eax, dword [esp + 0x78]
push edx
call fcn.00476c00
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0x1d8]
mov dword [ebx + 0xc8], eax
mov ecx, dword [esi + 0x1dc]
add esp, 4
mov dword [ebx + 0xcc], ecx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x7c], eax
mov edi, dword [edi + 0xc]
lea edx, [esp + 0x78]
mov dword [esp + 0x80], edi
push edx
mov edx, dword [ecx + 8]
add eax, eax
mov eax, dword [edx + eax*8 + 4]
push edi
call fcn.0047b050
mov eax, dword [esp + 0x80]
cdq
add esp, 8
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x2c]
shl eax, 4
add eax, dword [ecx + 8]
mov dword [esp + 0x78], eax
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea esi, [eax + edx*8]
call fcn.0047d880
mov ecx, dword [esi]
mov edx, dword [edi + 8]
mov eax, dword [esp + 0x78]
mov eax, dword [eax + 4]
push ecx
push edx
call fcn.0047b0c0
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 8]
add esp, 8
cmp eax, 1
jne 0x4861a4
mov ecx, dword [esp + 0x78]
mov eax, dword [esi]
mov edx, dword [ecx + 0xc]
mov dword [edx], eax
mov eax, dword [esp + 0x2c]
or dword [eax + 0xc], 0x200
jmp 0x4861b5
cmp eax, 2
jne 0x4861b5
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0xc]
mov al, byte [esi]
mov byte [edx + 0x48], al
cmp dword [edi + 4], 1
jne case.0x483d2a.17
mov eax, dword [esp + 0x2c]
call fcn.00481730
mov byte [ebx + 0x62], 0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ecx + 8]
add eax, eax
mov eax, dword [ecx + eax*8 + 4]
mov dword [esp + 0x7c], eax
cmp eax, edx
je 0x4861f6
lea edx, [esp + 0x78]
push edx
push 1
call fcn.0047b050
add esp, 8
jmp 0x4861fa
mov dword [esp + 0x78], edx
mov eax, dword [esp + 0x78]
cmp eax, dword [edi + 8]
je case.0x483d2a.17
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx + 0x5c]
mov esi, dword [esp + 0x2c]
push edx
push esi
call fcn.00468fe0
push esi
mov ebx, str.database_schema_has_changed
call fcn.00469360
mov ecx, dword [esp + 0x34]
mov dword [ecx + 0x5c], 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 [esp + 0x78]
je 0x48624f
push edi
mov eax, esi
call fcn.00495120
add esp, 4
mov eax, esi
call fcn.00481730
mov dword [esp + 0x24], 0x11
jmp 0x48426a
cmp byte [ebx + 0x62], 0
je 0x486276
mov dword [esp + 0x24], 4
jmp case.0x483d2a.17
mov edx, dword [esp + 0x2c]
xor ecx, ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov esi, dword [edi + 8]
mov dword [esp + 0x80], esi
mov eax, dword [edi + 0xc]
mov dword [esp + 0x84], eax
shl eax, 4
add eax, dword [edx + 8]
mov dword [esp + 0x94], eax
mov edx, dword [eax + 4]
mov dword [esp + 0x8c], edx
cmp byte [edi], 0x27
jne 0x4862cf
mov dword [esp + 0x88], 1
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x48]
cmp al, byte [ebx + 0x64]
jae 0x4862d6
mov byte [ebx + 0x64], al
jmp 0x4862d6
mov dword [esp + 0x88], ecx
cmp byte [edi + 3], cl
je 0x486300
mov edx, dword [esp + 0x30]
lea ecx, [esi + esi*4]
lea esi, [edx + ecx*8]
call fcn.0047d880
mov esi, dword [esi]
mov dword [esp + 0x80], esi
cmp esi, 2
jl 0x488da0
mov ecx, dword [esp + 0x78]
mov al, byte [edi + 1]
cmp al, 0xfa
jne 0x486327
mov eax, dword [edi + 0x10]
mov ecx, dword [ebx]
mov dword [esp + 0x7c], eax
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0xc]
mov dl, byte [ecx + 0x49]
mov byte [eax + 4], dl
mov eax, dword [esp + 0x7c]
movzx ecx, word [eax + 6]
inc ecx
jmp 0x48632e
cmp al, 0xf2
jne 0x486332
mov ecx, dword [edi + 0x10]
mov dword [esp + 0x78], ecx
mov edx, dword [esp + 0x84]
mov ebx, dword [edi + 4]
mov edi, dword [esp + 0x28]
push 1
push edx
push ecx
call fcn.004838f0
add esp, 0xc
mov dword [esp + 0x90], eax
test eax, eax
je 0x484218
mov byte [eax + 0x14], 1
mov eax, dword [esp + 0x90]
mov ecx, dword [eax]
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x88]
mov esi, dword [esp + 0x8c]
push ecx
mov ecx, dword [esp + 0x84]
push edx
push eax
push ecx
call fcn.00476d70
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x8c]
add esp, 0x10
mov dword [esp + 0x24], eax
mov dword [edx + 0x28], ecx
cmp eax, 0x10
jne 0x4863bc
mov edx, dword [esp + 0x90]
mov dword [edx], 0
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x38]
cmp byte [eax + 1], 0xfa
mov edx, dword [esp + 0x90]
setne cl
mov byte [edx + 0x16], cl
mov eax, dword [esp + 0x90]
cmp byte [eax + 0x16], 0
mov ebx, edi
sete cl
mov byte [eax + 0x17], cl
jmp case.0x483d2a.17
mov edx, dword [edi + 8]
mov ebx, dword [edi + 4]
mov edi, dword [esp + 0x28]
push 1
push 0xffffffffffffffff
push edx
call fcn.004838f0
add esp, 0xc
mov dword [esp + 0x78], eax
test eax, eax
je 0x484218
mov ecx, dword [esp + 0x2c]
mov ebx, 1
mov byte [eax + 0x14], bl
mov eax, dword [esp + 0x78]
add eax, 0x20
push eax
push 0x1f4
push ebx
mov eax, 0x41e
xor edx, edx
call fcn.004bfa50
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
jne 0x486511
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0x20]
push ebx
push edx
call fcn.00475ca0
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
jne 0x486511
mov edi, dword [esp + 0x38]
cmp dword [edi + 0x10], eax
je 0x4864ed
mov ecx, dword [esp + 0x78]
lea eax, [esp + 0x64]
push 2
push eax
mov eax, dword [ecx + 0x20]
call fcn.0047ab50
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
jne 0x4864d2
mov eax, dword [esp + 0x78]
mov edx, dword [eax]
mov ecx, dword [edi + 0x10]
mov esi, dword [eax + 0x20]
push edx
mov edx, dword [esp + 0x68]
push ecx
push ebx
push edx
call fcn.00476d70
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x34], eax
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x28], eax
mov eax, dword [edx]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0xc]
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 0x28]
mov dl, byte [edx + 0x49]
add esp, 0x10
mov byte [ecx + 4], dl
mov eax, dword [esp + 0x78]
mov byte [eax + 0x16], 0
mov eax, dword [esp + 0x78]
cmp byte [eax + 0x16], 0
sete cl
mov byte [eax + 0x17], cl
jmp 0x48426a
mov eax, dword [esp + 0x78]
mov ecx, dword [eax]
mov esi, dword [eax + 0x20]
push ecx
push 0
push ebx
push ebx
call fcn.00476d70
mov edx, dword [esp + 0x88]
add esp, 0x10
mov dword [esp + 0x24], eax
mov byte [edx + 0x16], bl
mov eax, dword [esp + 0x78]
cmp byte [eax + 0x16], 0
sete cl
mov byte [eax + 0x17], cl
jmp 0x48426a
mov edx, dword [edi + 0xc]
mov ebx, dword [edi + 4]
mov edi, dword [esp + 0x28]
push 0
push 0xffffffffffffffff
push edx
call fcn.004838f0
add esp, 0xc
mov dword [esp + 0x78], eax
test eax, eax
je 0x484218
mov cl, 1
mov byte [eax + 0x14], cl
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x78]
mov dword [eax + 0x24], edx
mov edx, dword [esp + 0x78]
mov byte [edx + 0x16], cl
mov eax, dword [esp + 0x78]
mov byte [eax + 0x17], 0
mov ebx, edi
jmp case.0x483d2a.17
mov ebx, dword [esp + 0x28]
mov ecx, dword [edi + 4]
mov edx, dword [ebx + 0x34]
mov eax, dword [edx + ecx*4]
call fcn.0047fa90
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov dword [ecx + eax*4], 0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x80], eax
cmp dword [eax], edx
je 0x483d3f
movzx edx, byte [edi]
mov dword [esp + 0x7c], edx
mov byte [eax + 0x14], 0
mov ecx, dword [esp + 0x80]
cmp byte [ecx + 0x16], 0
je 0x486799
mov edi, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
lea eax, [edi + edi*4]
lea edi, [ecx + eax*8]
call fcn.004839f0
mov eax, edi
call fcn.0047d6d0
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0xa8], eax
mov byte [edx + 0x11], 0
movzx eax, word [edi + 0x1c]
test al, 4
jne 0x486722
test al, 8
jne 0x48661b
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 8]
dec eax
mov dword [esp + 0x34], eax
jmp 0x48426a
xor esi, esi
cmp dword [esp + 0xa8], esi
jne 0x4866ce
mov eax, SysReAllocString
cmp dword [esp + 0xac], eax
jne 0x4866ce
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], esi
fild qword [esp + 0x70]
fcomp qword [edi + 8]
fnstsw ax
test ah, 0x41
je 0x48665e
fldz
fcomp qword [edi + 8]
fnstsw ax
test ah, 5
jp 0x4866ce
fldz
mov dword [esp + 0x78], 1
fcomp qword [edi + 8]
fnstsw ax
test ah, 0x41
jne 0x48668d
cmp dword [esp + 0x7c], 0x2d
jl 0x4866bd
mov ecx, dword [esp + 0x80]
mov esi, dword [ecx]
lea edi, [esp + 0x78]
call fcn.00477900
jmp 0x4866a6
cmp dword [esp + 0x7c], 0x2c
jg 0x4866bd
mov edx, dword [esp + 0x80]
mov esi, dword [edx]
lea edi, [esp + 0x78]
call fcn.00477930
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc2
cmp dword [esp + 0x78], 0
je 0x48426a
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 8]
dec eax
mov dword [esp + 0x34], eax
jmp 0x48426a
mov eax, dword [esp + 0x7c]
cmp eax, 0x2b
je 0x486700
cmp eax, 0x2d
je 0x486700
fild qword [esp + 0xa8]
fcomp qword [edi + 8]
fnstsw ax
test ah, 0x41
jne 0x486724
or eax, 0xffffffff
add dword [esp + 0xa8], eax
adc dword [esp + 0xac], eax
jmp 0x486724
fild qword [esp + 0xa8]
fcomp qword [edi + 8]
fnstsw ax
test ah, 5
jp 0x486724
add dword [esp + 0xa8], 1
adc dword [esp + 0xac], esi
jmp 0x486724
xor esi, esi
mov edx, dword [esp + 0xac]
mov eax, dword [esp + 0xa8]
lea ecx, [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x84]
push esi
push edx
mov edx, dword [ecx]
push eax
push esi
push edx
call fcn.00477970
add esp, 0x18
mov dword [esp + 0x24], eax
cmp eax, esi
jne 0x488dc2
mov edi, dword [esp + 0x38]
cmp dword [esp + 0x78], esi
jne 0x48682c
mov eax, dword [esp + 0x80]
mov byte [eax + 0x11], 1
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x80]
mov dword [edx + 8], ecx
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0x80]
mov dword [ecx + 0xc], eax
jmp 0x48682c
mov edx, dword [edi + 0x10]
mov dword [esp + 0xa0], edx
mov eax, dword [ecx + 0x28]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x7c]
dec eax
and eax, 1
add eax, eax
add eax, eax
add eax, eax
mov word [esp + 0x8c], dx
mov word [esp + 0x8e], ax
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea esi, [eax + edx*8]
mov edx, 0x4000
mov dword [esp + 0x98], esi
test word [esi + 0x1c], dx
je 0x4867f6
call fcn.0047d3c0
mov ecx, dword [esp + 0x80]
lea eax, [esp + 0x78]
push eax
mov eax, dword [ecx]
push 0
push 0
push 0
lea edx, [esp + 0x98]
push edx
push eax
call fcn.00477970
add esp, 0x18
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc2
mov ecx, dword [esp + 0x80]
mov byte [ecx + 0x11], al
xor esi, esi
mov edx, dword [esp + 0x80]
mov byte [edx + 0x15], 0
mov eax, dword [esp + 0x80]
mov dword [eax + 0x44], esi
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
cmp ecx, 0x2d
jl 0x486892
cmp eax, esi
jl 0x486862
jne 0x486859
cmp ecx, 0x2e
je 0x486862
mov dword [esp + 0x78], esi
jmp 0x48426a
mov edx, dword [esp + 0x80]
mov eax, dword [edx]
lea ecx, [esp + 0x78]
push ecx
push eax
call fcn.00477d60
add esp, 8
mov dword [esp + 0x24], eax
cmp eax, esi
jne 0x488dc2
mov ecx, dword [esp + 0x80]
mov byte [ecx + 0x11], 0
jmp 0x4868e3
cmp eax, esi
jg 0x4868b5
jne 0x48689d
cmp ecx, 0x2b
je 0x4868b5
mov edx, dword [esp + 0x80]
mov eax, dword [edx]
xor ecx, ecx
cmp byte [eax + 0x43], 1
setne cl
mov dword [esp + 0x78], ecx
jmp 0x4868e3
mov eax, dword [esp + 0x80]
mov ecx, dword [eax]
lea edx, [esp + 0x78]
push edx
push ecx
call fcn.00477f00
add esp, 8
mov dword [esp + 0x24], eax
cmp eax, esi
jne 0x488dc2
mov edx, dword [esp + 0x80]
mov byte [edx + 0x11], 0
mov ebx, dword [esp + 0x28]
cmp dword [esp + 0x78], esi
je case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x78], eax
cmp dword [eax], edx
je case.0x483d2a.17
mov byte [eax + 0x14], 0
mov edi, dword [edi + 8]
mov eax, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea eax, [eax + edx*8]
call fcn.0047d6d0
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0x18], eax
mov eax, dword [esp + 0x78]
mov dword [eax + 0x1c], edx
mov ecx, dword [esp + 0x78]
mov byte [ecx + 0x11], 0
mov edx, dword [esp + 0x78]
mov byte [edx + 0x15], 1
jmp case.0x483d2a.17
mov ecx, dword [ebx + 0x34]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x78], edx
mov eax, dword [edi + 4]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x7c], eax
cmp dword [eax], 0
mov ecx, dword [edi + 0xc]
lea ecx, [ecx + ecx*4]
lea esi, [esi + ecx*8]
je 0x486a6c
cmp dword [edi + 0x10], 0
jle 0x4869b3
mov edx, dword [eax + 0x28]
mov dword [esp + 0x88], edx
mov cx, word [edi + 0x10]
mov word [esp + 0x8c], cx
mov edx, 0x10
lea ecx, [esp + 0x88]
mov dword [esp + 0x98], esi
mov word [esp + 0x8e], dx
mov dword [esp + 0x84], ecx
jmp 0x4869ff
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x4869c7
call fcn.0047d3c0
mov eax, dword [esp + 0x7c]
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x18]
mov eax, dword [eax + 0x28]
push ecx
push edx
push eax
mov edx, 0x97
lea eax, [esp + 0xac]
call fcn.00481020
add esp, 0xc
mov dword [esp + 0x84], eax
test eax, eax
je 0x484218
or word [eax + 6], 0x10
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x84]
mov eax, dword [eax]
lea ecx, [esp + 0x80]
push ecx
push 0
push 0
push 0
push edx
push eax
call fcn.00477970
add esp, 0x18
cmp dword [edi + 0x10], 0
mov dword [esp + 0x24], eax
jne 0x486a3a
mov ebx, dword [esp + 0x84]
call fcn.004811b0
mov ebx, dword [esp + 0x28]
cmp dword [esp + 0x24], 0
jne case.0x483d2a.17
mov edx, dword [esp + 0x7c]
xor ecx, ecx
cmp dword [esp + 0x80], ecx
sete cl
mov dword [esp + 0x78], ecx
mov byte [edx + 0x15], 0
mov eax, dword [esp + 0x7c]
mov dword [eax + 0x44], 0
mov edx, dword [esp + 0x78]
cmp byte [edi], 0x31
jne 0x486a86
test edx, edx
je case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
test edx, edx
jne case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
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 [ebx + 0x34]
mov dword [esp + 0x88], ecx
mov edx, dword [edi + 4]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x7c], eax
xor ecx, ecx
mov dword [eax + 0x40], ecx
mov edx, dword [esp + 0x7c]
mov dword [edx + 0x44], ecx
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
mov edx, dword [eax + 0x28]
mov cx, word [edx + 6]
xor edx, edx
xor eax, eax
cmp dx, cx
mov edx, dword [esp + 0x88]
mov word [esp + 0x84], cx
mov word [esp + 0x78], ax
jae 0x486b23
movzx ebx, ax
lea ebx, [ebx + ebx*4]
test byte [edx + ebx*8 + 0x1c], 1
jne 0x486be8
inc ax
mov word [esp + 0x78], ax
cmp ax, cx
jb 0x486b02
mov ebx, dword [esp + 0x28]
cmp dword [esp + 0x80], 0
je case.0x483d2a.17
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 0x28]
mov eax, dword [esp + 0x84]
mov dword [esp + 0x90], ecx
inc eax
mov ecx, 0x20
mov word [esp + 0x94], ax
mov word [esp + 0x96], cx
mov dword [esp + 0xa0], edx
call fcn.0047d880
mov ecx, dword [esp + 0x7c]
mov edx, dword [esi]
add ecx, 0x40
push ecx
push 0
mov dword [esp + 0xb0], edx
mov eax, dword [esi + 4]
push 0
push 0
lea edx, [esp + 0xa0]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x90]
push edx
push eax
call fcn.00477970
add esp, 0x18
test byte [esp + 0x96], 0x20
mov dword [esp + 0x24], eax
jne 0x483d3f
mov eax, dword [esp + 0x98]
cmp eax, dword [esp + 0xa8]
jne 0x486bd7
mov ecx, dword [esp + 0x9c]
cmp ecx, dword [esp + 0xac]
je 0x483d3f
mov dword [esi], eax
mov edx, dword [esp + 0x9c]
mov dword [esi + 4], edx
jmp case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x80], 0
jmp 0x48426a
mov eax, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
mov edx, dword [edi + 4]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov eax, dword [ebx + 0x34]
mov ecx, dword [eax + edx*4]
mov dword [esp + 0x78], ecx
mov eax, dword [ecx]
mov dword [esp + 0x7c], eax
test eax, eax
je 0x486cd0
mov dword [esp + 0x80], 0
mov ecx, dword [esi]
mov dword [esp + 0x88], ecx
mov edx, dword [esi + 4]
mov dword [esp + 0x8c], edx
lea edx, [esp + 0x80]
push edx
mov edx, dword [esp + 0x90]
push 0
push edx
push ecx
push 0
push eax
call fcn.00477970
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x3c], eax
mov eax, dword [esi]
mov dword [ecx + 8], eax
mov edx, dword [esi + 4]
mov eax, dword [esp + 0x90]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x90]
add esp, 0x18
cmp dword [esp + 0x80], 0
sete cl
mov byte [edx + 0x11], cl
mov eax, dword [esp + 0x78]
mov byte [eax + 0x14], 0
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0x44], 0
mov edx, dword [esp + 0x78]
mov byte [edx + 0x15], 0
mov eax, dword [esp + 0x80]
test eax, eax
je 0x486cc4
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0x40], eax
jmp case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
mov dword [ecx + 0x40], 0
jmp case.0x483d2a.17
mov ecx, dword [ebx + 0x34]
mov eax, dword [edi + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [eax + 0x30]
mov dword [esi], ecx
mov eax, dword [eax + 0x34]
mov dword [esi + 4], eax
mov ecx, dword [edi + 4]
mov eax, dword [ebx + 0x34]
mov eax, dword [eax + ecx*4]
add dword [eax + 0x30], 1
adc dword [eax + 0x34], edx
jmp case.0x483d2a.17
mov eax, dword [ebx + 0x34]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x84], edx
mov ecx, dword [edi + 4]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x80], eax
cmp dword [eax], edx
je 0x486fe5
mov dword [esp + 0x88], edx
cmp byte [eax + 0x13], 0
jne 0x486eed
mov ecx, eax
mov ecx, dword [ecx]
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x78], eax
mov ecx, dword [ecx + 0x1c]
mov edx, eax
or edx, ecx
mov dword [esp + 0x7c], ecx
jne 0x486df1
mov eax, dword [esp + 0x80]
mov esi, dword [eax]
lea edi, [esp + 0x84]
call fcn.00477930
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc2
cmp dword [esp + 0x84], eax
je 0x486d94
mov eax, 1
xor ecx, ecx
jmp 0x486de1
mov edx, dword [esp + 0x80]
mov esi, dword [edx]
lea ecx, [esp + 0x78]
push ecx
call fcn.00476ee0
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x7c]
add esp, 4
cmp eax, 0xffffffff
jne 0x486ddb
cmp ecx, 0x7fffffff
jne 0x486ddb
mov eax, dword [esp + 0x80]
mov byte [eax + 0x13], 1
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
jmp 0x486de9
add eax, 1
adc ecx, 0
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], eax
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x28]
mov edx, dword [edi + 0xc]
test edx, edx
je 0x486eae
mov ecx, dword [ebx + 0xd4]
test ecx, ecx
je 0x486e32
mov dword [esp + 0x90], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x486e24
mov ecx, eax
mov dword [esp + 0x90], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x486e14
mov edi, dword [edi + 0xc]
mov eax, dword [ecx + 0x10]
lea edx, [edi + edi*4]
lea esi, [eax + edx*8]
jmp 0x486e3c
lea ecx, [edx + edx*4]
mov edx, dword [esp + 0x30]
lea esi, [edx + ecx*8]
mov dword [esp + 0x8c], esi
call fcn.0047d880
mov edx, dword [esp + 0x8c]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
cmp eax, 0xffffffff
jne 0x486e65
cmp ecx, 0x7fffffff
je 0x488db0
mov esi, dword [esp + 0x80]
cmp byte [esi + 0x13], 0
jne 0x488db0
add eax, 1
adc ecx, 0
cmp dword [esp + 0x7c], ecx
jg 0x486e92
jl 0x486e8a
cmp dword [esp + 0x78], eax
jae 0x486e92
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
mov eax, dword [esp + 0x78]
mov dword [edx], eax
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x8c]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
cmp ecx, 0x7fffffff
jg 0x486ec5
jl 0x486ebd
cmp eax, 0xffffffff
jae 0x486ec5
add eax, 1
adc ecx, 0
jmp 0x486ec9
xor eax, eax
xor ecx, ecx
push ecx
push eax
mov eax, dword [esp + 0x88]
mov esi, dword [eax]
call fcn.00476dc0
mov eax, dword [esp + 0x88]
add esp, 8
cmp byte [eax + 0x13], 0
je 0x486fb9
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x30]
mov dword [esp + 0x78], ecx
mov edx, dword [eax + 0x34]
xor ecx, ecx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x88], ecx
xor esi, esi
cmp ecx, esi
jne 0x486f32
mov edx, dword [esp + 0x78]
mov eax, edx
and eax, 0xffffff
xor ecx, ecx
cmp eax, edx
jne 0x486f32
cmp ecx, dword [esp + 0x7c]
jne 0x486f32
add edx, 1
adc dword [esp + 0x7c], esi
mov dword [esp + 0x78], edx
jmp 0x486f57
lea eax, [esp + 0x78]
push eax
push 8
call fcn.0046a990
add esp, 8
cmp dword [esp + 0x88], 5
jge 0x486f57
and dword [esp + 0x78], 0xffffff
mov dword [esp + 0x7c], esi
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
lea ecx, [esp + 0x84]
push ecx
mov ecx, dword [esp + 0x84]
push esi
push edx
mov edx, dword [ecx]
push eax
push esi
push edx
call fcn.00477970
mov ecx, dword [esp + 0xa0]
inc ecx
add esp, 0x18
mov dword [esp + 0x24], eax
mov dword [esp + 0x88], ecx
cmp ecx, 0x64
jge 0x486fa8
cmp eax, esi
jne 0x486fb9
cmp dword [esp + 0x84], esi
je 0x486f0a
jmp 0x486fb9
cmp eax, esi
jne 0x486fb9
cmp dword [esp + 0x84], esi
je 0x488dba
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x3c]
mov byte [eax + 0x11], 0
mov ecx, dword [esp + 0x80]
mov byte [ecx + 0x15], 0
mov edx, dword [esp + 0x80]
mov dword [edx + 0x44], 0
mov eax, dword [esp + 0x78]
mov dword [esi], eax
mov ecx, dword [esp + 0x7c]
mov dword [esi + 4], ecx
jmp case.0x483d2a.17
mov eax, dword [edi + 8]
mov esi, dword [esp + 0x30]
lea edx, [eax + eax*4]
lea eax, [esi + edx*8]
mov dword [esp + 0x78], eax
mov edx, dword [edi + 4]
mov eax, dword [ebx + 0x34]
mov edx, dword [eax + edx*4]
mov dword [esp + 0x88], edx
cmp byte [edi], 0x36
mov eax, dword [edi + 0xc]
jne 0x487038
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
mov dword [esp + 0x7c], eax
mov esi, dword [eax]
mov dword [esp + 0x80], esi
mov edx, dword [eax + 4]
jmp 0x487042
cdq
mov esi, eax
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edx
xor edx, edx
test byte [edi + 3], 1
je 0x487054
inc dword [ebx + 0x6c]
test byte [edi + 3], 2
je 0x487067
mov dword [ecx + 0x30], esi
mov eax, dword [esp + 0x84]
mov dword [ecx + 0x34], eax
mov eax, dword [esp + 0x78]
test byte [eax + 0x1c], 1
je 0x48707f
mov dword [eax + 0x14], edx
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0x18], edx
mov eax, dword [esp + 0x78]
test byte [edi + 3], 0x10
je 0x487098
mov ecx, dword [esp + 0x88]
mov ecx, dword [ecx + 0x40]
mov dword [esp + 0x90], ecx
jmp 0x48709f
mov dword [esp + 0x90], edx
mov ecx, 0x4000
test word [eax + 0x1c], cx
je 0x4870ac
mov edx, dword [eax]
mov eax, dword [esp + 0x88]
mov dword [esp + 0x8c], edx
mov esi, dword [eax]
push 0
push 0
call fcn.00476dc0
movzx ecx, byte [edi + 3]
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x94]
and ecx, 8
push ecx
mov ecx, dword [eax + 0x18]
push edx
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x94]
push ecx
mov ecx, dword [esp + 0x94]
push edx
mov edx, dword [esp + 0xa0]
push eax
mov eax, dword [esp + 0xac]
push ecx
mov ecx, dword [edx]
push 0
call fcn.0047a480
mov ecx, dword [esp + 0xac]
mov byte [ecx + 0x11], 0
mov edx, dword [esp + 0xac]
mov byte [edx + 0x15], 0
mov ecx, dword [esp + 0xac]
add esp, 0x24
mov dword [esp + 0x24], eax
mov dword [ecx + 0x44], 0
test eax, eax
jne case.0x483d2a.17
mov edx, dword [esp + 0x2c]
cmp dword [edx + 0xb8], eax
je case.0x483d2a.17
cmp dword [edi + 0x10], eax
je case.0x483d2a.17
mov eax, dword [esp + 0x88]
mov edx, dword [eax + 4]
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 8]
add edx, edx
mov esi, dword [eax + edx*8]
mov dword [esp + 0x94], esi
mov edx, dword [edi + 0x10]
mov dword [esp + 0x98], edx
mov al, byte [edi + 3]
mov edi, dword [esp + 0x84]
and al, 4
movzx eax, al
push edi
mov edi, dword [esp + 0x84]
neg eax
sbb eax, eax
push edi
push edx
and eax, 5
add eax, 0x12
mov dword [esp + 0xa8], eax
mov edx, dword [ecx + 0xb4]
push esi
push eax
mov eax, dword [ecx + 0xb8]
push edx
call eax
add esp, 0x18
jmp case.0x483d2a.17
mov esi, dword [ebx + 0x34]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], edx
mov eax, dword [edi + 4]
mov esi, dword [esi + eax*4]
mov dword [esp + 0x80], esi
cmp dword [ecx + 0xb8], edx
je 0x4871f4
cmp dword [edi + 0x10], edx
je 0x4871f4
mov ecx, dword [esi + 8]
mov dword [esp + 0x78], ecx
mov edx, dword [esi + 0xc]
mov dword [esp + 0x7c], edx
call fcn.00480ba0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc6
push eax
push eax
mov eax, dword [esp + 0x88]
mov esi, dword [eax]
call fcn.00476dc0
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx]
add esp, 8
call fcn.0047a670
mov edx, dword [esp + 0x80]
mov dword [esp + 0x24], eax
mov dword [edx + 0x44], 0
test eax, eax
jne 0x48727d
mov edx, dword [esp + 0x2c]
mov ecx, dword [edx + 0xb8]
test ecx, ecx
je 0x48727d
mov eax, dword [edi + 0x10]
test eax, eax
je 0x48727d
mov esi, dword [esp + 0x7c]
push esi
mov esi, dword [esp + 0x7c]
push esi
mov esi, dword [edx + 8]
mov edx, dword [edx + 0xb4]
push eax
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + 4]
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.0x483d2a.17
inc dword [ebx + 0x6c]
jmp case.0x483d2a.17
mov eax, dword [ebx + 0x6c]
add dword [ecx + 0x40], eax
mov dword [ecx + 0x3c], eax
mov dword [ebx + 0x6c], edx
jmp case.0x483d2a.17
mov eax, dword [edi + 8]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov esi, dword [ecx + eax*4]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x78], esi
mov edx, dword [esi]
mov dword [esp + 0x7c], edx
call fcn.00480ba0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc6
mov eax, dword [esp + 0x78]
cmp byte [eax + 0x17], 0
mov esi, dword [esp + 0x7c]
je 0x487324
lea ecx, [esp + 0x88]
push ecx
call fcn.00476ee0
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 0x48]
cdq
add esp, 4
cmp dword [esp + 0x8c], edx
jg 0x48493c
mov ecx, dword [esp + 0x88]
jl 0x487319
cmp ecx, eax
ja 0x48493c
mov eax, ecx
mov dword [esp + 0x80], eax
jmp 0x487348
lea edx, [esp + 0x80]
push edx
call fcn.00476f60
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x30]
add esp, 4
cmp eax, dword [ecx + 0x48]
ja 0x48493c
mov edi, dword [esp + 0x3c]
push 0
push eax
push edi
call fcn.0047d220
add esp, 0xc
test eax, eax
jne 0x484218
mov ax, word [edi + 0x1c]
mov edx, dword [esp + 0x80]
mov ecx, 0xbf10
and ax, cx
or ax, 0x10
mov dword [edi + 0x18], edx
mov word [edi + 0x1c], ax
mov edx, dword [esp + 0x78]
cmp byte [edx + 0x17], 0
je 0x4873b1
mov eax, dword [edi + 0x14]
mov esi, dword [esp + 0x7c]
push 0
push eax
mov eax, dword [esp + 0x88]
push eax
push 0
call fcn.00477160
mov dword [esp + 0x34], eax
add esp, 0x10
mov byte [edi + 0x1f], 1
jmp case.0x483d2a.17
mov ecx, dword [edi + 0x14]
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
push ecx
push edx
push 0
push eax
call fcn.00477480
mov dword [esp + 0x34], eax
add esp, 0x10
mov byte [edi + 0x1f], 1
jmp case.0x483d2a.17
mov ecx, dword [edi + 4]
mov edx, dword [ebx + 0x34]
mov esi, dword [edx + ecx*4]
mov dword [esp + 0x78], esi
cmp byte [esi + 0x14], 0
je 0x4873fe
mov ecx, dword [esp + 0x3c]
mov eax, 1
mov word [ecx + 0x1c], ax
jmp case.0x483d2a.17
cmp byte [esi + 0x15], 0
je 0x48741d
mov edx, dword [esi + 0x18]
mov dword [esp + 0x80], edx
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x84], eax
jmp 0x4874bb
cmp dword [esi + 0x38], 0
je 0x487474
mov ecx, dword [esi + 0x38]
mov eax, dword [ecx]
mov dword [esp + 0x88], eax
mov eax, dword [eax]
mov dword [esp + 0x8c], eax
mov ecx, dword [esi + 0x38]
lea edx, [esp + 0x80]
push edx
mov edx, dword [eax + 0x30]
push ecx
call edx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x5c]
push eax
push ecx
call fcn.00468fe0
mov eax, dword [esp + 0x98]
mov edx, dword [eax + 8]
mov dword [ebx + 0x5c], edx
add esp, 0x10
mov dword [eax + 8], 0
jmp 0x4874bb
call fcn.00480ba0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc6
mov eax, dword [esp + 0x78]
cmp byte [eax + 0x11], 0
je 0x4874a5
mov ecx, dword [eax + 8]
mov dword [esp + 0x80], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x84], edx
jmp 0x4874bb
mov esi, dword [eax]
lea ecx, [esp + 0x80]
push ecx
call fcn.00476ee0
add esp, 4
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x80]
mov dword [eax], edx
mov ecx, dword [esp + 0x84]
mov dword [eax + 4], ecx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x78], eax
mov byte [eax + 0x14], 1
mov eax, dword [esp + 0x78]
mov byte [eax + 0x11], 0
mov ecx, dword [esp + 0x78]
mov esi, dword [ecx]
cmp esi, edx
je case.0x483d2a.17
call fcn.00473db0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x78], eax
mov esi, dword [eax]
mov dword [esp + 0x7c], esi
cmp esi, edx
jne 0x48752c
mov dword [esp + 0x80], 1
jmp 0x48754a
lea edi, [esp + 0x80]
call fcn.00477930
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x78]
xor edx, edx
mov cl, byte [esp + 0x80]
mov byte [eax + 0x14], cl
mov eax, dword [esp + 0x78]
mov byte [eax + 0x15], 0
mov ecx, dword [esp + 0x78]
mov byte [ecx + 0x11], 0
mov eax, dword [esp + 0x78]
mov dword [eax + 0x44], edx
mov edi, dword [edi + 8]
cmp edi, edx
jle case.0x483d2a.17
cmp dword [esp + 0x80], edx
je case.0x483d2a.17
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
inc dword [ebx + 0xb4]
mov ecx, dword [edi + 4]
mov eax, dword [ebx + 0x34]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x78], eax
mov esi, dword [eax]
mov dword [esp + 0x7c], esi
cmp esi, edx
je 0x4875f7
lea edi, [esp + 0x80]
call fcn.00477900
cmp dword [esp + 0x80], 0
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x28]
sete cl
mov byte [edx + 0x12], cl
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x78]
mov byte [eax + 0x15], 0
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0x44], 0
mov edx, dword [esp + 0x78]
mov byte [edx + 0x11], 0
mov eax, dword [esp + 0x78]
xor edx, edx
jmp 0x487602
mov dword [esp + 0x80], 1
mov cl, byte [esp + 0x80]
mov byte [eax + 0x14], cl
cmp dword [esp + 0x80], edx
je case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [ecx + 0xd8]
test eax, eax
jne 0x488e0b
mov ecx, dword [edi + 4]
mov eax, dword [ebx + 0x34]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x78], eax
cmp eax, edx
je case.0x483d2a.17
mov ecx, dword [eax]
mov dword [esp + 0x7c], ecx
cmp ecx, edx
jne 0x48765c
mov byte [eax + 0x14], 1
jmp case.0x483d2a.17
mov dword [esp + 0x80], 1
cmp byte [edi], 0x42
jne 0x48767c
lea edx, [esp + 0x80]
push edx
push ecx
call fcn.00477d60
jmp 0x48768a
lea eax, [esp + 0x80]
push eax
push ecx
call fcn.00477f00
mov ecx, dword [esp + 0x80]
mov dl, byte [esp + 0x88]
mov byte [ecx + 0x14], dl
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x80]
add esp, 8
mov dword [eax + 0x44], 0
cmp dword [esp + 0x80], 0
jne 0x4876da
mov eax, dword [edi + 8]
dec eax
mov dword [esp + 0x34], eax
mov al, byte [edi + 3]
test al, al
je 0x4876da
movzx ecx, al
inc dword [ebx + ecx*4 + 0xac]
lea eax, [ebx + ecx*4 + 0xac]
mov edx, dword [esp + 0x78]
mov byte [edx + 0x11], 0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov edx, dword [ecx + eax*4]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x78], edx
mov eax, dword [edi + 8]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov ecx, dword [edx]
mov dword [esp + 0x7c], ecx
test ecx, ecx
je case.0x483d2a.17
mov eax, 0x4000
test word [esi + 0x1c], ax
je 0x487733
call fcn.0047d3c0
mov dword [esp + 0x24], eax
test eax, eax
jne case.0x483d2a.17
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
mov eax, dword [esi + 0x18]
mov dword [esp + 0x80], eax
mov esi, dword [esi + 0x14]
mov dword [esp + 0x84], esi
test byte [edi + 3], 0x10
je 0x487752
mov esi, dword [edx + 0x40]
jmp 0x487754
xor esi, esi
mov edx, dword [edi + 0xc]
push edx
push 0
push 0
cdq
push 0x53ec65
push edx
push eax
mov eax, dword [esp + 0x9c]
push eax
mov eax, esi
call fcn.0047a480
mov ecx, dword [esp + 0x94]
add esp, 0x1c
mov dword [esp + 0x24], eax
mov dword [ecx + 0x44], 0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x78], eax
mov ecx, dword [eax]
mov dword [esp + 0x7c], ecx
cmp ecx, edx
je case.0x483d2a.17
mov edx, dword [eax + 0x28]
mov dword [esp + 0x88], edx
mov ax, word [edi + 0xc]
xor edx, edx
mov word [esp + 0x8c], ax
mov word [esp + 0x8e], dx
mov edi, dword [edi + 8]
mov edx, dword [esp + 0x30]
lea eax, [edi + edi*4]
lea eax, [edx + eax*8]
lea edx, [esp + 0x80]
push edx
push 0
push 0
mov dword [esp + 0xa4], eax
push 0
lea eax, [esp + 0x98]
push eax
push ecx
call fcn.00477970
add esp, 0x18
mov dword [esp + 0x24], eax
test eax, eax
jne 0x487819
cmp dword [esp + 0x80], eax
jne 0x487819
mov eax, dword [esp + 0x7c]
call fcn.0047a670
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0x44], 0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x7c], eax
mov eax, dword [eax]
mov dword [esp + 0x78], eax
mov ecx, 1
mov word [esi + 0x1c], cx
cmp dword [esp + 0x78], edx
je case.0x483d2a.17
mov esi, dword [esp + 0x7c]
call fcn.00480ba0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc2
mov edx, dword [esp + 0x7c]
cmp byte [edx + 0x14], al
jne case.0x483d2a.17
lea eax, [esp + 0x80]
push eax
mov eax, dword [esp + 0x7c]
call fcn.004814d0
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
jne 0x488dc2
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x3c]
mov dword [eax], ecx
mov edx, dword [esp + 0x84]
mov ecx, 4
mov dword [eax + 4], edx
mov word [eax + 0x1c], cx
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x78], eax
cmp dword [eax], edx
je case.0x483d2a.17
mov edx, dword [eax + 0x28]
mov dword [esp + 0x80], edx
mov cx, word [edi + 0x10]
mov word [esp + 0x84], cx
cmp byte [edi + 3], 0
je 0x4878f6
mov edx, 0xc
mov word [esp + 0x86], dx
jmp 0x487903
mov ecx, 4
mov word [esp + 0x86], cx
mov edi, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea edx, [ecx + edx*8]
lea ecx, [esp + 0x7c]
mov dword [esp + 0x90], edx
push ecx
lea edx, [esp + 0x84]
push edx
mov edi, eax
call fcn.00481670
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x40]
add esp, 8
cmp byte [eax], 0x48
jne 0x487946
neg ecx
jmp 0x487947
inc ecx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x7c], ecx
test ecx, ecx
jle case.0x483d2a.17
mov eax, dword [eax + 8]
dec eax
mov dword [esp + 0x34], eax
jmp case.0x483d2a.17
mov dword [esp + 0x7c], edx
mov eax, dword [ecx + 0x88]
mov dword [esp + 0x80], eax
cmp eax, edx
je 0x4879a6
lea esp, [esp]
cmp dword [eax + 0x44], 0xbdf20da3
jne 0x487998
cmp byte [eax + 0x65], 2
jae 0x487998
cmp dword [eax + 0x54], edx
jl 0x487998
inc dword [esp + 0x7c]
mov eax, dword [eax + 8]
mov dword [esp + 0x80], eax
cmp eax, edx
jne 0x487980
mov eax, 1
mov word [esi + 0x1c], ax
cmp dword [esp + 0x7c], eax
jle 0x4879c6
mov dword [esp + 0x24], 6
mov byte [ebx + 0x38], 2
jmp case.0x483d2a.17
mov eax, dword [edi + 0xc]
mov dword [esp + 0x84], eax
mov edx, dword [edi + 4]
lea ecx, [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x30]
push edx
mov edx, dword [ecx + 8]
add eax, eax
mov eax, dword [edx + eax*8 + 4]
call fcn.0047b000
mov ecx, eax
mov eax, 4
mov word [esi + 0x1c], ax
mov eax, dword [esp + 0x80]
cdq
add esp, 8
mov dword [esp + 0x24], ecx
mov dword [esi], eax
mov dword [esi + 4], edx
test ecx, ecx
jne case.0x483d2a.17
mov edx, dword [esp + 0x78]
test edx, edx
je case.0x483d2a.17
mov esi, dword [esp + 0x84]
mov ecx, dword [esp + 0x2c]
mov edi, dword [edi + 4]
shl esi, 4
add esi, dword [ecx + 8]
call fcn.00497020
mov byte [esp + 0x4b], 1
jmp 0x48426a
mov dword [esp + 0x78], 0
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 4]
neg edx
sbb edx, edx
lea eax, [esp + 0x78]
and edx, eax
mov eax, dword [esp + 0x2c]
push edx
mov edx, dword [edi + 8]
push ecx
mov ecx, dword [eax + 8]
add edx, edx
mov eax, dword [ecx + edx*8 + 4]
call fcn.0047ad40
add esp, 8
cmp dword [edi + 0xc], 0
mov dword [esp + 0x24], eax
je case.0x483d2a.17
mov eax, dword [esp + 0x78]
add dword [ebx + 0x6c], eax
mov edi, dword [edi + 0xc]
test edi, edi
jle case.0x483d2a.17
mov ecx, dword [esp + 0x30]
lea edx, [edi + edi*4]
lea ecx, [ecx + edx*8]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
jmp case.0x483d2a.17
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x78], 0
mov eax, dword [edi + 4]
shl eax, 4
add eax, dword [edx + 8]
xor ecx, ecx
mov dword [esp + 0x80], eax
cmp byte [edi], 0x61
setne cl
dec ecx
and ecx, 3
add ecx, 2
mov dword [esp + 0x7c], ecx
mov eax, dword [eax + 4]
push ecx
lea ecx, [esp + 0x7c]
push ecx
call fcn.0047ab50
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x80]
cdq
add esp, 8
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x483d2a.17
mov edx, dword [edi + 4]
mov esi, dword [esp + 0x2c]
push esi
mov dword [esp + 0x7c], edx
call fcn.00473750
mov eax, dword [esp + 0x7c]
add esp, 4
cmp dword [edi + 8], 0
jne 0x487b31
mov edx, dword [esi + 8]
mov ecx, eax
add ecx, ecx
mov ecx, dword [edx + ecx*8 + 0xc]
test byte [ecx + 0x4a], 1
je 0x487be7
mov ecx, str.sqlite_temp_master
cmp eax, 1
je 0x487b40
mov ecx, str.sqlite_master
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x84], esi
mov edx, dword [edi + 4]
mov dword [esp + 0x88], edx
add ebx, 0x5c
mov dword [esp + 0x8c], ebx
mov edx, dword [edi + 0x10]
push edx
push ecx
mov ecx, dword [esi + 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 esi
call fcn.0046a5a0
add esp, 0x14
mov dword [esp + 0x80], eax
test eax, eax
jne 0x487b90
mov dword [esp + 0x24], 7
jmp 0x487be7
push 0
lea eax, [esp + 0x88]
push eax
mov byte [esi + 0x7c], 1
mov ecx, dword [esp + 0x88]
push fcn.004a6c60
push ecx
push esi
mov dword [esp + 0xa4], 0
call fcn.004a3fc0
add esp, 0x14
mov dword [esp + 0x24], eax
test eax, eax
jne 0x487bd2
mov edx, dword [esp + 0x90]
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x80]
push eax
push esi
call fcn.00468fe0
add esp, 8
mov byte [esi + 0x7c], 0
mov ebx, esi
call fcn.00473830
cmp dword [esp + 0x24], 7
je 0x484218
jmp 0x48426a
mov eax, dword [edi + 4]
mov edi, dword [esp + 0x2c]
call fcn.004937f0
mov dword [esp + 0x24], eax
jmp 0x48426a
mov ecx, dword [esp + 0x2c]
mov eax, dword [edi + 4]
push ecx
mov ecx, dword [edi + 0x10]
call fcn.004955c0
add esp, 4
jmp case.0x483d2a.17
mov edx, dword [esp + 0x2c]
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 4]
push edx
call fcn.00495060
add esp, 4
jmp case.0x483d2a.17
mov eax, dword [esp + 0x2c]
mov ecx, dword [edi + 0x10]
push eax
mov eax, dword [edi + 4]
call fcn.004b10e0
add esp, 4
jmp case.0x483d2a.17
mov eax, dword [edi + 8]
mov esi, dword [esp + 0x2c]
lea ecx, [eax*4 + 4]
mov dword [esp + 0x78], eax
call fcn.004691e0
mov dword [esp + 0x7c], eax
test eax, eax
je 0x484218
mov ecx, dword [edi + 0xc]
mov esi, dword [esp + 0x30]
lea ecx, [ecx + ecx*4]
lea edx, [esi + ecx*8]
mov dword [esp + 0x8c], edx
mov ecx, dword [edi + 4]
lea ecx, [ecx + ecx*4]
lea esi, [esi + ecx*8]
xor ecx, ecx
mov dword [esp + 0x80], ecx
cmp dword [esp + 0x78], ecx
jle 0x487ce2
lea ebx, [ebx]
lea edx, [ecx + ecx*4]
lea eax, [esi + edx*8]
call fcn.0047d6d0
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
mov dword [edx + ecx*4], eax
mov ecx, dword [esp + 0x80]
inc ecx
mov dword [esp + 0x80], ecx
cmp ecx, dword [esp + 0x78]
jl 0x487cb0
mov eax, dword [esp + 0x7c]
mov dword [eax + ecx*4], 0
mov ecx, dword [esp + 0x8c]
mov edx, dword [ecx]
mov ecx, dword [esp + 0x7c]
lea eax, [esp + 0x84]
push eax
mov eax, dword [esp + 0x7c]
push edx
movzx edx, byte [edi + 3]
mov edi, dword [esp + 0x34]
push eax
mov eax, dword [edi + 8]
add edx, edx
push ecx
mov ecx, dword [eax + edx*8 + 4]
call fcn.0047bed0
mov ecx, dword [esp + 0x8c]
push ecx
push edi
mov dword [esp + 0xa0], eax
call fcn.00468fe0
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0xa4]
cdq
sub dword [ecx], eax
mov eax, dword [esp + 0xa4]
push esi
sbb dword [eax + 4], edx
call fcn.0047d970
add esp, 0x1c
cmp dword [esp + 0x84], 0
je 0x487d82
mov eax, dword [esp + 0x88]
test eax, eax
je 0x484218
push 1
push eax
mov eax, fcn.00468f60
or ecx, 0xffffffff
mov edx, esi
call fcn.0047dc20
add esp, 8
movzx ecx, byte [esp + 0x47]
mov eax, esi
call fcn.0047d1f0
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov edi, dword [edi + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
test byte [eax + edx*8 + 0x1c], 0x20
lea esi, [eax + edx*8]
lea ecx, [edi + edi*4]
lea ebx, [eax + ecx*8]
jne 0x487dc1
mov edi, esi
call fcn.0047da80
test byte [esi + 0x1c], 0x20
je 0x484218
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
mov edi, dword [esi]
push edx
push eax
call fcn.0046f530
jmp 0x484267
mov ecx, dword [ecx + 0xd8]
test ecx, ecx
jne 0x488e0b
mov eax, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
test byte [eax + edx*8 + 0x1c], 0x20
lea eax, [eax + edx*8]
mov dword [esp + 0x38], eax
je 0x487e33
mov ecx, eax
mov eax, dword [ecx]
lea esi, [esp + 0x78]
call fcn.0046f940
test eax, eax
je 0x487e2f
mov edx, dword [esp + 0x7c]
mov edi, dword [edi + 0xc]
mov eax, dword [esp + 0x78]
push edx
mov edx, dword [esp + 0x34]
lea ecx, [edi + edi*4]
push eax
lea esi, [edx + ecx*8]
call fcn.0047d9c0
add esp, 8
jmp case.0x483d2a.17
mov eax, dword [esp + 0x38]
push eax
call fcn.0047d970
mov edi, dword [edi + 8]
add esp, 4
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
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 [esp + 0x78], eax
test byte [esi + 0x1c], 0x20
lea ebx, [ecx + edx*8]
jne 0x487e85
mov edi, esi
call fcn.0047da80
test byte [esi + 0x1c], 0x20
je 0x484218
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0x38]
test eax, eax
je 0x487ec1
js 0x487e90
and eax, 0xf
jmp 0x487e95
mov eax, 0xff
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
push ecx
mov ecx, dword [esi]
push edx
call fcn.0046f9c0
add esp, 8
mov dword [esp + 0x7c], eax
test eax, eax
je 0x487ebb
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp 0x48426a
mov eax, dword [esp + 0x78]
test eax, eax
js 0x48426a
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov edi, dword [esi]
push eax
push ecx
call fcn.0046f530
jmp 0x484267
mov esi, dword [edi + 0x10]
mov dword [esp + 0x90], esi
mov eax, dword [edi + 0xc]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x30]
lea edx, [eax + edx*8]
mov dword [esp + 0x80], edx
cmp byte [edi + 3], 0
je 0x487f3b
mov eax, dword [ebx + 0xd4]
mov edi, dword [esi + 0x14]
mov dword [esp + 0x94], edi
mov dword [esp + 0x8c], eax
test eax, eax
je 0x487f3b
lea esp, [esp]
cmp dword [eax + 0x20], edi
je 0x48426a
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x8c], eax
test eax, eax
jne 0x487f20
mov ecx, dword [esp + 0x2c]
mov eax, dword [ebx + 0xd8]
cmp eax, dword [ecx + 0x70]
jl 0x487f67
mov eax, dword [esp + 0x2c]
push str.too_many_levels_of_trigger_recursion
lea esi, [ebx + 0x5c]
mov dword [esp + 0x28], 1
call fcn.004693e0
add esp, 4
jmp case.0x483d2a.17
test byte [edx + 0x1c], 0x40
jne 0x4880da
mov eax, dword [esi + 8]
add eax, dword [esi + 0xc]
mov dword [esp + 0x78], eax
mov edx, dword [esi + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x2c]
lea edi, [edx + ecx*2]
lea edi, [edi*4 + 0x40]
mov dword [esp + 0x7c], edi
call fcn.004691c0
mov dword [esp + 0x8c], eax
test eax, eax
je 0x484218
mov eax, dword [esp + 0x80]
push eax
call fcn.0047d600
mov edx, dword [esp + 0x84]
mov ecx, 0x40
mov word [edx + 0x1c], cx
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x84]
mov dword [ecx], eax
mov edx, dword [esp + 0x90]
mov eax, dword [esp + 0x2c]
mov dword [edx], eax
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x7c]
mov dword [ecx + 0x24], edx
mov ecx, dword [esp + 0x94]
mov edx, dword [ecx + 0xc]
mov ecx, dword [esp + 0x90]
mov dword [ecx + 0x28], edx
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x38]
mov dword [edx + 4], ecx
mov edx, dword [eax + 0x4c]
mov ecx, dword [esp + 0x90]
mov dword [ecx + 0x10], edx
mov edx, dword [eax + 0x48]
mov ecx, dword [esp + 0x90]
mov dword [ecx + 0x14], edx
mov edx, dword [eax + 0x34]
mov ecx, dword [esp + 0x90]
mov dword [ecx + 0x18], edx
mov dx, word [eax + 0x32]
mov ecx, dword [esp + 0x90]
mov word [ecx + 0x1c], dx
mov edx, dword [eax + 0x14]
mov ecx, dword [esp + 0x90]
mov dword [ecx + 8], edx
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x90]
mov dword [eax + 0xc], edx
mov ecx, dword [esp + 0x94]
mov edx, dword [ecx + 0x14]
mov eax, dword [esp + 0x90]
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x90]
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 [esp + 0x88], edx
mov dword [esp + 0x84], eax
cmp eax, edx
je 0x4880e3
mov edi, edi
mov ecx, 1
mov word [eax + 0x1c], cx
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x2c]
mov dword [edx + 0x10], eax
mov eax, dword [esp + 0x84]
add eax, 0x28
mov dword [esp + 0x84], eax
cmp eax, dword [esp + 0x88]
jne 0x4880a0
mov ecx, dword [esp + 0x8c]
jmp 0x4880e3
mov ecx, dword [edx]
mov dword [esp + 0x8c], ecx
mov eax, dword [esp + 0x28]
inc dword [eax + 0xd8]
mov edx, dword [eax + 0xd4]
mov dword [ecx + 0x3c], edx
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx + 0x30]
mov esi, dword [esp + 0x8c]
mov dword [esi + 0x30], edx
mov ecx, dword [ecx + 0x34]
mov edx, dword [esp + 0x8c]
mov dword [edx + 0x34], ecx
mov ecx, dword [eax + 0x6c]
mov edx, dword [esp + 0x8c]
mov dword [edx + 0x38], ecx
mov ecx, dword [esp + 0x8c]
lea edx, [ecx + 0x18]
mov dword [eax + 0xd4], ecx
mov dword [eax + 0x4c], edx
mov dword [eax + 0x6c], 0
mov esi, dword [ecx + 0x24]
mov dword [eax + 0x48], esi
mov cx, word [ecx + 0x28]
mov word [eax + 0x32], cx
mov ecx, esi
lea ecx, [ecx + ecx*4 + 5]
mov dword [esp + 0x30], edx
lea edx, [edx + ecx*8]
mov dword [eax + 0x34], edx
mov edx, dword [esp + 0x90]
mov ecx, dword [edx]
mov dword [esp + 0x4c], ecx
mov dword [eax + 0x14], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 0xc], ecx
mov dword [esp + 0x34], 0xffffffff
jmp 0x48426a
mov edx, dword [esp + 0x28]
mov ecx, dword [edx + 0xd4]
mov dword [esp + 0x78], 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]
mov dword [esp + 0x80], eax
push eax
mov ebx, esi
jmp 0x484262
mov eax, dword [edi + 8]
cmp dword [edi + 4], edx
cdq
je 0x4881d1
add dword [ecx + 0x1d8], eax
adc dword [ecx + 0x1dc], edx
jmp case.0x483d2a.17
add dword [ebx + 0xc0], eax
adc dword [ebx + 0xc4], edx
jmp case.0x483d2a.17
cmp dword [edi + 4], edx
je 0x488206
mov edx, dword [ecx + 0x1d8]
or edx, dword [ecx + 0x1dc]
jne 0x48426a
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [ebx + 0xc0]
or eax, dword [ebx + 0xc4]
jne 0x48426a
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov ecx, dword [ebx + 0xd4]
cmp ecx, edx
je 0x48825b
mov dword [esp + 0x7c], ecx
mov eax, dword [ecx + 0x3c]
cmp eax, edx
je 0x48824d
lea ebx, [ebx]
mov ecx, eax
mov dword [esp + 0x7c], ecx
mov eax, dword [ecx + 0x3c]
cmp eax, edx
jne 0x488240
mov eax, dword [edi + 4]
lea edx, [eax + eax*4]
mov eax, dword [ecx + 0x10]
lea esi, [eax + edx*8]
jmp 0x488268
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x30]
lea ecx, [eax + eax*4]
lea esi, [edx + ecx*8]
mov dword [esp + 0x78], esi
call fcn.0047d880
mov edi, dword [edi + 8]
mov ecx, dword [esp + 0x30]
lea eax, [edi + edi*4]
lea esi, [ecx + eax*8]
call fcn.0047d880
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov ecx, dword [esp + 0x78]
cmp dword [ecx + 4], esi
jg case.0x483d2a.17
jl 0x48829f
cmp dword [ecx], eax
jae 0x48426a
mov dword [ecx], eax
mov eax, dword [esp + 0x78]
mov dword [eax + 4], esi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
cmp dword [ecx + eax*8 + 4], edx
jl case.0x483d2a.17
jg 0x4882cf
mov edx, ecx
cmp dword [edx + eax*8], 0
jbe 0x48426a
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
cmp dword [ecx + eax*8 + 4], edx
jg case.0x483d2a.17
jl 0x4882fe
mov edx, ecx
cmp dword [edx + eax*8], 0
jae 0x48426a
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
mov eax, dword [edi + 0xc]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
mov edx, dword [ecx]
or edx, dword [ecx + 4]
jne 0x48426a
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
movzx ecx, byte [edi + 3]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x78], ecx
mov eax, dword [edi + 8]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
mov dword [esp + 0x84], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0xc8], eax
xor eax, eax
mov dword [esp + 0x7c], eax
cmp ecx, edx
jle 0x48839d
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0xc8]
mov dword [edx + eax*4], ecx
mov ecx, dword [esp + 0x84]
call fcn.004838c0
mov eax, dword [esp + 0x7c]
add dword [esp + 0x84], 0x28
inc eax
mov dword [esp + 0x7c], eax
cmp eax, dword [esp + 0x78]
jl 0x488369
mov eax, dword [edi + 0x10]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x88], eax
mov eax, dword [edi + 0xc]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*8]
mov dword [esp + 0x80], eax
mov dword [esp + 0xb8], eax
inc dword [eax + 0x18]
xor esi, esi
mov eax, 1
mov word [esp + 0xac], ax
mov eax, dword [esp + 0x88]
mov dword [esp + 0xa4], esi
mov dword [esp + 0xb4], esi
mov dword [esp + 0xb0], esi
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xbc], esi
mov dword [esp + 0xc0], esi
test byte [eax + 3], 8
je 0x488419
mov ecx, dword [edi - 4]
mov dword [esp + 0xc0], ecx
mov edx, dword [esp + 0xc8]
mov ecx, dword [esp + 0x78]
mov eax, dword [eax + 0x10]
push edx
push ecx
lea edx, [esp + 0x90]
push edx
call eax
add esp, 0xc
cmp dword [esp + 0xbc], esi
je 0x488470
lea ecx, [esp + 0x90]
push 1
push ecx
call fcn.0047e120
mov esi, dword [esp + 0x30]
push eax
push 0x544f90
add esi, 0x5c
mov eax, ebx
call fcn.004693e0
mov edx, dword [esp + 0xcc]
add esp, 0x10
mov dword [esp + 0x24], edx
lea eax, [esp + 0x90]
push eax
call fcn.0047d600
add esp, 4
jmp 0x48426a
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x30]
lea ecx, [eax + eax*4]
lea ecx, [edx + ecx*8]
mov dword [esp + 0x78], ecx
mov eax, dword [edi + 0x10]
call fcn.0047d520
mov dword [esp + 0x24], eax
test eax, eax
je 0x4884c7
mov eax, dword [esp + 0x78]
push 1
push eax
call fcn.0047e120
push eax
mov eax, dword [esp + 0x38]
push 0x544f90
lea esi, [ebx + 0x5c]
call fcn.004693e0
add esp, 0x10
movzx ecx, byte [esp + 0x47]
mov eax, dword [esp + 0x78]
call fcn.0047d1f0
mov ecx, dword [esp + 0x78]
call fcn.0047db10
test eax, eax
jne 0x48493c
jmp 0x48426a
mov eax, dword [esp + 0x2c]
lea ecx, [ebx + 0x5c]
push ecx
call fcn.004b4690
add esp, 4
mov dword [esp + 0x24], eax
jmp case.0x483d2a.17
mov edx, dword [edi + 4]
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 8]
add edx, edx
mov eax, dword [ecx + edx*8 + 4]
mov dword [esp + 0x78], eax
call fcn.00476620
mov dword [esp + 0x24], eax
cmp eax, 0x65
jne case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x24], 0
jmp case.0x483d2a.17
cmp dword [edi + 4], edx
jne 0x488552
mov eax, dword [esp + 0x2c]
call fcn.00481730
jmp case.0x483d2a.17
mov byte [ebx + 0x62], 1
jmp case.0x483d2a.17
mov dl, byte [edi + 0xc]
test dl, dl
jne 0x48856f
test dword [ecx + 0xc], 0x80000
jne case.0x483d2a.17
mov ecx, dword [edi + 8]
mov eax, dword [edi + 4]
push ecx
mov ecx, dword [esp + 0x30]
mov esi, dword [ecx + 8]
add eax, eax
mov esi, dword [esi + eax*8 + 4]
mov cl, dl
call fcn.0047c520
add esp, 4
mov dword [esp + 0x24], eax
cmp al, 6
jne case.0x483d2a.17
mov edx, dword [edi + 0x10]
mov eax, dword [esp + 0x2c]
push edx
push str.database_table_is_locked:__s
lea esi, [ebx + 0x5c]
call fcn.004693e0
add esp, 8
jmp case.0x483d2a.17
mov edi, dword [edi + 0x10]
mov eax, dword [esp + 0x2c]
push edi
push eax
mov dword [esp + 0x80], edi
call fcn.004b5b90
add esp, 8
cmp dword [esp + 0x78], 0
mov dword [esp + 0x24], eax
je case.0x483d2a.17
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x2c]
push ecx
push edx
call fcn.00468fe0
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 8]
mov dword [ebx + 0x5c], edx
mov eax, dword [eax + 8]
add esp, 8
mov dword [eax + 8], 0
jmp case.0x483d2a.17
mov edx, dword [edi + 0x10]
mov eax, dword [edi + 4]
lea ecx, [ebx + 0x5c]
push ecx
mov ecx, dword [esp + 0x30]
push edx
call fcn.004b56d0
add esp, 8
mov dword [esp + 0x24], eax
jmp case.0x483d2a.17
mov ecx, dword [esp + 0x2c]
mov byte [ebx + 0x65], 2
mov eax, dword [edi + 0x10]
push eax
mov eax, dword [edi + 4]
call fcn.004b5980
add esp, 4
mov dword [esp + 0x24], eax
mov byte [ebx + 0x65], 0
jmp case.0x483d2a.17
xor eax, eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx + 8]
mov dword [esp + 0x80], eax
mov ecx, dword [eax]
lea edx, [esp + 0x7c]
push edx
mov dword [esp + 0x88], ecx
push eax
mov eax, dword [ecx + 0x18]
call eax
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x34]
push ecx
mov esi, eax
push edx
mov dword [esp + 0x34], esi
call fcn.00468fe0
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 8]
add esp, 0x10
mov dword [ebx + 0x5c], ecx
mov dword [eax + 8], 0
test esi, esi
jne case.0x483d2a.17
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
push esi
mov dword [eax], edx
mov ebx, dword [edi + 4]
mov edi, dword [esp + 0x2c]
push 0xffffffffffffffff
push esi
call fcn.004838f0
add esp, 0xc
mov dword [esp + 0x78], eax
test eax, eax
je 0x4886f4
mov ecx, dword [esp + 0x7c]
mov dword [eax + 0x38], ecx
mov edx, dword [esp + 0x7c]
mov eax, dword [edx]
mov ecx, dword [eax]
mov edx, dword [esp + 0x78]
mov dword [edx + 0x3c], ecx
mov ebx, edi
jmp case.0x483d2a.17
mov eax, dword [esp + 0x2c]
mov byte [eax + 0x1e], 1
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x84]
mov eax, dword [edx + 0x1c]
push ecx
call eax
add esp, 4
mov ebx, edi
jmp case.0x483d2a.17
mov eax, dword [edi + 0xc]
mov edx, dword [esp + 0x30]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*8]
mov edx, dword [ebx + 0x34]
mov ebx, dword [ebx + 0x24]
mov dword [esp + 0x84], eax
lea esi, [eax + 0x28]
mov dword [esp + 0x88], esi
mov ecx, dword [edi + 4]
mov ecx, dword [edx + ecx*4]
mov dword [esp + 0x94], ecx
mov edx, dword [ecx + 0x38]
mov dword [esp + 0x8c], edx
mov ecx, dword [edx]
mov dword [esp + 0x90], ecx
mov ecx, dword [ecx]
mov dword [esp + 0x80], ecx
mov ecx, dword [esi]
mov dword [esp + 0x78], ecx
mov eax, dword [eax]
mov dword [esp + 0x7c], eax
xor eax, eax
mov dword [esp + 0x98], eax
mov dword [esp + 0xa0], ebx
mov dword [esp + 0x9c], eax
test ecx, ecx
jle 0x4887dc
jmp 0x488797
mov esi, dword [esp + 0x88]
lea ecx, [eax + eax*4 + 5]
lea edx, [esi + ecx*8]
mov ecx, dword [esp + 0xa0]
mov dword [ecx + eax*4], edx
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + edx*4]
call fcn.004838c0
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x78]
inc eax
mov dword [esp + 0x9c], eax
cmp eax, ecx
jl 0x488790
mov edx, dword [esp + 0x8c]
mov eax, dword [esp + 0xa0]
mov esi, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x80]
push ecx
mov byte [esi + 0x65], 1
mov ecx, dword [edi + 0x10]
push ecx
mov ecx, dword [esp + 0x8c]
push eax
push edx
mov edx, dword [ecx + 0x20]
call edx
mov ecx, dword [esp + 0x40]
mov ebx, eax
mov eax, dword [esi + 0x5c]
add esp, 0x14
push eax
push ecx
mov dword [esp + 0x2c], ebx
mov byte [esi + 0x65], 0
call fcn.00468fe0
mov eax, dword [esp + 0x98]
mov edx, dword [eax + 8]
add esp, 8
mov dword [esi + 0x5c], edx
mov dword [eax + 8], 0
test ebx, ebx
jne 0x48885a
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 0x28]
push eax
call edx
add esp, 4
mov dword [esp + 0x98], eax
cmp dword [esp + 0x98], 0
je 0x48886c
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
mov eax, dword [esp + 0x94]
mov byte [eax + 0x14], 0
mov ebx, esi
jmp case.0x483d2a.17
mov ecx, dword [edi + 4]
mov edx, dword [ebx + 0x34]
mov esi, dword [edx + ecx*4]
mov eax, dword [edi + 0xc]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [esp + 0x80], eax
cmp byte [esi + 0x14], 0
je 0x4888af
push eax
call fcn.0047d970
add esp, 4
jmp case.0x483d2a.17
mov edx, dword [esi + 0x38]
mov eax, dword [edx]
push 0x40
mov dword [esp + 0x7c], eax
mov eax, dword [eax]
lea ecx, [esp + 0x8c]
push 0
push ecx
mov dword [esp + 0x88], eax
call fcn.004ecd20
mov ebx, dword [esp + 0x8c]
add esp, 0xc
lea eax, [esp + 0x90]
call fcn.0047dbf0
mov edx, dword [esp + 0xac]
and edx, 0xbf01
or edx, 1
mov word [esp + 0xac], dx
mov eax, dword [edi + 8]
mov edx, dword [esi + 0x38]
push eax
mov eax, dword [esp + 0x80]
lea ecx, [esp + 0x8c]
push ecx
mov ecx, dword [eax + 0x2c]
push edx
call ecx
mov esi, dword [esp + 0x34]
mov edx, dword [esi + 0x5c]
add esp, 0xc
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x2c]
push edx
push eax
call fcn.00468fe0
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 8]
mov dword [esi + 0x5c], ecx
mov dword [eax + 8], 0
mov eax, dword [esp + 0xc4]
add esp, 8
test eax, eax
je 0x48895b
mov dword [esp + 0x24], eax
movzx ecx, byte [esp + 0x47]
lea eax, [esp + 0x90]
call fcn.0047d1f0
mov eax, dword [esp + 0x80]
lea ebx, [esp + 0x90]
call fcn.0047dbf0
mov ecx, dword [esp + 0x80]
call fcn.0047db10
test eax, eax
jne 0x48493c
mov ebx, esi
jmp case.0x483d2a.17
mov eax, dword [ebx + 0x34]
mov dword [esp + 0x80], edx
mov edx, dword [edi + 4]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x84], eax
cmp byte [eax + 0x14], 0
jne case.0x483d2a.17
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx]
mov dword [esp + 0x78], ecx
mov ecx, dword [ecx]
mov dword [esp + 0x7c], ecx
mov byte [ebx + 0x65], 1
mov edx, dword [eax + 0x38]
mov eax, dword [ecx + 0x24]
push edx
call eax
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x30]
add esp, 4
push ecx
mov esi, eax
push edx
mov dword [esp + 0x2c], esi
mov byte [ebx + 0x65], 0
call fcn.00468fe0
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 8]
add esp, 8
mov dword [ebx + 0x5c], ecx
mov dword [eax + 8], 0
test esi, esi
jne 0x488a2b
mov edx, dword [esp + 0x84]
mov eax, dword [edx + 0x38]
mov ecx, dword [esp + 0x7c]
mov edx, dword [ecx + 0x28]
push eax
call edx
add esp, 4
mov dword [esp + 0x80], eax
cmp dword [esp + 0x80], 0
jne case.0x483d2a.17
mov edi, dword [edi + 8]
dec edi
mov dword [esp + 0x34], edi
jmp case.0x483d2a.17
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 8]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x78], eax
mov edi, dword [edi + 4]
lea ecx, [edi + edi*4]
lea ecx, [edx + ecx*8]
mov dword [esp + 0x7c], ecx
mov ecx, dword [ecx + 0x14]
mov edx, dword [eax]
mov edx, dword [edx + 0x4c]
push ecx
push eax
call edx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x5c]
push eax
push ecx
call fcn.00468fe0
mov eax, dword [esp + 0x88]
mov edx, dword [eax + 8]
mov dword [ebx + 0x5c], edx
add esp, 0x10
mov dword [eax + 8], 0
jmp case.0x483d2a.17
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x78], eax
mov esi, dword [eax]
mov dword [esp + 0x7c], esi
mov eax, dword [edi + 8]
mov dword [esp + 0x80], eax
cmp dword [esi + 0x34], edx
je case.0x483d2a.17
mov ecx, dword [ebx + 0x24]
mov dword [esp + 0x90], ecx
mov ecx, dword [edi + 0xc]
lea edx, [ecx + ecx*4]
mov ecx, dword [esp + 0x30]
lea ecx, [ecx + edx*8]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x84], 0
test eax, eax
jle 0x488b3c
jmp 0x488af0
call fcn.004838c0
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x90]
mov dword [ecx + eax*4], edx
mov edx, dword [esp + 0x84]
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x80]
inc edx
add ecx, 0x28
mov dword [esp + 0x94], ecx
mov dword [esp + 0x84], edx
cmp edx, eax
jl 0x488af0
mov esi, dword [esp + 0x7c]
mov ecx, dword [esp + 0x90]
lea edx, [esp + 0x88]
push edx
mov edx, dword [esp + 0x7c]
push ecx
push eax
mov eax, dword [esi + 0x34]
push edx
call eax
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x3c]
push ecx
mov esi, eax
push edx
mov dword [esp + 0x3c], esi
call fcn.00468fe0
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 8]
add esp, 0x18
mov dword [ebx + 0x5c], ecx
mov dword [eax + 8], 0
test esi, esi
jne 0x488ba3
cmp dword [edi + 4], esi
je 0x488ba3
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x30], edx
mov ecx, dword [esp + 0x8c]
mov dword [eax + 0x34], ecx
inc dword [ebx + 0x6c]
jmp case.0x483d2a.17
mov edi, dword [edi + 4]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x78], edi
mov eax, dword [edx + 8]
add edi, edi
mov ecx, dword [eax + edi*8 + 4]
mov edx, dword [ecx + 4]
mov esi, dword [edx]
lea ebx, [esp + 0x7c]
mov dword [esp + 0x80], esi
call fcn.00471720
mov dword [esp + 0x24], eax
test eax, eax
jne 0x48426a
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x3c]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x48426a
mov edi, dword [edi + 0x10]
mov eax, edi
cmp edi, edx
jne 0x488c02
mov eax, dword [ebx + 0xb8]
mov dword [esp + 0x78], eax
cmp eax, edx
je case.0x483d2a.17
cmp dword [ecx + 0x94], edx
je case.0x483d2a.17
push ebx
mov edx, eax
call fcn.00483580
mov edi, dword [esp + 0x30]
mov ecx, dword [edi + 0x94]
mov esi, eax
mov eax, dword [edi + 0x98]
add esp, 4
push esi
push eax
call ecx
push esi
push edi
call fcn.00468fe0
add esp, 0x10
jmp case.0x483d2a.17
mov dword [esp + 0x24], 9
jmp 0x48495c
mov eax, dword [edi + 4]
mov dword [ebx + 0x58], eax
mov cl, byte [edi + 8]
mov eax, dword [esp + 0x34]
mov byte [ebx + 0x38], cl
mov dword [ebx + 0x54], eax
mov eax, dword [edi + 0x10]
cmp eax, edx
je 0x488ca6
push eax
mov eax, dword [esp + 0x30]
push 0x544f90
lea esi, [ebx + 0x5c]
call fcn.004693e0
mov ecx, dword [edi + 0x10]
mov edx, dword [ebx + 0xb8]
mov eax, dword [esp + 0x3c]
push ecx
mov ecx, dword [edi + 4]
push edx
push eax
push str.abort_at__d_in___s_:__s
push ecx
call fcn.0046a840
add esp, 0x1c
jmp 0x488cc8
cmp dword [ebx + 0x58], edx
je 0x488cc8
mov edx, dword [ebx + 0xb8]
mov eax, dword [esp + 0x34]
mov ecx, dword [edi + 4]
push edx
push eax
push str.constraint_failed_at__d_in___s_
push ecx
call fcn.0046a840
add esp, 0x10
mov eax, ebx
call fcn.004804b0
mov esi, 5
cmp eax, esi
jne 0x488d30
mov dword [ebx + 0x58], esi
jmp 0x4849b2
lea eax, [esp + 0x88]
push eax
call fcn.0047d600
add esp, 4
jmp 0x484218
mov dword [esp + 0x24], 0x14
jmp 0x488dc6
mov ecx, dword [esp + 0x34]
mov dword [ebx + 0x54], ecx
mov byte [esi + 0x1c], 0
mov esi, 5
mov dword [ebx + 0x58], esi
jmp 0x4849b2
cmp edi, edx
je 0x488d42
mov esi, dword [esp + 0x2c]
call fcn.004bf290
mov byte [esi + 0x1c], 1
call fcn.004bec00
mov esi, dword [ebx + 0x58]
neg esi
sbb esi, esi
and esi, 0xffffff9c
add esi, 0x65
jmp 0x4849b2
push 1
mov ecx, ebx
call fcn.00480450
mov esi, eax
add esp, 4
test esi, esi
jne 0x4849b2
mov dl, byte [esp + 0x78]
mov esi, dword [esp + 0x2c]
mov eax, ebx
mov byte [esi + 0x1c], dl
call fcn.004804b0
cmp eax, 5
jne 0x488d2b
mov eax, dword [esp + 0x34]
mov cl, 1
sub cl, byte [esp + 0x78]
mov dword [ebx + 0x54], eax
mov byte [esi + 0x1c], cl
mov esi, 5
mov dword [ebx + 0x58], esi
jmp 0x4849b2
mov edx, dword [esp + 0x34]
mov esi, 5
mov dword [ebx + 0x54], edx
mov dword [ebx + 0x58], esi
jmp 0x4849b2
mov eax, 0xdc05
call fcn.004c0720
mov dword [esp + 0x24], eax
jmp 0x488dc6
mov dword [esp + 0x24], 0xd
jmp 0x488dc6
mov dword [esp + 0x24], 0xd
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
cmp byte [ecx + 0x1e], 0
je 0x488dda
mov dword [esp + 0x24], 7
jmp 0x488de8
cmp dword [esp + 0x24], 0xc0a
je 0x48495c
mov eax, dword [esp + 0x24]
call fcn.004bf360
push eax
push 0x544f90
lea esi, [ebx + 0x5c]
mov eax, ecx
call fcn.004693e0
add esp, 8
jmp 0x48495c
xor edx, edx
mov eax, 9
mov dword [esp + 0x24], eax
mov dword [ebx + 0x58], eax
mov eax, dword [str.interrupted]
cmp eax, edx
jne 0x488e25
mov eax, str.unknown_error
push eax
mov eax, dword [esp + 0x30]
push 0x544f90
lea esi, [ebx + 0x5c]
call fcn.004693e0
add esp, 8
jmp 0x48495c