Function at 0x44088a
Capabilities:
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2b8
mov dword [ebp - 0x1e0], 0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov eax, dword [eax]
mov dword [ebp - 0x1e4], eax
mov eax, dword [eax + 4]
cmp dword [ecx + 0x50], 0xbdf20da3
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x79]
mov dword [ebp - 0x1ec], 0
mov byte [ebp - 0x1e5], al
mov eax, 0x15
jne 0x444915
mov eax, dword [ecx + 0x2c]
mov dword [ebp - 0x130], eax
cmp dword [ecx + 0x80], 7
je 0x4447de
mov edx, dword [ecx + 0x22c]
mov dword [ecx + 0x80], 0
test edx, edx
je 0x44091b
lea eax, [ebp - 0x130]
call fcn.0044071b
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x22c], 0
mov esi, dword [ebp + 8]
mov byte [esi + 0x234], 0
mov edi, dword [ebp - 0x1e4]
mov dword [edi + 0xe8], 0
test byte [edi + 8], 4
jne 0x444868
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x1d8], eax
call fcn.0042fff0
test eax, eax
jne 0x4447de
imul edx, dword [ebp - 0x1d8], 0x14
mov ecx, dword [ebp + 8]
mov ebx, dword [ebp - 0x1e4]
mov ecx, dword [ecx + 0x18]
add edx, ecx
mov dword [ebp - 0x1dc], edx
cmp dword [ebx + 0x98], 0
je 0x4409b7
mov esi, dword [ebp - 0x1ec]
cmp dword [ebx + 0xa0], esi
jne 0x4409b1
push dword [ebx + 0x9c]
call dword [ebx + 0x98]
pop esi
test eax, eax
je 0x4409a7
mov dword [ebp - 0x1e0], 4
jmp case.0x4409d4.11
mov dword [ebp - 0x1ec], 0
inc dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
mov al, byte [eax]
mov byte [ebp - 0x29d], al
movzx eax, al
dec eax
cmp eax, 0x8c
ja case.0x4409d4.11
jmp dword [eax*4 + 0x6a95a0]
mov edx, dword [ebp - 0x1e4]
test byte [edx + 8], 4
jne 0x444868
mov ecx, dword [ebp - 0x1dc]
mov ebx, dword [ecx + 8]
dec ebx
mov dword [ebp - 0x1d8], ebx
jmp case.0x4409d4.11
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0x1d8]
inc edx
mov edi, dword [ebp - 0x1dc]
mov eax, dword [esi + 0x220]
mov dword [esi + eax*4 + 0x90], edx
inc eax
mov dword [esi + 0x220], eax
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x220]
dec eax
mov dword [edx + 0x220], eax
mov eax, dword [edx + eax*4 + 0x90]
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov ecx, dword [ebp + 8]
mov ebx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x130]
mov esi, dword [ebp - 0x1d8]
mov dword [ecx + 0x2c], eax
mov eax, dword [ebx + 4]
mov dword [ecx + 0x80], eax
mov dword [ecx + 0x7c], esi
mov eax, dword [ebx + 8]
mov dword [ecx + 0x88], eax
cmp dword [ebx + 0xc], 0
je 0x440a9e
push 0
mov eax, ecx
push dword [ebx + 0xc]
add eax, 0x230
push eax
call fcn.004300b2
add esp, 0xc
push dword [ebp + 8]
call fcn.00430f9e
pop ebx
cmp eax, 5
je 0x444903
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x80]
cmp eax, 1
sbb eax, eax
and eax, 0x64
inc eax
jmp 0x444915
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x1dc]
lea eax, [edx + 0x40]
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 4
mov eax, dword [ecx + 4]
mov ebx, eax
mov dword [edx + 0x40], eax
sar ebx, 0x1f
mov dword [edx + 0x44], ebx
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x130]
mov esi, dword [ebp - 0x1dc]
add edx, 0x40
xor eax, eax
mov edi, dword [esi + 0xc]
mov dword [ebp - 0x130], edx
cld
mov word [edx + 0x18], 0xa2
mov dword [edx + 0x10], edi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [edx + 0x1b], 1
mov ebx, dword [ebp - 0x130]
mov dword [edx + 0x14], ecx
push ebx
call fcn.00432203
mov dword [ebx], eax
mov eax, dword [ebp - 0x130]
mov dword [ebx + 4], edx
or word [eax + 0x18], 4
pop ecx
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x1dc]
add edx, 0x40
or ecx, 0xffffffff
mov edi, dword [eax + 0xc]
mov dword [ebp - 0x130], edx
cld
mov word [edx + 0x18], 0xa2
mov dword [edx + 0x10], edi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
mov byte [edx + 0x1b], 1
dec ecx
mov dword [edx + 0x14], ecx
mov ebx, dword [ebp - 0x130]
push ebx
call fcn.00432283
mov eax, dword [ebp - 0x130]
fstp qword [ebx + 8]
or word [eax + 0x18], 8
movzx edx, byte [ebp - 0x1e5]
push edx
push eax
call fcn.00431f50
add esp, 0xc
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
or ecx, 0xffffffff
cld
mov byte [edx], 0x18
xor eax, eax
mov edi, dword [edx + 0xc]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [edx + 4], ecx
cmp byte [ebp - 0x1e5], 1
je case.0x4409d4.24
push 0
push 1
push 0xffffffffffffffff
mov eax, dword [ebp - 0x130]
push dword [edx + 0xc]
add eax, 0x40
push eax
mov dword [ebp - 0x130], eax
call fcn.004324b6
movzx eax, byte [ebp - 0x1e5]
push eax
push dword [ebp - 0x130]
call fcn.00431f50
add esp, 0x1c
test eax, eax
jne 0x4447de
push dword [ebp - 0x130]
call fcn.00431f79
pop edx
test eax, eax
jne 0x4447de
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x1dc]
mov ax, word [edx + 0x18]
and eax, 0xffffffbf
or al, 0x80
mov word [edx + 0x18], ax
cmp dword [ecx + 0x10], 0xffffffff
jne 0x440c4c
push dword [ecx + 0xc]
call fcn.0042f550
pop eax
mov ebx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x130]
mov dword [ebx + 0x10], 0xffffffff
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov dword [ebx + 0xc], edx
mov dword [ebx + 4], eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
mov esi, dword [ebp - 0x1dc]
add eax, 0x40
mov edx, dword [esi + 0xc]
mov dword [ebp - 0x130], eax
mov dword [eax + 0x10], edx
mov edx, dword [esi + 4]
mov dword [eax + 0x14], edx
mov dl, byte [ebp - 0x1e5]
mov word [eax + 0x18], 0xa2
mov byte [eax + 0x1b], dl
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 1
mov dword [eax + 0x14], 0
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
xor eax, eax
cld
mov edx, dword [ecx + 0xc]
mov byte [ecx], 0x75
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, dword [ebp - 0x1dc]
shr ecx, 1
mov dword [ebx + 4], ecx
test ecx, ecx
je 0x440d26
push edx
call fcn.004301dd
mov ebx, eax
pop eax
test ebx, ebx
je 0x4447de
mov esi, dword [ebp - 0x1dc]
cmp dword [esi + 0x10], 0xffffffff
jne 0x440d14
push dword [esi + 0xc]
call fcn.0042f550
pop eax
mov edi, dword [ebp - 0x1dc]
mov dword [edi + 0xc], ebx
mov dword [edi + 0x10], 0xffffffff
jmp case.0x4409d4.117
mov eax, dword [ebp - 0x1dc]
cmp dword [eax + 0x10], 0xffffffff
jne 0x440d39
push edx
call fcn.0042f550
pop eax
mov edx, dword [ebp - 0x1dc]
mov dword [edx + 0x10], 0xfffffffe
mov dword [edx + 0xc], 0x6a9432
mov ecx, dword [ebp - 0x1dc]
push 0
push 0
mov eax, dword [ebp - 0x130]
push dword [ecx + 4]
push dword [ecx + 0xc]
add eax, 0x40
push eax
mov dword [ebp - 0x130], eax
call fcn.004324b6
add esp, 0x14
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0x130]
mov eax, dword [ebx + 4]
push pe_nt_image_headers32
dec eax
add edx, 0x40
shl eax, 6
mov dword [ebp - 0x130], edx
add eax, dword [esi + 0x44]
push eax
push edx
call fcn.004323f6
add esp, 0xc
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
lea eax, [ebp - 0x130]
mov edx, dword [edi + 4]
call fcn.0044071b
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
imul edx, dword [eax + 4], 0xffffffc0
mov eax, dword [ebp - 0x130]
push 0x100
lea edx, [eax + edx]
add eax, 0x40
push edx
mov dword [ebp - 0x130], eax
push eax
call fcn.004323f6
mov edx, dword [ebp - 0x1dc]
add esp, 0xc
cmp dword [edx + 8], 0
je case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x19], 1
je case.0x4409d4.11
push eax
call fcn.00431fde
pop edi
test eax, eax
je case.0x4409d4.11
jmp 0x4447de
mov ecx, dword [ebp - 0x1dc]
lea eax, [ebp - 0x4c]
imul ebx, dword [ecx + 4], 0xffffffc0
add ebx, dword [ebp - 0x130]
push 0x40
push ebx
push eax
call fcn.00478620
mov eax, dword [ebp - 0x130]
add esp, 0xc
test byte [eax + 0x19], 1
je 0x440e62
push eax
call fcn.00431fde
pop esi
test eax, eax
jne 0x4447de
mov esi, dword [ebp - 0x1dc]
xor edi, edi
cmp edi, dword [esi + 4]
jge 0x440eb0
test byte [ebx + 0x59], 1
je 0x440e87
lea eax, [ebx + 0x40]
push eax
call fcn.00431fde
pop ecx
test eax, eax
jne 0x4447de
lea esi, [ebx + 0x40]
push 0x40
push esi
push ebx
call fcn.00478620
add esp, 0xc
test byte [ebx + 0x19], 2
je 0x440ea2
lea eax, [ebx + 0x20]
mov dword [ebx + 0x10], eax
mov eax, dword [ebp - 0x1dc]
inc edi
mov ebx, esi
cmp edi, dword [eax + 4]
jmp 0x440e6d
lea eax, [ebp - 0x4c]
push 0x40
push eax
push dword [ebp - 0x130]
call fcn.00478620
mov edx, dword [ebp - 0x130]
add esp, 0xc
test byte [edx + 0x19], 2
je case.0x4409d4.11
lea eax, [edx + 0x20]
mov dword [edx + 0x10], eax
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
imul eax, dword [edx + 4], 0xffffffc0
mov edx, dword [ebp - 0x130]
push edx
lea eax, [edx + eax]
push eax
call fcn.00432463
sub dword [ebp - 0x130], 0x40
pop eax
pop edx
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
imul esi, dword [ecx + 4], 0xffffffc0
add esi, dword [ebp - 0x130]
mov ebx, dword [edi + 0x28]
cmp ebx, esi
jae 0x440f3b
test byte [ebx + 0x19], 1
je 0x440f36
push ebx
call fcn.00431fde
pop edi
test eax, eax
jne 0x4447de
add ebx, 0x40
jmp 0x440f1d
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x60]
add eax, 2
or eax, 1
mov dword [edx + 0x60], eax
cmp ebx, dword [ebp - 0x130]
ja 0x440f65
push ebx
call fcn.00432055
mov eax, ebx
add ebx, 0x40
call fcn.004406e0
pop esi
jmp 0x440f4a
mov ecx, dword [ebp + 8]
mov byte [ecx + 0x234], 1
inc dword [ecx + 0x5c]
mov ebx, dword [ebp - 0x1dc]
mov eax, dword [ebx + 4]
mov dword [ecx + 0x22c], eax
mov eax, dword [ebp - 0x1d8]
inc eax
mov dword [ecx + 0x7c], eax
mov eax, dword [ebp - 0x130]
mov dword [ecx + 0x2c], eax
mov eax, 0x64
jmp 0x444915
mov esi, dword [ebp - 0x1dc]
xor ebx, ebx
mov dword [ebp - 0x200], 0
mov edi, dword [esi + 4]
mov esi, 1
add edi, 2
sub esi, edi
shl esi, 6
add esi, dword [ebp - 0x130]
cmp ebx, edi
jge 0x441039
movzx eax, word [esi + 0x18]
test al, 1
jne 0x441006
test al, 0x12
jne 0x440fee
movzx eax, byte [ebp - 0x1e5]
push eax
push esi
call fcn.004320d0
pop edx
test eax, eax
pop ecx
jne 0x4447de
add ebx, dword [esi + 0x14]
inc dword [ebp - 0x200]
add esi, 0x40
cmp dword [ebp - 0x200], edi
jl 0x440fca
test ebx, ebx
jns 0x441039
mov eax, dword [ebp - 0x1dc]
cmp dword [eax + 8], 0
jne 0x44101f
mov edx, edi
lea eax, [ebp - 0x130]
call fcn.0044071b
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
lea eax, [ebx + 2]
push 1
push eax
call fcn.00430080
pop edx
test eax, eax
mov dword [ebp - 0x1fc], eax
pop ecx
je 0x4447de
mov esi, 1
mov dword [ebp - 0x204], 0
sub esi, edi
shl esi, 6
add esi, dword [ebp - 0x130]
cmp dword [ebp - 0x204], edi
jge 0x4410a9
mov dword [ebp - 0x200], edi
mov ebx, dword [esi + 0x14]
mov eax, dword [ebp - 0x204]
push ebx
add eax, dword [ebp - 0x1fc]
push dword [esi + 0x10]
push eax
add esi, 0x40
call fcn.00478620
add dword [ebp - 0x204], ebx
add esp, 0xc
dec dword [ebp - 0x200]
jne 0x44107c
mov edx, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x1fc]
mov byte [edx + ecx], 0
mov byte [ecx + edx + 1], 0
mov ebx, dword [ebp - 0x1dc]
cmp dword [ebx + 8], 0
jne 0x4410d7
mov edx, edi
lea eax, [ebp - 0x130]
call fcn.0044071b
mov eax, dword [ebp - 0x130]
mov dl, byte [ebp - 0x1e5]
add eax, 0x40
mov esi, dword [ebp - 0x204]
mov dword [ebp - 0x130], eax
mov byte [eax + 0x1b], dl
mov dword [eax + 0x14], esi
mov word [eax + 0x18], 0x62
mov dword [eax + 0x1c], 0
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x1fc]
mov dword [eax + 0x10], ecx
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x130]
mov dword [ebp - 0x208], ebx
sub ebx, 0x40
mov esi, dword [ebp - 0x208]
mov cx, word [ebx + 0x18]
mov dx, word [esi + 0x18]
mov eax, edx
or eax, ecx
movzx esi, ax
test esi, 1
je 0x441183
and dl, 0x40
je 0x441156
push dword [ebp - 0x208]
call fcn.004321af
pop edi
mov eax, dword [ebp - 0x130]
sub eax, 0x40
mov dword [ebp - 0x130], eax
test byte [eax + 0x18], 0x40
je 0x441172
push eax
call fcn.004321af
pop esi
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
and edx, ecx
and dl, 4
je 0x4412d6
mov eax, dword [ebp - 0x208]
mov edx, dword [eax - 0x40]
mov ecx, dword [eax - 0x3c]
mov esi, dword [eax]
mov edi, dword [eax + 4]
movzx eax, byte [ebp - 0x29d]
mov dword [ebp - 0x210], edx
mov dword [ebp - 0x20c], ecx
cmp eax, 0x4e
je 0x4411e3
jg 0x4411c3
cmp eax, 0x4d
je 0x4411d2
jmp 0x441259
cmp eax, 0x4f
je 0x4411f4
cmp eax, 0x50
je 0x44123a
jmp 0x441259
add dword [ebp - 0x210], esi
adc dword [ebp - 0x20c], edi
jmp 0x441285
sub dword [ebp - 0x210], esi
sbb dword [ebp - 0x20c], edi
jmp 0x441285
mov eax, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x210]
mul esi
imul ebx, edi
mov ecx, edx
mov dword [ebp - 0x2c4], eax
add ecx, ebx
mov ebx, dword [ebp - 0x20c]
imul ebx, esi
add ecx, ebx
mov edx, dword [ebp - 0x2c4]
mov dword [ebp - 0x2c0], ecx
mov dword [ebp - 0x210], edx
mov ecx, dword [ebp - 0x2c0]
mov dword [ebp - 0x20c], ecx
jmp 0x441285
mov ecx, edi
or ecx, esi
je 0x44140e
push edi
push esi
push dword [ebp - 0x20c]
push dword [ebp - 0x210]
call fcn.004773b0
jmp 0x441276
mov ebx, edi
or ebx, esi
je 0x44140e
push edi
push esi
push dword [ebp - 0x20c]
push dword [ebp - 0x210]
call fcn.00477510
add esp, 0x10
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], edx
mov esi, dword [ebp - 0x208]
test byte [esi + 0x18], 0x40
je 0x441298
push esi
call fcn.004321af
pop ebx
mov eax, dword [ebp - 0x130]
sub eax, 0x40
mov dword [ebp - 0x130], eax
test byte [eax + 0x18], 0x40
je 0x4412b4
push eax
call fcn.004321af
pop ecx
mov eax, dword [ebp - 0x130]
mov edx, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x20c]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov word [eax + 0x18], 4
jmp case.0x4409d4.11
push dword [ebp - 0x208]
call fcn.00432283
push ebx
fstp qword [ebp - 0x2bc]
call fcn.00432283
mov ecx, dword [ebp - 0x1dc]
pop eax
pop edx
movzx eax, byte [ecx]
cmp eax, 0x4e
fld qword [ebp - 0x2bc]
je 0x44131f
jg 0x44130c
cmp eax, 0x4d
je 0x441318
jmp 0x44133a
cmp eax, 0x4f
je 0x441323
cmp eax, 0x50
je 0x441327
jmp 0x44133a
faddp st(1)
jmp 0x44139f
fsubp st(1)
jmp 0x44139f
fmulp st(1)
jmp 0x44139f
fcom qword [0x6a9598]
fnstsw ax
sahf
je 0x44140a
fdivp st(1)
jmp 0x44139f
fnstcw word [ebp - 0x1ce]
mov ax, word [ebp - 0x1ce]
or ah, 0xc
mov word [ebp - 0x1d0], ax
fldcw word [ebp - 0x1d0]
fistp dword [ebp - 0x1d4]
fldcw word [ebp - 0x1ce]
mov ecx, dword [ebp - 0x1d4]
fldcw word [ebp - 0x1d0]
fistp dword [ebp - 0x1d4]
fldcw word [ebp - 0x1ce]
push ecx
fild dword [esp]
fcomp qword [0x6a9598]
fnstsw ax
add esp, 4
mov edx, dword [ebp - 0x1d4]
sahf
je 0x44140e
mov eax, edx
cdq
idiv ecx
push edx
fild dword [esp]
add esp, 4
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x4413be
push eax
fstp qword [ebp - 0x2b0]
call fcn.004321af
pop eax
fld qword [ebp - 0x2b0]
mov eax, dword [ebp - 0x130]
sub eax, 0x40
mov dword [ebp - 0x130], eax
test byte [eax + 0x18], 0x40
je 0x4413e6
push eax
fstp qword [ebp - 0x2b0]
call fcn.004321af
pop eax
fld qword [ebp - 0x2b0]
mov eax, dword [ebp - 0x130]
and esi, 8
fstp qword [eax + 8]
mov word [eax + 0x18], 8
jne case.0x4409d4.11
push eax
call fcn.004322e2
pop eax
jmp case.0x4409d4.11
fstp st(0)
fstp st(0)
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x441421
push eax
call fcn.004321af
pop eax
mov eax, dword [ebp - 0x130]
sub eax, 0x40
mov dword [ebp - 0x130], eax
test byte [eax + 0x18], 0x40
je 0x44143d
push eax
call fcn.004321af
pop edi
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
mov ebx, 1
mov ecx, dword [ebp + 8]
xor esi, esi
mov edi, dword [edx + 8]
sub ebx, edi
mov ecx, dword [ecx + 0x30]
shl ebx, 6
mov dword [ebp - 0x214], ecx
add ebx, dword [ebp - 0x130]
cmp esi, edi
jge 0x44148f
mov eax, dword [ebp - 0x214]
mov dword [eax + esi*4], ebx
mov eax, ebx
call fcn.004406e0
inc esi
add ebx, 0x40
jmp 0x441475
mov edx, dword [ebp - 0x1dc]
cmp dword [edx + 0x10], 0xfffffffb
mov eax, dword [edx + 0xc]
jne 0x4414b0
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], 0
jmp 0x4414be
mov dword [ebp - 0xa8], eax
mov eax, dword [eax]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
mov word [ebp - 0x8c], 1
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x88], 0
mov byte [ebp - 0x60], 0
cmp byte [eax + 3], 0
je 0x4414f7
mov ecx, dword [ebp - 0x1dc]
mov eax, dword [ecx - 8]
mov dword [ebp - 0x5c], eax
push dword [ebp - 0x1e4]
call fcn.0042fce7
pop esi
test eax, eax
jne 0x444826
push dword [ebp - 0x214]
lea eax, [ebp - 0xac]
push edi
push eax
mov eax, dword [ebp - 0xac]
call dword [eax + 0x10]
push dword [ebp - 0x1e4]
call fcn.0042fcb3
add esp, 0x10
test eax, eax
jne 0x444826
call fcn.0042fff0
test eax, eax
jne 0x4447de
lea eax, [ebp - 0x130]
mov edx, edi
call fcn.0044071b
mov eax, dword [ebp - 0xa8]
test eax, eax
je 0x44157d
mov ebx, dword [ebp - 0x1dc]
push dword [ebx + 4]
push eax
call fcn.00430576
mov eax, dword [ebp - 0xa8]
mov dword [ebx + 0x10], 0xfffffff9
mov dword [ebx + 0xc], eax
pop ecx
pop ebx
cmp byte [ebp - 0x60], 0
je 0x4415af
lea eax, [ebp - 0xa4]
push 0
push eax
call fcn.00434656
mov dword [esp], eax
mov eax, dword [ebp + 8]
add eax, 0x230
push eax
call fcn.004300b2
mov dword [ebp - 0x1e0], 1
add esp, 0xc
movzx eax, byte [ebp - 0x1e5]
lea ebx, [ebp - 0xa4]
push eax
push ebx
call fcn.00431f50
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 0
push ebx
push eax
call fcn.00432463
add esp, 0x10
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x130]
lea ecx, [edx - 0x40]
mov ax, word [ecx + 0x18]
or ax, word [edx + 0x18]
test al, 1
je 0x441626
lea eax, [ebp - 0x130]
mov edx, 2
call fcn.0044071b
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
push ecx
call fcn.00432203
push dword [ebp - 0x130]
mov ebx, eax
mov esi, edx
call fcn.00432203
mov edi, dword [ebp - 0x1dc]
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x218], edx
pop eax
pop edx
movzx eax, byte [edi]
cmp eax, 0x4a
je 0x44167e
jg 0x441660
cmp eax, 0x49
je 0x44166c
jmp 0x4416bf
cmp eax, 0x4b
je 0x441694
cmp eax, 0x4c
je 0x4416aa
jmp 0x4416bf
mov eax, dword [ebp - 0x21c]
mov edx, dword [ebp - 0x218]
and eax, ebx
and edx, esi
jmp 0x44168e
mov eax, dword [ebp - 0x21c]
mov edx, dword [ebp - 0x218]
or eax, ebx
or edx, esi
mov ebx, eax
mov esi, edx
jmp 0x4416bf
mov cl, byte [ebp - 0x21c]
shld esi, ebx, cl
shl ebx, cl
and cl, 0x20
je 0x4416bf
mov esi, ebx
xor ebx, ebx
jmp 0x4416bf
mov cl, byte [ebp - 0x21c]
shrd ebx, esi, cl
sar esi, cl
and cl, 0x20
je 0x4416bf
mov ebx, esi
sar esi, 0x1f
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x4416d2
push eax
call fcn.004321af
pop eax
mov eax, dword [ebp - 0x130]
sub eax, 0x40
mov dword [ebp - 0x130], eax
test byte [eax + 0x18], 0x40
je 0x4416ee
push eax
call fcn.004321af
pop edi
mov eax, dword [ebp - 0x130]
mov dword [eax], ebx
mov dword [eax + 4], esi
mov word [eax + 0x18], 4
jmp case.0x4409d4.11
push dword [ebp - 0x130]
call fcn.00432328
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x130]
mov eax, dword [edx + 4]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
pop ebx
jmp case.0x4409d4.11
movzx edx, byte [ebp - 0x1e5]
mov eax, dword [ebp - 0x130]
push edx
mov edx, 0x63
call fcn.00440805
mov edx, dword [ebp - 0x130]
movzx eax, word [edx + 0x18]
pop ecx
test al, 0xc
jne 0x441778
test al, 0x40
je 0x44175c
push edx
call fcn.004321af
pop eax
mov ecx, dword [ebp - 0x1dc]
sub dword [ebp - 0x130], 0x40
mov ebx, dword [ecx + 8]
dec ebx
mov dword [ebp - 0x1d8], ebx
jmp case.0x4409d4.11
test al, 4
je 0x441797
mov esi, dword [ebp - 0x1dc]
xor ebx, ebx
cmp dword [esi + 4], 0
setne bl
xor esi, esi
add ebx, dword [edx]
adc esi, dword [edx + 4]
jmp 0x44181e
push edx
call fcn.0043234d
mov eax, dword [ebp - 0x130]
mov edi, dword [ebp - 0x1dc]
fld qword [eax + 8]
fnstcw word [ebp - 0x1ce]
mov ax, word [ebp - 0x1ce]
or ah, 0xc
mov word [ebp - 0x1d0], ax
fldcw word [ebp - 0x1d0]
fist dword [ebp - 0x1d4]
fldcw word [ebp - 0x1ce]
mov eax, dword [ebp - 0x1d4]
mov esi, eax
mov ebx, eax
sar esi, 0x1f
push esi
push eax
fild qword [esp]
fcomp st(1)
fnstsw ax
add esp, 0xc
sahf
setb cl
movzx eax, cl
xor edx, edx
add ebx, eax
adc esi, edx
cmp dword [edi + 4], 0
je 0x44181c
push esi
push ebx
fild qword [esp]
fcompp
fnstsw ax
add esp, 8
sahf
sete cl
movzx eax, cl
xor edx, edx
add ebx, eax
adc esi, edx
jmp 0x44181e
fstp st(0)
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x441831
push eax
call fcn.004321af
pop edi
mov eax, dword [ebp - 0x130]
mov dword [eax], ebx
mov dword [eax + 4], esi
mov word [eax + 0x18], 4
jmp case.0x4409d4.11
movzx edx, byte [ebp - 0x1e5]
mov eax, dword [ebp - 0x130]
push edx
mov edx, 0x63
call fcn.00440805
mov edx, dword [ebp - 0x130]
movzx eax, word [edx + 0x18]
pop ecx
test al, 4
jne 0x4418a9
mov eax, dword [ebp - 0x1dc]
cmp dword [eax + 8], 0
je 0x444802
cmp dword [eax + 4], 0
je 0x441894
mov edx, 1
lea eax, [ebp - 0x130]
call fcn.0044071b
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [edx + 8]
dec ecx
mov dword [ebp - 0x1d8], ecx
jmp case.0x4409d4.11
test al, 0x40
je 0x4418b4
push edx
call fcn.004321af
pop eax
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 4
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 4
je case.0x4409d4.11
push eax
call fcn.0043234d
pop eax
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x130]
mov dx, word [ecx + 0x18]
movzx eax, dx
test al, 1
jne case.0x4409d4.11
and eax, 0x10
sar eax, 3
or edx, eax
movzx eax, byte [ebp - 0x1e5]
mov word [ecx + 0x18], dx
push eax
mov edx, 0x61
mov eax, ecx
call fcn.00440805
mov eax, dword [ebp - 0x130]
and word [eax + 0x18], 0xffe3
pop eax
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x130]
movzx eax, word [ecx + 0x18]
test al, 1
jne case.0x4409d4.11
test al, 0x10
jne 0x44195d
movzx eax, byte [ebp - 0x1e5]
mov edx, 0x61
push eax
mov eax, ecx
call fcn.00440805
mov eax, dword [ebp - 0x130]
or word [eax + 0x18], 0x10
pop eax
mov eax, dword [ebp - 0x130]
and word [eax + 0x18], 0xfff1
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
jne case.0x4409d4.11
push eax
call fcn.00432370
pop eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
jne case.0x4409d4.11
push eax
call fcn.00432328
pop eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
jne case.0x4409d4.11
push eax
call fcn.0043234d
pop edi
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x130]
lea edi, [ecx - 0x40]
mov dx, word [ecx + 0x18]
mov eax, edx
or ax, word [edi + 0x18]
test al, 1
je 0x441a61
mov ebx, dword [ebp - 0x1dc]
test byte [ebx + 5], 2
je 0x441a14
movzx eax, dx
xor eax, 1
xor edx, edx
and eax, 1
push edx
push eax
push ecx
call fcn.004323ad
xor edx, edx
movzx eax, word [edi + 0x18]
xor eax, 1
push edx
and eax, 1
push eax
push edi
call fcn.004323ad
add esp, 0x18
jmp 0x441a61
lea eax, [ebp - 0x130]
mov edx, 2
call fcn.0044071b
mov esi, dword [ebp - 0x1dc]
mov eax, dword [esi + 8]
test eax, eax
je 0x441a47
test byte [esi + 5], 1
je case.0x4409d4.11
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
mov al, byte [edx + 4]
test al, al
je 0x441a92
movsx esi, al
movzx ebx, byte [ebp - 0x1e5]
mov edx, esi
mov eax, edi
push ebx
call fcn.00440805
mov edx, esi
mov eax, dword [ebp - 0x130]
push ebx
call fcn.00440805
pop ebx
pop esi
mov ecx, dword [ebp - 0x1dc]
push dword [ecx + 0xc]
push dword [ebp - 0x130]
push edi
call fcn.0043265b
mov esi, dword [ebp - 0x1dc]
mov ebx, eax
add esp, 0xc
movzx eax, byte [esi]
sub eax, 0x42
cmp eax, 4
ja case.default.0x441abd
jmp dword [eax*4 + 0x6a97d4]
test ebx, ebx
sete al
jmp 0x441ade
test ebx, ebx
setne al
jmp 0x441ade
test ebx, ebx
setle al
jmp 0x441ade
test ebx, ebx
setg al
movzx ebx, al
jmp 0x441ae8
not ebx
shr ebx, 0x1f
lea eax, [ebp - 0x130]
mov edx, 2
call fcn.0044071b
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
test eax, eax
je 0x441b19
test ebx, ebx
je case.0x4409d4.11
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x130]
lea eax, [edx + 0x40]
mov dword [edx + 0x40], ebx
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 4
mov eax, ebx
sar eax, 0x1f
mov dword [edx + 0x44], eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
mov esi, 2
lea ebx, [eax - 0x40]
test byte [eax + 0x18], 1
jne 0x441b6a
push eax
call fcn.00432328
mov eax, dword [ebp - 0x130]
pop ecx
mov edx, dword [eax + 4]
or edx, dword [eax]
sete al
movzx esi, al
mov edx, 2
test byte [ebx + 0x18], 1
jne 0x441b87
push ebx
call fcn.00432328
mov eax, dword [ebx + 4]
pop edx
or eax, dword [ebx]
sete al
movzx edx, al
mov ecx, dword [ebp - 0x1dc]
cmp byte [ecx], 0x3c
jne 0x441b9f
imul eax, esi, 3
movzx esi, byte [eax + edx + 0x6a9420]
jmp 0x441baa
imul eax, esi, 3
movzx esi, byte [eax + edx + 0x6a9429]
lea eax, [ebp - 0x130]
mov edx, 2
call fcn.0044071b
mov edi, dword [ebp - 0x130]
lea eax, [edi + 0x40]
cmp esi, 2
mov dword [ebp - 0x130], eax
mov ebx, eax
jne 0x441bdb
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
xor eax, eax
test esi, esi
sete al
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], 0
mov word [ebx + 0x18], 4
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x130]
movzx eax, word [edx + 0x18]
test al, 8
je 0x441c52
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x441c18
push eax
call fcn.004321af
pop eax
mov ebx, dword [ebp - 0x1dc]
cmp byte [ebx], 0x53
je 0x441c37
mov eax, dword [ebp - 0x130]
fld qword [eax + 8]
fcomp qword [0x6a9598]
fnstsw ax
sahf
jae 0x441c41
mov eax, dword [ebp - 0x130]
xor byte [eax + 0xf], 0x80
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 8
jmp case.0x4409d4.11
test al, 4
je 0x441c98
test al, 0x40
je 0x441c61
push edx
call fcn.004321af
pop eax
mov edx, dword [ebp - 0x1dc]
cmp byte [edx], 0x53
je 0x441c78
mov eax, dword [ebp - 0x130]
cmp dword [eax + 4], 0
jns 0x441c87
mov eax, dword [ebp - 0x130]
neg dword [eax]
adc dword [eax + 4], 0
neg dword [eax + 4]
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 4
jmp case.0x4409d4.11
test al, 1
jne case.0x4409d4.11
push edx
call fcn.00432370
pop eax
jmp 0x441c05
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
jne case.0x4409d4.11
push eax
call fcn.00432328
mov ecx, dword [ebp - 0x130]
pop edi
mov eax, dword [ecx + 4]
mov word [ecx + 0x18], 4
or eax, dword [ecx]
mov dword [ecx + 4], 0
sete bl
movzx eax, bl
mov dword [ecx], eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
jne case.0x4409d4.11
push eax
call fcn.00432328
mov ecx, dword [ebp - 0x130]
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
not eax
not edx
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov word [ecx + 0x18], 4
pop esi
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
je 0x441d35
mov ecx, dword [ebp - 0x1dc]
mov ebx, dword [ecx + 4]
jmp 0x441d5d
push eax
call fcn.00432283
mov esi, dword [ebp - 0x1dc]
pop ebx
xor ebx, ebx
fcomp qword [0x6a9598]
fnstsw ax
sahf
setne bl
cmp byte [esi], 0x48
jne 0x441d5d
test ebx, ebx
sete al
movzx ebx, al
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x441d70
push eax
call fcn.004321af
pop ecx
sub dword [ebp - 0x130], 0x40
test ebx, ebx
je case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
mov esi, dword [ecx + 8]
dec esi
mov dword [ebp - 0x1d8], esi
jmp 0x441ddc
mov edi, dword [ebp - 0x1dc]
xor ecx, ecx
mov edx, dword [edi + 4]
mov eax, edx
mov ebx, edx
sar eax, 0x1f
xor edx, eax
sub edx, eax
mov eax, 1
sub eax, edx
shl eax, 6
add eax, dword [ebp - 0x130]
cmp ecx, edx
jge 0x441ddc
test byte [eax + 0x18], 1
jne 0x441d94
inc ecx
add eax, 0x40
jmp 0x441dcc
test ebx, ebx
jle case.0x4409d4.11
lea eax, [ebp - 0x130]
call fcn.0044071b
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
xor ebx, ebx
mov edx, dword [eax + 4]
mov eax, edx
mov esi, edx
sar eax, 0x1f
xor edx, eax
sub edx, eax
cmp ebx, edx
jge 0x441e3b
mov ecx, dword [ebp - 0x130]
mov eax, edx
shl eax, 6
mov edi, ecx
sub edi, eax
test byte [edi + 0x58], 1
jne 0x441e37
imul eax, edx, 0xffffffc0
lea eax, [eax + ecx + 0x58]
inc ebx
add eax, 0x40
cmp ebx, edx
jge 0x441e3b
test byte [eax], 1
je 0x441e2a
cmp ebx, edx
jl 0x441e4b
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [eax + 8]
dec ecx
mov dword [ebp - 0x1d8], ecx
test esi, esi
jle case.0x4409d4.11
lea eax, [ebp - 0x130]
call fcn.0044071b
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov edx, dword [ebx + 4]
mov eax, dword [esi + 0x3c]
mov edx, dword [eax + edx*4]
mov eax, dword [ebx + 8]
mov dword [edx + 0x50], eax
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov word [ebp - 0x34], 0
mov eax, dword [edi + 8]
mov edx, dword [edi + 4]
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 1
mov eax, dword [ecx + 0x3c]
mov esi, dword [eax + edx*4]
cmp dword [esi], 0
je 0x441f5c
push esi
call fcn.00431736
pop edx
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
mov ebx, dword [esi]
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x228], ebx
cmp byte [esi + 0x1c], 0
je 0x441ef8
mov dword [ebp - 0x13c], 0
jmp 0x441f51
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x60]
cmp dword [esi + 0x60], eax
jne 0x441f17
mov eax, dword [esi + 0x64]
mov dword [ebp - 0x13c], eax
mov eax, dword [esi + 0x70]
mov dword [ebp - 0x224], eax
jmp 0x441f51
cmp byte [esi + 0x21], 0
je 0x441f3d
lea eax, [ebp - 0x138]
push eax
push dword [ebp - 0x228]
call fcn.00437024
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x13c], eax
jmp 0x441f4f
lea eax, [ebp - 0x13c]
push eax
push dword [ebp - 0x228]
call fcn.00436fdd
pop ebx
pop edi
mov edx, dword [esi + 0x50]
mov dword [ebp - 0x234], edx
jmp 0x441fb8
cmp byte [esi + 0x1e], 0
je 0x441f90
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x38]
mov ebx, dword [esi + 0x50]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x224], ecx
mov dword [esi + 0x60], 0
mov dword [ebp - 0x234], ebx
mov dword [ebp - 0x228], 0
jmp 0x441fb8
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x234], 0
cmp dword [ebp - 0x13c], 0
je case.0x4409d4.11
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x60]
cmp dword [esi + 0x60], eax
mov eax, dword [esi + 0x68]
jne 0x441fe7
mov dword [ebp - 0x22c], eax
mov eax, dword [esi + 0x6c]
mov dword [ebp - 0x230], eax
jmp 0x4421d2
mov dword [ebp - 0x22c], eax
test eax, eax
jne 0x442015
mov eax, dword [ebp - 0x234]
push 1
shl eax, 3
push eax
call fcn.00430080
test eax, eax
mov dword [esi + 0x68], eax
mov dword [ebp - 0x22c], eax
pop edx
pop ecx
je 0x4447de
mov ecx, dword [ebp - 0x22c]
mov edx, dword [ebp - 0x234]
mov eax, dword [ebp - 0x13c]
mov ebx, dword [ebp - 0x224]
lea edx, [ecx + edx*4]
mov ecx, dword [ebp + 8]
mov dword [esi + 0x64], eax
mov dword [ebp - 0x230], edx
mov eax, dword [ecx + 0x60]
mov dword [esi + 0x6c], edx
mov dword [esi + 0x60], eax
test ebx, ebx
jne 0x442093
cmp byte [esi + 0x21], 0
lea eax, [ebp - 0x140]
je 0x442063
push eax
push dword [ebp - 0x228]
call fcn.0043686d
jmp 0x44206f
push eax
push dword [ebp - 0x228]
call fcn.0043688a
mov ebx, eax
mov eax, dword [ebp - 0x13c]
pop ecx
cmp dword [ebp - 0x140], eax
pop edi
jb 0x44208c
mov dword [ebp - 0x224], ebx
mov dword [esi + 0x70], ebx
jmp 0x442093
mov dword [esi + 0x70], 0
movzx eax, byte [ebx]
mov edi, 1
mov dword [ebp - 0x144], eax
cmp eax, 0x7f
jbe 0x4420b7
lea eax, [ebp - 0x144]
push eax
push ebx
call fcn.0042ff12
pop edi
mov edi, eax
pop edx
cmp dword [ebp - 0x224], 0
jne 0x4420f9
mov edx, dword [ebp - 0x144]
cmp dword [ebp - 0x140], edx
jae 0x4420f9
lea eax, [ebp - 0x4c]
push eax
movzx eax, byte [esi + 0x21]
push eax
push edx
push 0
push dword [ebp - 0x228]
call fcn.00432831
add esp, 0x14
test eax, eax
mov dword [ebp - 0x1e0], eax
jne case.0x4409d4.11
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x144]
add eax, ebx
add ebx, edi
xor edi, edi
mov dword [ebp - 0x238], eax
cmp edi, dword [ebp - 0x234]
jae 0x442197
mov edx, dword [ebp - 0x22c]
mov dword [ebp - 0x2a4], edx
cmp ebx, dword [ebp - 0x238]
jae 0x44217a
mov ecx, dword [ebp - 0x230]
mov eax, dword [ebp - 0x144]
mov edx, dword [ebp - 0x22c]
mov dword [ecx + edi*4], eax
movzx eax, byte [ebx]
mov dword [edx + edi*4], eax
cmp eax, 0x7f
jbe 0x44215e
push dword [ebp - 0x2a4]
push ebx
call fcn.0042ff12
pop edx
pop ecx
lea eax, [ebx + eax]
jmp 0x442161
lea eax, [ebx + 1]
mov ecx, dword [ebp - 0x22c]
mov ebx, eax
push dword [ecx + edi*4]
call fcn.0043186f
add dword [ebp - 0x144], eax
pop eax
jmp 0x442187
mov eax, dword [ebp - 0x230]
mov dword [eax + edi*4], 0
inc edi
add dword [ebp - 0x2a4], 4
cmp edi, dword [ebp - 0x234]
jb 0x442123
test byte [ebp - 0x34], 0x40
je 0x4421a7
lea eax, [ebp - 0x4c]
push eax
call fcn.004321af
pop edi
mov word [ebp - 0x34], 1
cmp ebx, dword [ebp - 0x238]
ja 0x4421c3
mov eax, dword [ebp - 0x13c]
cmp dword [ebp - 0x144], eax
jbe 0x4421d2
mov dword [ebp - 0x1e0], 0xb
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x230]
mov eax, dword [ecx + edx*4]
test eax, eax
je 0x44226e
cmp dword [ebp - 0x224], 0
je 0x4421fc
mov ebx, dword [ebp - 0x224]
add ebx, eax
jmp 0x442242
mov ebx, dword [ebp - 0x220]
mov edi, dword [ebp - 0x22c]
push dword [edi + ebx*4]
call fcn.0043186f
lea edx, [ebp - 0x4c]
push edx
movzx edx, byte [esi + 0x21]
push edx
push eax
mov eax, dword [ebp - 0x230]
push dword [eax + ebx*4]
push dword [ebp - 0x228]
call fcn.00432831
add esp, 0x18
test eax, eax
mov dword [ebp - 0x1e0], eax
jne case.0x4409d4.11
mov ebx, dword [ebp - 0x3c]
push dword [ebp - 0x130]
mov edx, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x22c]
push dword [ecx + edx*4]
push ebx
call fcn.00431902
mov eax, dword [ebp - 0x130]
mov bl, byte [ebp - 0x1e5]
mov byte [eax + 0x1b], bl
jmp 0x44228d
mov esi, dword [ebp - 0x1dc]
cmp dword [esi + 0x10], 0xfffffff8
jne 0x442292
push pe_nt_image_headers32
push dword [esi + 0xc]
push dword [ebp - 0x130]
call fcn.004323f6
add esp, 0xc
jmp 0x44229e
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 1
test byte [ebp - 0x34], 0x40
je 0x4422b8
mov edx, dword [ebp - 0x130]
mov ax, word [edx + 0x18]
and ah, 0xfe
or eax, 0x60
mov word [edx + 0x18], ax
push dword [ebp - 0x130]
call fcn.00431fde
pop ebx
mov dword [ebp - 0x1e0], eax
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
xor edi, edi
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x244], 0
mov eax, dword [edx + 4]
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x258], eax
shr eax, 0x1f
mov dword [ebp - 0x254], eax
je 0x44230f
neg dword [ebp - 0x258]
xor eax, eax
mov edx, dword [ebp - 0x130]
cmp byte [ebp - 0x29d], 0x33
sete al
mov dword [ebp - 0x260], eax
mov eax, 1
sub eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x1dc]
shl eax, 6
mov ebx, dword [ebp - 0x1dc]
mov ecx, dword [ecx + 8]
mov esi, dword [ebp + 8]
lea eax, [edx + eax]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x25c], ecx
mov dword [ebp - 0x264], ebx
mov dword [ebp - 0x250], eax
cmp eax, edx
movzx esi, byte [esi + 0x239]
mov dword [ebp - 0x268], esi
mov esi, eax
ja 0x4423e3
cmp dword [ebp - 0x264], 0
je 0x4423a0
mov eax, esi
mov ecx, dword [ebp - 0x264]
sub eax, dword [ebp - 0x250]
sar eax, 6
movsx edx, byte [eax + ecx]
movzx eax, byte [ebp - 0x1e5]
push eax
mov eax, esi
call fcn.00440805
pop ecx
test byte [esi + 0x18], 1
je 0x4423b0
mov dword [ebp - 0x24c], 1
push dword [ebp - 0x268]
push esi
call fcn.004317b7
mov ebx, eax
add esi, 0x40
push eax
call fcn.0043186f
xor edx, edx
push edx
add dword [ebp - 0x244], eax
push ebx
call fcn.0042ff81
add esp, 0x14
add edi, eax
cmp esi, dword [ebp - 0x130]
jmp 0x442370
cmp dword [ebp - 0x260], 0
je 0x44242b
imul ebx, dword [ebp - 0x258], 0xffffffc0
mov esi, dword [ebp - 0x130]
add ebx, esi
push ebx
mov dword [ebp - 0x240], ebx
call fcn.00432328
push 0
push ebx
call fcn.004317b7
mov ebx, eax
push eax
call fcn.0043186f
xor edx, edx
push edx
add dword [ebp - 0x244], eax
push ebx
call fcn.0042ff81
add esp, 0x18
add edi, eax
mov eax, edi
cdq
push edx
push edi
call fcn.0042ff81
add edi, eax
mov ebx, eax
mov eax, edi
cdq
push edx
push edi
call fcn.0042ff81
add esp, 0x10
cmp ebx, eax
setl al
movzx eax, al
add edi, eax
mov eax, dword [ebp - 0x244]
add eax, edi
mov dword [ebp - 0x248], eax
cmp eax, 0x20
jbe 0x44247c
push 1
push eax
call fcn.00430080
pop esi
test eax, eax
pop edx
mov dword [ebp - 0x23c], eax
jne 0x442488
jmp 0x4447de
lea edx, [ebp - 0xcc]
mov dword [ebp - 0x23c], edx
mov eax, edi
cdq
push edx
push edi
push dword [ebp - 0x23c]
call fcn.0042fd56
mov edi, dword [ebp - 0x23c]
add edi, eax
mov esi, dword [ebp - 0x250]
add esp, 0xc
cmp esi, dword [ebp - 0x130]
ja 0x4424d1
push dword [ebp - 0x268]
push esi
call fcn.004317b7
xor edx, edx
add esi, 0x40
push edx
push eax
push edi
call fcn.0042fd56
add esp, 0x14
add edi, eax
jmp 0x4424a9
cmp dword [ebp - 0x260], 0
je 0x4424f8
push 0
push dword [ebp - 0x240]
call fcn.004317b7
pop ecx
xor edx, edx
pop ebx
push edx
push eax
push edi
call fcn.0042fd56
add esp, 0xc
add edi, eax
mov esi, dword [ebp - 0x250]
cmp esi, dword [ebp - 0x130]
ja 0x44251d
push dword [ebp - 0x268]
push esi
push edi
call fcn.0043188a
add esi, 0x40
add edi, eax
add esp, 0xc
jmp 0x4424fe
cmp dword [ebp - 0x260], 0
je 0x442537
push 0
push dword [ebp - 0x240]
push edi
call fcn.0043188a
add esp, 0xc
cmp dword [ebp - 0x254], 0
jne 0x442557
mov edx, dword [ebp - 0x258]
lea eax, [ebp - 0x130]
add edx, dword [ebp - 0x260]
call fcn.0044071b
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x248]
cmp ecx, 0x20
lea eax, [edx + 0x40]
mov dword [ebp - 0x130], eax
mov dword [eax + 0x14], ecx
ja 0x442599
add edx, 0x60
mov dword [eax + 0x10], edx
lea eax, [ebp - 0xcc]
push ecx
push eax
push edx
call fcn.00478620
mov eax, dword [ebp - 0x130]
add esp, 0xc
mov word [eax + 0x18], 0x210
jmp 0x4425af
mov ebx, dword [ebp - 0x23c]
mov word [eax + 0x18], 0x50
mov dword [eax + 0x10], ebx
mov dword [eax + 0x1c], 0
mov eax, dword [ebp - 0x130]
mov byte [eax + 0x1b], 1
cmp dword [ebp - 0x25c], 0
setne dl
xor eax, eax
cmp dword [ebp - 0x24c], 0
setne al
test edx, eax
je case.0x4409d4.11
mov esi, dword [ebp - 0x25c]
dec esi
mov dword [ebp - 0x1d8], esi
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 4]
test eax, eax
js case.0x4409d4.11
mov edx, dword [ebp - 0x1e4]
cmp eax, dword [edx]
jge case.0x4409d4.11
imul eax, eax, 0x18
mov ecx, edx
mov edx, dword [edx + 4]
mov ebx, dword [eax + edx + 4]
test ebx, ebx
je case.0x4409d4.11
cmp byte [ecx + 0x10], 0
jne case.0x4409d4.11
push ebx
call fcn.0043a7ea
pop edx
test eax, eax
jne case.0x4409d4.11
push ebx
call fcn.004365ee
mov dword [ebp - 0x1e0], eax
pop eax
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp - 0x1e4]
mov bl, byte [esi + 4]
mov ecx, dword [esi + 8]
cmp dword [edi + 0x4c], 1
setg dl
xor eax, eax
test bl, bl
setne al
mov esi, ecx
test edx, eax
je 0x4426ae
cmp byte [edi + 0x10], 0
jne 0x4426ae
push 0
mov eax, str.rollback
push str._transaction___SQL_statements_in_progress
test cl, cl
jne 0x442688
mov eax, str.commit
push eax
mov eax, dword [ebp + 8]
add eax, 0x230
push str.cannot
push eax
call fcn.004300b2
add esp, 0x14
mov dword [ebp - 0x1e0], 1
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1e4]
cmp bl, byte [eax + 0x10]
je 0x4426f5
test ecx, ecx
je 0x4426d0
push eax
call fcn.0042d9dc
mov edx, dword [ebp - 0x1e4]
mov byte [edx + 0x10], 1
pop eax
jmp 0x4426eb
mov ecx, dword [ebp - 0x1e4]
mov byte [ecx + 0x10], bl
push dword [ebp + 8]
call fcn.00430f9e
pop edi
cmp eax, 5
je 0x4448b4
mov eax, 0x65
jmp 0x444915
push 0
mov eax, str.cannot_start_a_transaction_within_a_transaction
test bl, bl
je 0x442710
mov ebx, esi
mov eax, str.cannot_rollback___no_transaction_is_active
test bl, bl
jne 0x442710
mov eax, str.cannot_commit___no_transaction_is_active
push eax
mov eax, dword [ebp + 8]
add eax, 0x230
push eax
call fcn.004300b2
add esp, 0xc
mov dword [ebp - 0x1e0], 1
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov esi, dword [ebp - 0x1e4]
imul eax, dword [edi + 4], 0x18
mov edx, dword [esi + 4]
mov eax, dword [eax + edx + 4]
test eax, eax
je case.0x4409d4.11
push dword [edi + 8]
push eax
call fcn.00436012
pop ebx
cmp eax, 5
mov dword [ebp - 0x1e0], eax
pop esi
je 0x4448e2
test eax, eax
setne dl
cmp eax, 8
setne al
movzx eax, al
test edx, eax
je case.0x4409d4.11
jmp 0x444830
mov edx, dword [ebp - 0x1dc]
lea eax, [ebp - 0x148]
push eax
mov ebx, dword [ebp - 0x1dc]
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x1e4]
inc eax
push eax
imul eax, dword [ebx + 4], 0x18
mov edx, dword [ecx + 4]
push dword [eax + edx + 4]
call fcn.00439601
mov edx, dword [ebp - 0x130]
lea ecx, [edx + 0x40]
add esp, 0xc
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x148]
mov esi, eax
mov dword [ebp - 0x130], ecx
sar esi, 0x1f
mov dword [edx + 0x40], eax
mov dword [edx + 0x44], esi
mov word [ecx + 0x18], 4
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x1e4]
imul ebx, dword [edi + 4], 0x18
add ebx, dword [eax + 4]
push dword [ebp - 0x130]
call fcn.00432328
mov eax, dword [ebp - 0x130]
push dword [eax]
mov eax, dword [edi + 8]
inc eax
push eax
push dword [ebx + 4]
call fcn.00439663
add esp, 0x10
mov dword [ebp - 0x1e0], eax
mov eax, dword [edi + 8]
test eax, eax
jne 0x442843
mov edx, dword [ebp - 0x130]
mov eax, dword [ebx + 0x14]
mov edx, dword [edx]
mov dword [eax], edx
mov edx, dword [ebp - 0x1e4]
or dword [edx + 8], 0x10
jmp 0x442854
dec eax
jne 0x442854
mov edx, dword [ebp - 0x130]
mov eax, dword [ebx + 0x14]
mov dl, byte [edx]
mov byte [eax + 0x78], dl
mov ecx, dword [ebp - 0x1dc]
sub dword [ebp - 0x130], 0x40
cmp dword [ecx + 4], 1
jne case.0x4409d4.11
push dword [ebp - 0x1e4]
call fcn.00431f26
pop ecx
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov ebx, dword [ebp - 0x1e4]
imul eax, dword [esi + 4], 0x18
mov edx, dword [ebx + 4]
mov edx, dword [eax + edx + 4]
test edx, edx
jne 0x4428ad
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x14c], 0
jmp 0x4428cd
lea eax, [ebp - 0x14c]
push eax
push 1
push edx
call fcn.00439601
add esp, 0xc
test eax, eax
mov dword [ebp - 0x1e0], eax
jne case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
cmp dword [ebp - 0x14c], eax
je case.0x4409d4.11
mov eax, dword [ebp + 8]
push 0
add eax, 0x230
push str.database_schema_has_changed
push eax
call fcn.004300b2
add esp, 0xc
mov dword [ebp - 0x1e0], 0x11
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x1dc]
mov esi, dword [edx + 8]
mov eax, dword [eax + 4]
push dword [ebp - 0x130]
mov dword [ebp - 0x26c], eax
call fcn.00432328
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x1e4]
pop edx
mov edx, dword [ebp - 0x1dc]
mov ebx, dword [eax]
sub eax, 0x40
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x270], 0
imul eax, ebx, 0x18
add eax, dword [ecx + 4]
cmp byte [edx], 8
mov edi, dword [eax + 4]
jne 0x442983
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x270], 1
mov ecx, dword [ebp + 8]
mov al, byte [eax + 0x78]
cmp al, byte [ecx + 0x239]
jae 0x442983
mov byte [ecx + 0x239], al
test esi, esi
jg 0x4429a4
push dword [ebp - 0x130]
call fcn.00432328
mov eax, dword [ebp - 0x130]
mov esi, dword [eax]
sub eax, 0x40
mov dword [ebp - 0x130], eax
pop eax
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp + 8]
push ebx
call fcn.00440748
mov ebx, eax
pop eax
test ebx, ebx
je 0x4447de
mov byte [ebx + 0x1c], 1
test edi, edi
je case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
push ebx
push dword [eax + 0xc]
push fcn.00431afa
push dword [ebp - 0x270]
push esi
push edi
call fcn.00436de3
mov edx, dword [ebp - 0x1dc]
add esp, 0x18
mov dword [ebp - 0x1e0], eax
cmp dword [edx + 0x10], 0xfffffffa
jne 0x442a19
mov edx, dword [edx + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebx + 0x4c], edx
lea eax, [edx + 1]
mov dword [ebx + 0x48], eax
mov eax, dword [esi]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x79]
mov byte [edx], al
jmp 0x442a26
lea eax, [ebx + 0x22]
mov dword [ebx + 0x4c], 0
mov dword [ebx + 0x48], eax
cmp dword [ebp - 0x1e0], 5
je 0x442a51
jg 0x442a3f
cmp dword [ebp - 0x1e0], 0
je 0x442a8f
jmp 0x444830
cmp dword [ebp - 0x1e0], 0x10
je 0x442afe
jmp 0x444830
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 0x1d8]
mov edx, dword [ebp - 0x1dc]
mov ebx, dword [ebp - 0x130]
mov dword [edi + 0x7c], eax
mov dword [edi + 0x80], 5
cmp dword [edx + 8], 0
jg 0x442a81
lea eax, [ebx + 0x80]
jmp 0x442a84
lea eax, [ebx + 0x40]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x2c], eax
jmp 0x444910
push dword [ebx]
call fcn.00439c0c
pop edi
mov ecx, eax
test al, 0xf0
jne 0x44480e
and eax, 7
cmp eax, 5
setne dl
cmp eax, 2
setne al
movzx eax, al
test edx, eax
jne 0x44480e
mov al, cl
shr ecx, 1
and eax, 1
mov dl, cl
mov byte [ebx + 0x20], al
and edx, 1
test al, al
mov byte [ebx + 0x21], dl
je 0x442ae1
mov ebx, dword [ebp - 0x1dc]
cmp dword [ebx + 0x10], 0xfffffffa
je 0x44480e
test dl, dl
je case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
cmp dword [esi + 0x10], 0xfffffffa
je case.0x4409d4.11
jmp 0x44480e
mov edi, dword [ebp - 0x1dc]
cmp dword [edi + 0x10], 0xfffffffa
setne al
mov byte [ebx + 0x20], al
xor eax, 1
mov byte [ebx + 0x21], al
mov dword [ebp - 0x1e0], 0
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov edx, dword [eax + 4]
mov eax, dword [ebp + 8]
push 0xffffffffffffffff
call fcn.00440748
pop esi
mov ebx, eax
test eax, eax
je 0x4447de
mov byte [eax + 0x1c], 1
lea eax, [eax + 0x30]
push eax
push 0x1f4
push 1
push 0
push dword [ebp - 0x1e4]
call fcn.0042dfd0
add esp, 0x14
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x442c27
push 1
push dword [ebx + 0x30]
call fcn.00436012
pop edx
test eax, eax
pop ecx
mov dword [ebp - 0x1e0], eax
jne 0x442c27
mov edx, dword [ebp - 0x1dc]
cmp dword [edx + 0xc], 0
je 0x442c03
lea eax, [ebp - 0x150]
push 2
push eax
push dword [ebx + 0x30]
call fcn.004396a9
add esp, 0xc
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x442bfd
mov ecx, dword [ebp - 0x1dc]
push ebx
push dword [ecx + 0xc]
push fcn.00431afa
push 1
push dword [ebp - 0x150]
push dword [ebx + 0x30]
call fcn.00436de3
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x1dc]
add esp, 0x18
mov dword [ebp - 0x1e0], eax
mov eax, dword [edi]
mov edx, dword [esi + 0xc]
mov eax, dword [eax + 4]
mov dword [ebx + 0x4c], edx
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x79]
mov byte [edx], al
mov eax, dword [ebx + 0x4c]
inc eax
mov dword [ebx + 0x48], eax
mov byte [ebx + 0x20], 0
jmp 0x442c27
push ebx
push 0
push 0
push 1
push 1
push dword [ebx + 0x30]
call fcn.00436de3
add esp, 0x18
mov dword [ebp - 0x1e0], eax
lea eax, [ebx + 0x22]
mov byte [ebx + 0x20], 1
mov dword [ebx + 0x48], eax
mov edx, dword [ebp - 0x1dc]
cmp byte [ebx + 0x20], 0
mov eax, dword [edx + 8]
sete byte [ebx + 0x21]
mov dword [ebx + 0x50], eax
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
mov eax, dword [ebp + 8]
mov edx, dword [ecx + 4]
push 0xffffffffffffffff
call fcn.00440748
mov edx, eax
pop eax
test edx, edx
je 0x4447de
lea eax, [edx + 0x22]
mov byte [edx + 0x1c], 1
mov byte [edx + 0x1e], 1
mov dword [edx + 0x48], eax
mov byte [edx + 0x20], 1
mov byte [edx + 0x21], 0
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov ebx, dword [esi + 4]
test ebx, ebx
js case.0x4409d4.11
mov edi, dword [ebp + 8]
cmp ebx, dword [edi + 0x38]
jge case.0x4409d4.11
mov eax, dword [edi + 0x3c]
push dword [eax + ebx*4]
call fcn.00430d4f
mov eax, dword [edi + 0x3c]
mov dword [eax + ebx*4], 0
pop eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 4]
mov eax, dword [ecx + 0x3c]
mov ebx, dword [eax + edx*4]
cmp dword [ebx], 0
je 0x442e49
movzx esi, byte [ebp - 0x29d]
mov eax, dword [ebx + 0x48]
cmp esi, 6
sete dl
cmp esi, 0x3f
mov byte [ebx + 0x1c], 0
sete cl
or edx, ecx
mov byte [eax], dl
cmp byte [ebx + 0x20], 0
je 0x442d6f
push dword [ebp - 0x130]
call fcn.00432328
mov eax, dword [ebp - 0x130]
pop edi
mov edi, dword [ebp - 0x1dc]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
cmp dword [edi + 8], 0
jne 0x442d2e
cmp byte [edi], 0x78
jne 0x442d2e
mov byte [ebx + 0x1f], 1
mov dword [ebx + 0x28], edx
sub dword [ebp - 0x130], 0x40
mov dword [ebx + 0x2c], ecx
jmp case.0x4409d4.11
lea eax, [ebp - 0x154]
push eax
push ecx
push edx
push 0
push dword [ebx]
call fcn.004369e5
add esp, 0x14
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
mov eax, dword [ebp - 0x130]
cmp dword [ebp - 0x154], 0
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
sete byte [ebx + 0x19]
jmp 0x442da1
mov ecx, dword [ebp - 0x130]
lea eax, [ebp - 0x154]
push eax
mov eax, dword [ecx + 0x14]
cdq
push edx
push eax
push dword [ecx + 0x10]
push dword [ebx]
call fcn.004369e5
add esp, 0x14
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
mov byte [ebx + 0x19], 0
mov eax, dword [ebx + 0x48]
mov byte [ebx + 0x1f], 0
mov dword [ebx + 0x60], 0
mov byte [eax], 0
inc dword [0x6bf218]
cmp esi, 0x78
sete dl
cmp esi, 6
sete al
or eax, edx
test al, 1
mov eax, dword [ebp - 0x154]
je 0x442df0
test eax, eax
jns 0x442de4
lea eax, [ebp - 0x154]
push eax
push dword [ebx]
call fcn.004372e5
jmp 0x442e02
mov dword [ebp - 0x154], 0
jmp 0x442e26
test eax, eax
js 0x442e18
lea eax, [ebp - 0x154]
push eax
push dword [ebx]
call fcn.004373e8
pop edi
mov dword [ebp - 0x1e0], eax
pop edx
test eax, eax
jne 0x444830
mov byte [ebx + 0x19], 0
jmp 0x442e26
push dword [ebx]
call fcn.004372d3
pop esi
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 0
je 0x442e49
mov edx, dword [ebp - 0x1dc]
mov eax, dword [edx + 8]
test eax, eax
jle 0x442e45
dec eax
mov dword [ebp - 0x1d8], eax
jmp 0x442e49
mov byte [ebx + 0x1c], 1
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x442e5c
push eax
call fcn.004321af
pop ecx
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov ebx, dword [ebp + 8]
mov ecx, dword [ebp - 0x1dc]
xor esi, esi
mov edx, dword [ecx + 4]
mov eax, dword [ebx + 0x3c]
mov ebx, dword [eax + edx*4]
cmp dword [ebx], 0
je 0x442ee4
mov edx, dword [ebp - 0x130]
movzx eax, word [edx + 0x18]
test al, 0x12
jne 0x442ea7
movzx eax, byte [ebp - 0x1e5]
push eax
push edx
call fcn.004320d0
pop edi
test eax, eax
pop edx
jne 0x4447de
mov ecx, dword [ebp - 0x130]
lea eax, [ebp - 0x158]
push eax
mov eax, dword [ecx + 0x14]
cdq
push edx
push eax
push dword [ecx + 0x10]
push dword [ebx]
call fcn.004369e5
add esp, 0x14
test eax, eax
jne 0x442ed9
cmp dword [ebp - 0x158], 0
jne 0x442ed9
mov esi, 1
mov byte [ebx + 0x1f], 0
mov dword [ebx + 0x60], 0
mov edi, dword [ebp - 0x1dc]
mov al, byte [edi]
cmp al, 0x7b
jne 0x442f00
test esi, esi
je 0x442f1c
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1d8], eax
jmp 0x442f1c
test esi, esi
jne 0x442f14
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [edx + 8]
dec ecx
mov dword [ebp - 0x1d8], ecx
cmp al, 0x6a
je case.0x4409d4.11
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x442f2f
push eax
call fcn.004321af
pop ebx
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x130]
mov ebx, dword [esi + 4]
push eax
lea esi, [eax - 0x40]
call fcn.00432328
mov eax, dword [ebp - 0x130]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov dword [ebp - 0x27c], ecx
mov ecx, dword [ebp + 8]
sub eax, 0x40
mov dword [ebp - 0x280], edx
mov dword [ebp - 0x130], eax
mov eax, dword [ecx + 0x3c]
pop ecx
mov ebx, dword [eax + ebx*4]
mov dword [ebp - 0x274], ebx
mov ebx, dword [ebx]
mov dword [ebp - 0x278], ebx
test ebx, ebx
je case.0x4409d4.11
movzx eax, word [esi + 0x18]
test al, 0x12
jne 0x442fb3
movzx eax, byte [ebp - 0x1e5]
push eax
push esi
call fcn.004320d0
pop edi
test eax, eax
pop edx
jne 0x4447de
mov edi, dword [esi + 0x10]
mov ebx, dword [esi + 0x14]
push edi
call fcn.00431d9f
mov esi, dword [ebp - 0x274]
sub ebx, eax
mov eax, ebx
mov dword [esi + 0x60], 0
lea esi, [ebp - 0x15c]
cdq
push esi
push edx
push ebx
push edi
push dword [ebp - 0x278]
call fcn.004369e5
add esp, 0x18
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
cmp dword [ebp - 0x15c], 0
jns 0x443032
push esi
push dword [ebp - 0x278]
call fcn.004372e5
pop ecx
cmp dword [ebp - 0x15c], 0
mov dword [ebp - 0x1e0], eax
pop esi
je 0x443032
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
lea eax, [ebp - 0x15c]
push eax
push edi
push ebx
push dword [ebp - 0x274]
call fcn.00431e98
add esp, 0x10
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
cmp dword [ebp - 0x15c], 0
jle 0x443075
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [edx + 8]
dec ecx
mov dword [ebp - 0x1d8], ecx
jmp case.0x4409d4.11
lea eax, [ebp - 0x164]
push eax
push dword [ebp - 0x278]
call fcn.00431dce
pop edi
test eax, eax
pop edx
mov dword [ebp - 0x1e0], eax
jne 0x444830
mov ebx, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x164]
cmp ebx, dword [ebp - 0x27c]
jne 0x4430c8
cmp ecx, dword [ebp - 0x280]
jne 0x4430c8
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebx + 8]
dec esi
mov dword [ebp - 0x1d8], esi
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
lea edx, [eax + 0x40]
mov dword [eax + 0x40], ecx
mov dword [ebp - 0x130], edx
mov dword [eax + 0x44], ebx
mov word [edx + 0x18], 4
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 4]
mov eax, dword [ecx + 0x3c]
mov ebx, dword [eax + edx*4]
mov edx, dword [ebx]
test edx, edx
je 0x443161
lea eax, [ebp - 0x168]
push eax
mov eax, dword [ebp - 0x130]
push dword [eax + 4]
push dword [eax]
push 0
push edx
call fcn.004369e5
add esp, 0x14
cmp dword [ebp - 0x168], 0
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x130]
mov dword [ebx + 0x60], 0
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov byte [ebx + 0x1c], 0
sete byte [ebx + 0x19]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
cmp dword [ebp - 0x168], 0
je 0x443161
mov esi, dword [edi + 8]
dec esi
mov dword [ebp - 0x1d8], esi
mov byte [ebx + 0x19], 0
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x443174
push eax
call fcn.004321af
pop esi
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 4]
mov edi, dword [ebp - 0x130]
lea eax, [edi + 0x40]
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x130], eax
mov eax, dword [ecx + 0x3c]
mov esi, dword [eax + edx*4]
mov ecx, dword [esi + 0x58]
mov ebx, dword [esi + 0x5c]
mov eax, ecx
mov edx, ebx
add eax, 1
adc edx, 0
mov dword [esi + 0x58], eax
mov dword [esi + 0x5c], edx
mov dword [edi + 0x44], ebx
mov ebx, dword [ebp - 0x284]
mov dword [edi + 0x40], ecx
mov word [ebx + 0x18], 4
jmp case.0x4409d4.11
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x1dc]
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0
mov eax, dword [edi + 0x3c]
mov edx, dword [esi + 4]
mov edi, dword [eax + edx*4]
mov eax, dword [edi]
test eax, eax
je 0x44348f
push eax
mov dword [ebp - 0x288], 0
call fcn.00439c0c
pop ebx
and eax, 3
dec eax
jne 0x44480e
cmp byte [edi + 0x1b], 0
jne 0x443374
cmp byte [edi + 0x1d], 0
je 0x443237
mov eax, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
jmp 0x4432a9
lea eax, [ebp - 0x16c]
push eax
push dword [edi]
call fcn.00436eed
pop edx
test eax, eax
pop ecx
mov dword [ebp - 0x1e0], eax
jne 0x444830
cmp dword [ebp - 0x16c], 0
je 0x443274
mov dword [ebp - 0x174], 1
mov dword [ebp - 0x170], 0
jmp 0x4432b5
lea eax, [ebp - 0x174]
push eax
push dword [edi]
call fcn.00437024
mov edx, dword [ebp - 0x170]
pop ebx
mov eax, dword [ebp - 0x174]
pop esi
cmp edx, 0x7fffffff
jne 0x4432a3
cmp eax, 0xffffffff
jne 0x4432a3
mov byte [edi + 0x1b], 1
jmp 0x4432b5
add eax, 1
adc edx, 0
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x170], edx
mov edx, dword [ebp - 0x1dc]
mov eax, dword [edx + 8]
test eax, eax
je 0x44332d
mov ecx, dword [ebp + 8]
mov esi, eax
shl esi, 6
add esi, dword [ecx + 0x58]
push esi
call fcn.00432328
mov edx, dword [esi + 4]
mov eax, dword [esi]
pop ecx
cmp edx, 0x7fffffff
jne 0x4432ea
cmp eax, 0xffffffff
je 0x44481a
cmp byte [edi + 0x1b], 0
jne 0x44481a
add eax, 1
mov ebx, dword [ebp - 0x170]
adc edx, 0
mov ecx, dword [ebp - 0x174]
cmp ebx, edx
jg 0x44331c
jl 0x443310
cmp ecx, eax
jae 0x44331c
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x170], edx
mov eax, dword [ebp - 0x174]
mov edx, dword [ebp - 0x170]
mov dword [esi + 4], edx
mov dword [esi], eax
mov edx, dword [ebp - 0x170]
mov eax, dword [ebp - 0x174]
cmp edx, 0x7fffffff
ja 0x443366
jb 0x443348
cmp eax, 0xfffffffe
ja 0x443366
mov byte [edi + 0x1d], 1
mov eax, dword [ebp - 0x174]
mov edx, dword [ebp - 0x170]
add eax, 1
adc edx, 0
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], edx
jmp 0x44336a
mov byte [edi + 0x1d], 0
cmp byte [edi + 0x1b], 0
je 0x443480
mov ebx, dword [ebp - 0x1e4]
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x2c]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x174], eax
xor ebx, ebx
mov eax, dword [ebp - 0x170]
or eax, dword [ebp - 0x174]
sete dl
cmp ebx, 2
setg al
or eax, edx
test al, 1
je 0x4433d9
lea eax, [ebp - 0x174]
push eax
push 8
call fcn.0043f3d0
pop ecx
cmp ebx, 4
pop esi
jg 0x4433fe
mov eax, dword [ebp - 0x174]
xor edx, edx
and eax, 0xffffff
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x174], eax
jmp 0x4433fe
lea eax, [ebp - 0x175]
push eax
push 1
call fcn.0043f3d0
movzx eax, byte [ebp - 0x175]
inc eax
cdq
add dword [ebp - 0x174], eax
pop eax
adc dword [ebp - 0x170], edx
pop edx
mov ecx, dword [ebp - 0x170]
mov edx, dword [ebp - 0x174]
mov esi, ecx
or esi, edx
je 0x44342c
lea eax, [ebp - 0x16c]
inc ebx
push eax
push ecx
push edx
push 0
push dword [edi]
call fcn.004369e5
add esp, 0x14
mov dword [ebp - 0x288], eax
cmp ebx, 0x3e7
setle dl
xor eax, eax
cmp dword [ebp - 0x288], 0
sete al
test edx, eax
je 0x443452
cmp dword [ebp - 0x16c], 0
je 0x44338e
mov ecx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x174]
mov edx, dword [ebp - 0x170]
mov dword [ecx + 0x2c], edx
mov dword [ecx + 0x28], eax
cmp dword [ebp - 0x288], 0
jne 0x443480
cmp dword [ebp - 0x16c], 0
je 0x44481a
mov byte [edi + 0x19], 0
mov byte [edi + 0x1f], 0
mov dword [edi + 0x60], 0
mov eax, dword [ebp - 0x130]
mov edx, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x170]
lea ebx, [eax + 0x40]
mov dword [eax + 0x40], edx
mov dword [ebp - 0x130], ebx
mov dword [eax + 0x44], ecx
mov word [ebx + 0x18], 4
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebx + 4]
mov eax, dword [esi + 0x3c]
mov ebx, dword [eax + edx*4]
cmp dword [ebx], 0
jne 0x4434e2
cmp byte [ebx + 0x1e], 0
je 0x44368f
mov edx, dword [ecx - 0x3c]
mov eax, dword [ecx - 0x40]
mov dword [ebp - 0x28c], edx
mov edx, dword [ebp - 0x1dc]
mov dword [ebp - 0x290], eax
test byte [edx + 8], 1
je 0x443509
mov esi, dword [ebp + 8]
inc dword [esi + 0x23c]
mov edi, dword [ebp - 0x1dc]
test byte [edi + 8], 2
je 0x44352d
mov esi, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x290]
mov edx, dword [ebp - 0x28c]
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
cmp byte [ebx + 0x1d], 0
je 0x44354d
mov edi, dword [ecx - 0x3c]
mov edx, dword [ebx + 0x14]
mov esi, dword [ecx - 0x40]
mov eax, dword [ebx + 0x10]
cmp edi, edx
jl 0x44354d
jg 0x443549
cmp esi, eax
jb 0x44354d
mov byte [ebx + 0x1d], 0
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 1
je 0x443567
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
cmp byte [ebx + 0x1e], 0
je 0x4435f9
push dword [ebx + 0x38]
call fcn.0042f550
mov edx, dword [ebp - 0x28c]
mov dword [ebx + 0x44], edx
mov edx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x290]
mov dword [ebx + 0x40], eax
mov eax, dword [edx + 0x14]
mov dword [ebx + 0x34], eax
test byte [edx + 0x18], 0x40
pop eax
je 0x4435ac
mov eax, dword [edx + 0x10]
mov word [edx + 0x18], 1
mov dword [ebx + 0x38], eax
jmp 0x4435f3
push 1
mov eax, dword [ebx + 0x34]
add eax, 2
push eax
call fcn.00430080
mov edx, eax
test eax, eax
mov dword [ebx + 0x38], eax
pop esi
pop edi
je 0x4447de
push dword [ebx + 0x34]
mov eax, dword [ebp - 0x130]
push dword [eax + 0x10]
push edx
call fcn.00478620
mov edx, dword [ebx + 0x34]
mov eax, dword [ebx + 0x38]
add esp, 0xc
mov byte [edx + eax], 0
mov edx, dword [ebx + 0x38]
mov eax, dword [ebx + 0x34]
mov byte [edx + eax + 1], 0
mov byte [ebx + 0x1c], 0
jmp 0x44361d
push dword [eax + 0x14]
push dword [eax + 0x10]
push dword [ebp - 0x28c]
push dword [ebp - 0x290]
push 0
push dword [ebx]
call fcn.004391e1
add esp, 0x18
mov dword [ebp - 0x1e0], eax
mov byte [ebx + 0x19], 0
mov byte [ebx + 0x1f], 0
mov dword [ebx + 0x60], 0
cmp dword [ebp - 0x1e0], 0
jne 0x44368f
mov edx, dword [ebp - 0x1e4]
cmp dword [edx + 0x74], 0
je 0x44368f
mov ecx, dword [ebp - 0x1dc]
mov esi, dword [ecx + 0xc]
test esi, esi
je 0x44368f
mov ecx, dword [edx + 4]
imul edx, dword [ebx + 4], 0x18
mov ebx, dword [ebp - 0x1dc]
mov eax, dword [ebx + 8]
push dword [ebp - 0x28c]
push dword [ebp - 0x290]
shr eax, 2
push esi
and eax, 1
mov esi, dword [ebp - 0x1e4]
cmp eax, 1
sbb eax, eax
push dword [edx + ecx]
and eax, 0xfffffffb
add eax, 0x17
push eax
push dword [esi + 0x70]
call dword [esi + 0x74]
add esp, 0x18
mov edx, 2
lea eax, [ebp - 0x130]
call fcn.0044071b
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 4]
mov eax, dword [ecx + 0x3c]
mov ebx, dword [eax + edx*4]
cmp dword [ebx], 0
je 0x443776
mov esi, dword [ebp - 0x1e4]
cmp dword [esi + 0x74], 0
je 0x443709
cmp dword [edi + 0xc], 0
je 0x443709
cmp byte [ebx + 0x19], 0
je 0x4436eb
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov dword [ebp - 0x17c], edx
mov dword [ebp - 0x180], eax
jmp 0x443709
lea eax, [ebp - 0x180]
push eax
push dword [ebx]
call fcn.00437024
pop edx
test eax, eax
pop ecx
mov dword [ebp - 0x1e0], eax
jne 0x444830
push ebx
call fcn.00431736
pop edi
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
push dword [ebx]
call fcn.0043938e
mov dword [ebx + 0x60], 0
test eax, eax
mov dword [ebp - 0x1e0], eax
mov byte [ebx + 0x1d], 0
pop esi
jne 0x443776
mov edi, dword [ebp - 0x1e4]
cmp dword [edi + 0x74], 0
je 0x443776
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x443776
imul eax, dword [ebx + 4], 0x18
mov edx, dword [edi + 4]
push dword [ebp - 0x17c]
push dword [ebp - 0x180]
push ecx
push dword [eax + edx]
push 9
push dword [edi + 0x70]
call dword [edi + 0x74]
add esp, 0x18
mov edx, dword [ebp - 0x1dc]
test byte [edx + 8], 1
je case.0x4409d4.11
mov ecx, dword [ebp + 8]
inc dword [ecx + 0x23c]
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
cmp dword [ebx + 4], 0
je 0x4437b6
mov esi, dword [ebp + 8]
push dword [esi + 0x23c]
push dword [ebp - 0x1e4]
call fcn.00430f8d
pop ecx
pop ebx
mov edi, dword [ebp + 8]
mov dword [edi + 0x23c], 0
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebp - 0x130]
mov edx, dword [eax + 4]
mov eax, dword [ebx + 0x3c]
add ecx, 0x40
mov esi, dword [eax + edx*4]
mov dword [ebp - 0x130], ecx
cmp byte [esi + 0x1c], 0
jne 0x4438f4
mov edi, dword [esi]
test edi, edi
je 0x4438da
push esi
call fcn.00431736
pop edx
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
cmp byte [esi + 0x1c], 0
je 0x443829
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
cmp byte [esi + 0x21], 0
je 0x44384a
lea eax, [ebp - 0x188]
push eax
push edi
call fcn.00437024
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x18c], eax
jmp 0x443857
lea eax, [ebp - 0x18c]
push eax
push edi
call fcn.00436fdd
mov edx, dword [ebp - 0x130]
pop ebx
pop eax
mov eax, dword [ebp - 0x18c]
mov dword [edx + 0x14], eax
cmp eax, 0x20
ja 0x44387b
lea eax, [edx + 0x20]
mov word [edx + 0x18], 0x210
mov dword [edx + 0x10], eax
jmp 0x4438a5
push 1
push eax
call fcn.00430080
mov edx, eax
pop eax
test edx, edx
pop ecx
je 0x4447de
mov eax, dword [ebp - 0x130]
mov word [eax + 0x18], 0x50
mov dword [eax + 0x1c], 0
mov dword [eax + 0x10], edx
cmp byte [esi + 0x21], 0
mov ebx, dword [ebp - 0x130]
je 0x4438c4
push dword [ebx + 0x10]
push dword [ebp - 0x18c]
push 0
push edi
call fcn.00436f94
jmp 0x4438d5
push dword [ebx + 0x10]
push dword [ebp - 0x18c]
push 0
push edi
call fcn.00436f5d
add esp, 0x10
jmp 0x4438fa
cmp byte [esi + 0x1e], 0
je 0x4438f4
mov eax, dword [esi + 0x34]
mov word [ecx + 0x18], 0x110
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x38]
mov dword [ecx + 0x10], eax
jmp 0x4438fa
mov word [ecx + 0x18], 1
mov eax, dword [ebp - 0x130]
mov byte [eax + 0x1b], 1
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
mov edx, dword [esi + 4]
mov eax, dword [edi + 0x3c]
mov ebx, dword [eax + edx*4]
push ebx
call fcn.00431736
pop esi
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x444830
mov eax, dword [ebp - 0x130]
add eax, 0x40
mov dword [ebp - 0x130], eax
cmp byte [ebx + 0x19], 0
je 0x44394d
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
jmp 0x443959
cmp byte [ebx + 0x1e], 0
je 0x443967
mov eax, dword [ebx + 0x40]
mov edx, dword [ebx + 0x44]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x190], edx
jmp 0x44398d
cmp byte [ebx + 0x1c], 0
jne 0x443972
cmp dword [ebx], 0
jne 0x44397d
mov word [eax + 0x18], 1
jmp case.0x4409d4.11
lea eax, [ebp - 0x194]
push eax
push dword [ebx]
call fcn.00437024
pop ecx
pop ebx
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x194]
mov edx, dword [ebp - 0x190]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov word [ecx + 0x18], 4
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov eax, dword [edx + 4]
mov edx, dword [ecx + 0x3c]
mov eax, dword [edx + eax*4]
mov byte [eax + 0x1c], 1
mov byte [eax + 0x19], 0
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov edx, dword [ebx + 4]
mov eax, dword [esi + 0x3c]
mov ebx, dword [eax + edx*4]
mov edx, dword [ebx]
test edx, edx
je 0x443a39
lea eax, [ebp - 0x198]
push eax
push edx
call fcn.00436eed
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x198]
mov byte [ebx + 0x1c], al
mov byte [ebx + 0x1f], 0
mov dword [ebx + 0x60], 0
pop eax
pop edx
cmp dword [ebp - 0x198], 0
je case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
test eax, eax
jle case.0x4409d4.11
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov byte [ebx + 0x1c], 0
jmp case.0x4409d4.11
inc dword [0x6bf210]
dec dword [0x6bf218]
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 4]
mov eax, dword [ecx + 0x3c]
mov ebx, dword [eax + edx*4]
mov edx, dword [ebx]
test edx, edx
je 0x443a93
lea eax, [ebp - 0x19c]
push eax
push edx
call fcn.00436f25
pop esi
cmp dword [ebp - 0x19c], 0
pop edi
mov dword [ebp - 0x1e0], eax
mov dword [ebx + 0x60], 0
sete byte [ebx + 0x1a]
mov byte [ebx + 0x1f], 0
jmp 0x443a9d
mov dword [ebp - 0x19c], 1
mov eax, dword [ebp - 0x19c]
mov byte [ebx + 0x1c], al
cmp dword [ebp - 0x19c], 0
je case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov eax, dword [ebx + 8]
test eax, eax
jle case.0x4409d4.11
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1e4]
test byte [esi + 8], 4
jne 0x444868
mov edi, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 4]
mov eax, dword [ecx + 0x3c]
mov ebx, dword [eax + edx*4]
mov eax, dword [ebx]
test eax, eax
je 0x443b62
cmp byte [ebx + 0x1c], 0
je 0x443b0a
mov dword [ebp - 0x1a0], 1
jmp 0x443b41
cmp byte [ebp - 0x29d], 0x68
lea edx, [ebp - 0x1a0]
jne 0x443b22
push edx
push eax
call fcn.004372e5
jmp 0x443b29
push edx
push eax
call fcn.004373e8
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x1a0]
pop edx
pop ecx
mov byte [ebx + 0x1c], al
mov dword [ebx + 0x60], 0
cmp dword [ebp - 0x1a0], 0
jne 0x443b66
mov esi, dword [ebp - 0x1dc]
mov edi, dword [esi + 8]
inc dword [0x6bf218]
dec edi
mov dword [ebp - 0x1d8], edi
jmp 0x443b66
mov byte [ebx + 0x1c], 1
mov byte [ebx + 0x19], 0
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 4]
mov eax, dword [ecx + 0x3c]
mov esi, dword [eax + edx*4]
mov ebx, dword [esi]
test ebx, ebx
je 0x443bb3
mov ecx, dword [ebp - 0x130]
mov eax, dword [ecx + 0x14]
push 0
cdq
push 0x6a9432
push edx
push eax
push dword [ecx + 0x10]
push ebx
call fcn.004391e1
mov dword [esi + 0x60], 0
add esp, 0x18
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x443bc6
push eax
call fcn.004321af
pop eax
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov edx, dword [ebx + 4]
mov eax, dword [esi + 0x3c]
mov esi, dword [eax + edx*4]
mov ebx, dword [esi]
test ebx, ebx
je 0x443c30
mov ecx, dword [ebp - 0x130]
lea eax, [ebp - 0x1a4]
push eax
mov eax, dword [ecx + 0x14]
cdq
push edx
push eax
push dword [ecx + 0x10]
push ebx
call fcn.004369e5
add esp, 0x14
test eax, eax
mov dword [ebp - 0x1e0], eax
jne 0x443c29
cmp dword [ebp - 0x1a4], 0
jne 0x443c29
push ebx
call fcn.0043938e
mov dword [ebp - 0x1e0], eax
pop eax
mov dword [esi + 0x60], 0
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x443c43
push eax
call fcn.004321af
pop edi
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebp - 0x130]
mov edx, dword [edi + 4]
mov eax, dword [ebx + 0x3c]
add ecx, 0x40
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x130], ecx
mov word [ecx + 0x18], 1
mov edx, dword [eax]
test edx, edx
je case.0x4409d4.11
cmp byte [eax + 0x1c], 0
jne case.0x4409d4.11
lea eax, [ebp - 0x1ac]
push eax
push edx
call fcn.00431dce
pop ebx
test eax, eax
pop esi
mov dword [ebp - 0x1e0], eax
jne 0x444830
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1a8]
mov word [ecx + 0x18], 4
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
mov edx, dword [esi + 4]
mov eax, dword [edi + 0x3c]
mov ebx, dword [eax + edx*4]
cmp dword [ebx], 0
je 0x443d90
mov edx, dword [ebp - 0x130]
movzx eax, word [edx + 0x18]
test al, 0x12
jne 0x443d0a
movzx eax, byte [ebp - 0x1e5]
push eax
push edx
call fcn.004320d0
pop edx
test eax, eax
pop ecx
jne 0x4447de
mov eax, dword [ebx + 0x48]
mov edx, dword [ebp - 0x1dc]
cmp dword [edx + 0xc], 0
setne byte [eax]
lea eax, [ebp - 0x1b0]
push eax
mov eax, dword [ebp - 0x130]
push dword [eax + 0x10]
push dword [eax + 0x14]
push ebx
call fcn.00431e98
add esp, 0x10
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebx + 0x48]
mov byte [eax], 0
cmp dword [ebp - 0x1e0], 0
jne case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
mov al, byte [ecx]
cmp al, 0x24
jne 0x443d63
neg dword [ebp - 0x1b0]
jmp 0x443d77
cmp al, 0x3a
sete al
movzx eax, al
add eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x1b0], 0
jle 0x443d90
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebx + 8]
dec esi
mov dword [ebp - 0x1d8], esi
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x443da3
push eax
call fcn.004321af
pop eax
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1d8], eax
jmp 0x443e22
mov eax, dword [ebp - 0x130]
mov edx, dword [ebp - 0x1dc]
lea ebx, [ebp - 0x1b4]
mov ecx, dword [eax + 0x10]
mov esi, dword [edx + 4]
mov edi, dword [eax + 0x14]
mov dword [ebp - 0x294], ecx
push ebx
push ecx
call fcn.0042ff12
pop ecx
mov ebx, eax
pop eax
cmp ebx, edi
setl dl
xor eax, eax
test esi, esi
setg al
test edx, eax
je 0x443e22
lea eax, [ebp - 0x1b4]
push eax
mov eax, dword [ebp - 0x294]
add eax, ebx
push eax
call fcn.0042ff12
add ebx, eax
pop eax
cmp dword [ebp - 0x1b4], 0
pop edx
je 0x443daf
dec esi
jmp 0x443ded
mov eax, dword [ebp - 0x130]
test byte [eax + 0x18], 0x40
je 0x443e35
push eax
call fcn.004321af
pop eax
sub dword [ebp - 0x130], 0x40
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1e4]
mov dword [ebp - 0x1e0], 6
cmp dword [edx + 0x4c], 1
jg case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
lea eax, [ebp - 0x1b8]
push eax
mov ebx, edx
push dword [ecx + 4]
imul eax, dword [ecx + 8], 0x18
mov edx, dword [edx + 4]
push dword [eax + edx + 4]
call fcn.00439a52
mov edx, dword [ebp - 0x130]
add esp, 0xc
mov dword [ebp - 0x1e0], eax
lea eax, [edx + 0x40]
mov dword [ebp - 0x130], eax
mov word [eax + 0x18], 4
mov eax, dword [ebp - 0x1b8]
mov esi, eax
mov dword [edx + 0x40], eax
sar esi, 0x1f
mov dword [edx + 0x44], esi
cmp dword [ebp - 0x1e0], 0
jne case.0x4409d4.11
test eax, eax
je case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
push dword [edi + 4]
push eax
imul eax, dword [edi + 8], 0x18
add eax, dword [ebx + 4]
push eax
call fcn.0043c970
add esp, 0xc
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x1e4]
push dword [eax + 4]
imul eax, dword [eax + 8], 0x18
mov edx, dword [ecx + 4]
push dword [eax + edx + 4]
call fcn.004399bc
pop esi
pop edi
mov dword [ebp - 0x1e0], eax
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp - 0x1e4]
xor edx, edx
imul eax, dword [esi + 4], 0x18
add eax, dword [edi + 4]
cmp byte [ebp - 0x29d], 0x30
sete dl
lea edx, [edx + edx*2 + 2]
push edx
lea edx, [ebp - 0x1bc]
push edx
push dword [eax + 4]
call fcn.004396a9
mov ecx, dword [ebp - 0x130]
lea edx, [ecx + 0x40]
add esp, 0xc
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x130], edx
test eax, eax
jne 0x443f77
mov eax, dword [ebp - 0x1bc]
mov word [edx + 0x18], 4
mov ebx, eax
mov dword [ecx + 0x40], eax
sar ebx, 0x1f
mov dword [ecx + 0x44], ebx
jmp case.0x4409d4.11
mov word [edx + 0x18], 1
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp - 0x1e4]
mov ecx, dword [esi + 4]
mov eax, dword [edi + 4]
imul edx, ecx, 0x18
mov eax, dword [edx + eax + 0x14]
test byte [eax + 0x7a], 1
je case.0x4409d4.11
mov edx, 0x6a9515
cmp ecx, 1
je 0x443fb4
mov edx, 0x6a9528
mov eax, dword [ebp - 0x1e4]
mov ebx, dword [ebp - 0x1dc]
mov dword [ebp - 0x1c4], eax
mov eax, dword [ebp + 8]
add eax, 0x230
mov esi, dword [ebp - 0x1e4]
mov dword [ebp - 0x1c0], eax
imul eax, ecx, 0x18
push dword [ebx + 0xc]
push edx
mov edx, dword [esi + 4]
push dword [eax + edx]
push dword [ebx + 4]
push str.SELECT_name__rootpage__sql___d_FROM__q._s_WHERE__s
call fcn.00440637
add esp, 0x14
mov ebx, eax
test eax, eax
je 0x4447de
push esi
call fcn.0042fce7
mov byte [esi + 0x44], 1
lea eax, [ebp - 0x1c4]
push 0
push eax
push fcn.0043e9cd
push ebx
push esi
call fcn.0042e6c0
push ebx
mov dword [ebp - 0x1e0], eax
call fcn.0042f550
mov byte [esi + 0x44], 0
push esi
call fcn.0042fcb3
add esp, 0x20
cmp dword [ebp - 0x1e0], 7
jne case.0x4409d4.11
call fcn.0043004e
jmp 0x4447de
mov edi, dword [ebp - 0x1dc]
push dword [edi + 4]
push dword [ebp - 0x1e4]
call fcn.0045322b
pop ecx
pop ebx
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
push dword [eax + 0xc]
push dword [eax + 4]
push dword [ebp - 0x1e4]
call fcn.0043bb4e
add esp, 0xc
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
push dword [edx + 0xc]
push dword [edx + 4]
push dword [ebp - 0x1e4]
call fcn.0043b86f
add esp, 0xc
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
push dword [ecx + 0xc]
push dword [ecx + 4]
push dword [ebp - 0x1e4]
call fcn.00447b9e
add esp, 0xc
jmp case.0x4409d4.11
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 0x130]
xor ebx, ebx
mov ecx, dword [esi + 0x28]
cmp eax, ecx
jb 0x4440ed
lea edx, [eax + 0x18]
test byte [edx], 4
je 0x4440ed
sub eax, 0x40
inc ebx
sub edx, 0x40
cmp eax, ecx
jae 0x4440dd
lea eax, [ebx*4 + 4]
push 1
push eax
call fcn.00430080
pop edi
test eax, eax
mov dword [ebp - 0x298], eax
pop edx
je 0x4447de
xor edx, edx
cmp edx, ebx
jge 0x44412e
mov esi, dword [ebp - 0x130]
xor ecx, ecx
mov edi, dword [ebp - 0x298]
mov eax, dword [esi + ecx]
sub ecx, 0x40
mov dword [edi + edx*4], eax
inc edx
cmp edx, ebx
jl 0x44411a
mov eax, dword [ebp - 0x298]
mov dword [eax + edx*4], 0
mov edx, ebx
lea eax, [ebp - 0x130]
call fcn.0044071b
push ebx
push dword [ebp - 0x298]
mov ebx, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x1e4]
add dword [ebp - 0x130], 0x40
imul eax, dword [ebx + 8], 0x18
mov edx, dword [ecx + 4]
push dword [eax + edx + 4]
call fcn.0043a44c
add esp, 0xc
mov ebx, eax
test eax, eax
je 0x444187
cmp byte [eax], 0
jne 0x4441a3
push eax
call fcn.0042f550
pop esi
mov eax, dword [ebp - 0x130]
mov dword [eax + 0x10], 0x6a956b
mov dword [eax + 0x14], 2
mov word [eax + 0x18], 0xa2
jmp 0x4441c9
mov edx, dword [ebp - 0x130]
or ecx, 0xffffffff
cld
mov dword [edx + 0x10], eax
mov edi, ebx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov word [edx + 0x18], 0x62
mov dword [edx + 0x14], ecx
mov dword [edx + 0x1c], 0
mov eax, dword [ebp - 0x130]
mov byte [eax + 0x1b], 1
movzx eax, byte [ebp - 0x1e5]
push eax
push dword [ebp - 0x130]
call fcn.00431f50
push dword [ebp - 0x298]
call fcn.0042f550
add esp, 0xc
jmp case.0x4409d4.11
push dword [ebp - 0x130]
call fcn.00432328
mov eax, dword [ebp - 0x130]
push dword [eax + 4]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x64
push eax
call fcn.00444a47
sub dword [ebp - 0x130], 0x40
add esp, 0x10
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1e4]
test byte [esi + 8], 4
jne 0x444868
lea eax, [ebp - 0x1cc]
push eax
mov eax, dword [ebp + 8]
add eax, 0x64
push eax
call fcn.00444ab1
pop ecx
cmp eax, 0x65
pop ebx
jne 0x444269
mov edi, dword [ebp - 0x1dc]
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1d8], eax
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x130]
mov edx, dword [ebp - 0x1cc]
mov ecx, dword [ebp - 0x1c8]
lea ebx, [eax + 0x40]
mov dword [eax + 0x40], edx
mov dword [ebp - 0x130], ebx
mov dword [eax + 0x44], ecx
mov word [ebx + 0x18], 4
jmp case.0x4409d4.11
mov edx, dword [ebp + 8]
mov ebx, dword [edx + 0x70]
cmp ebx, dword [edx + 0x74]
lea eax, [ebx + 1]
mov dword [edx + 0x70], eax
jl 0x4442ca
mov dword [edx + 0x74], eax
imul eax, ebx, 0x18
add eax, 0x18
push eax
mov eax, edx
add eax, 0x78
push eax
call fcn.004302c3
mov ecx, dword [ebp + 8]
pop eax
pop edx
cmp dword [ecx + 0x78], 0
je 0x4447de
imul ecx, ebx, 0x18
mov ebx, dword [ebp + 8]
mov esi, dword [ebp - 0x1e4]
add ecx, dword [ebx + 0x78]
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov dword [ecx], eax
mov eax, dword [ebx + 0x23c]
mov dword [ecx + 8], eax
mov dword [ecx + 4], edx
mov eax, dword [ebx + 0x64]
mov dword [ecx + 0xc], eax
mov eax, dword [ebx + 0x68]
mov dword [ecx + 0x10], eax
mov eax, dword [ebx + 0x6c]
mov dword [ecx + 0x14], eax
mov eax, ebx
add eax, 0x64
push eax
call fcn.00444a33
pop eax
jmp case.0x4409d4.11
mov edi, dword [ebp + 8]
mov ecx, dword [ebp - 0x1e4]
mov ebx, dword [edi + 0x70]
dec ebx
mov dword [edi + 0x70], ebx
imul ebx, ebx, 0x18
add ebx, dword [edi + 0x78]
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [ecx + 0x20], eax
mov eax, dword [ebx + 8]
mov dword [edi + 0x23c], eax
mov eax, edi
add eax, 0x64
mov dword [ecx + 0x24], edx
push eax
call fcn.00444b0b
mov eax, dword [ebx + 0xc]
mov dword [edi + 0x64], eax
mov eax, dword [ebx + 0x10]
mov dword [edi + 0x68], eax
mov eax, dword [ebx + 0x14]
mov dword [edi + 0x6c], eax
pop eax
jmp case.0x4409d4.11
push dword [ebp - 0x130]
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov eax, dword [ebx + 4]
shl eax, 6
add eax, dword [esi + 0x58]
push eax
call fcn.00432463
sub dword [ebp - 0x130], 0x40
pop esi
mov dword [ebp - 0x1e0], eax
pop edi
cmp dword [ebx + 8], 0
jne case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x130]
mov eax, dword [edi + 4]
push 0x100
shl eax, 6
add edx, 0x40
add eax, dword [ecx + 0x58]
mov dword [ebp - 0x130], edx
push eax
push edx
call fcn.004323f6
add esp, 0xc
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
mov ebx, dword [esi + 4]
shl ebx, 6
add ebx, dword [edi + 0x58]
push ebx
call fcn.00432328
push dword [ebp - 0x130]
call fcn.00432328
mov eax, dword [ebp - 0x130]
mov edi, dword [ebx + 4]
mov edx, dword [eax + 4]
pop ecx
mov esi, dword [ebx]
mov eax, dword [eax]
pop ecx
cmp edi, edx
jg case.0x4409d4.11
jl 0x444410
cmp esi, eax
jae case.0x4409d4.11
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov edx, dword [edx + 4]
shl eax, 6
add eax, dword [ecx + 0x58]
mov ecx, edx
sar ecx, 0x1f
add dword [eax], edx
adc dword [eax + 4], ecx
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
mov eax, dword [esi + 4]
shl eax, 6
add eax, dword [edi + 0x58]
mov edx, dword [eax + 4]
mov eax, dword [eax]
test edx, edx
jl case.0x4409d4.11
jg 0x444468
cmp eax, 0
jbe case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov edx, dword [eax + 8]
dec edx
mov dword [ebp - 0x1d8], edx
jmp case.0x4409d4.11
mov ecx, dword [ebp - 0x1dc]
mov ebx, dword [ebp + 8]
mov eax, dword [ecx + 4]
shl eax, 6
add eax, dword [ebx + 0x58]
cmp dword [eax + 4], 0
jns case.0x4409d4.11
mov esi, dword [ecx + 8]
dec esi
mov dword [ebp - 0x1d8], esi
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov edx, dword [ebp + 8]
mov eax, dword [edi + 4]
shl eax, 6
add eax, dword [edx + 0x58]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov ecx, edx
or ecx, eax
jne case.0x4409d4.11
mov ebx, dword [edi + 8]
dec ebx
mov dword [ebp - 0x1d8], ebx
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
mov eax, dword [esi + 4]
shl eax, 6
add eax, dword [edi + 0x58]
push eax
call fcn.0043238a
pop ecx
jmp case.0x4409d4.11
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x1dc]
mov ebx, dword [ebp + 8]
mov eax, dword [edx + 4]
cdq
push edx
push eax
mov eax, dword [ecx + 8]
shl eax, 6
add eax, dword [ebx + 0x58]
push eax
call fcn.004323ad
add esp, 0xc
jmp case.0x4409d4.11
mov esi, dword [ebp - 0x1dc]
mov edi, dword [ebp + 8]
mov eax, dword [esi + 8]
mov edx, dword [edi + 0x58]
shl eax, 6
lea eax, [edx + eax]
push eax
mov eax, dword [esi + 4]
shl eax, 6
add edx, eax
push edx
call fcn.00432463
mov dword [ebp - 0x1e0], eax
pop eax
pop edx
jmp case.0x4409d4.11
mov eax, dword [ebp - 0x1dc]
mov ebx, 1
mov edx, dword [ebp + 8]
xor esi, esi
mov edi, dword [eax + 8]
sub ebx, edi
mov edx, dword [edx + 0x30]
shl ebx, 6
mov dword [ebp - 0x29c], edx
add ebx, dword [ebp - 0x130]
cmp esi, edi
jge 0x444594
mov ecx, dword [ebp - 0x29c]
mov eax, ebx
mov dword [ecx + esi*4], ebx
inc esi
call fcn.004406e0
add ebx, 0x40
jmp 0x44457a
mov ebx, dword [ebp - 0x1dc]
mov esi, dword [ebp + 8]
mov word [ebp - 0x10c], 1
mov dword [ebp - 0x108], 0
mov eax, dword [ebx + 4]
mov edx, dword [ebx + 0xc]
shl eax, 6
mov dword [ebp - 0x12c], edx
add eax, dword [esi + 0x58]
mov dword [ebp - 0x114], 0
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xdc], 0
inc dword [eax + 0x14]
mov byte [ebp - 0xe0], 0
cmp byte [edx + 3], 0
je 0x4445f5
mov eax, dword [ebx - 8]
mov dword [ebp - 0xdc], eax
push dword [ebp - 0x29c]
lea eax, [ebp - 0x12c]
push edi
push eax
mov eax, dword [ebp - 0x12c]
call dword [eax + 0x14]
mov edx, edi
lea eax, [ebp - 0x130]
call fcn.0044071b
add esp, 0xc
cmp byte [ebp - 0xe0], 0
je 0x444651
lea eax, [ebp - 0x124]
push 0
push eax
call fcn.00434656
mov dword [esp], eax
mov eax, dword [ebp + 8]
add eax, 0x230
push eax
call fcn.004300b2
mov dword [ebp - 0x1e0], 1
add esp, 0xc
lea eax, [ebp - 0x124]
push eax
call fcn.004321af
pop eax
jmp case.0x4409d4.11
mov edi, dword [ebp - 0x1dc]
mov eax, dword [ebp + 8]
mov ebx, dword [edi + 4]
shl ebx, 6
add ebx, dword [eax + 0x58]
push dword [edi + 0xc]
push ebx
call fcn.00432134
pop esi
pop edi
mov dword [ebp - 0x1e0], eax
dec eax
jne case.0x4409d4.11
push 0
push ebx
call fcn.00434656
mov dword [esp], eax
mov eax, dword [ebp + 8]
add eax, 0x230
push eax
call fcn.004300b2
add esp, 0xc
jmp case.0x4409d4.11
push dword [ebp - 0x1e4]
call fcn.0042fce7
pop ebx
test eax, eax
jne 0x444826
push dword [ebp - 0x1e4]
mov eax, dword [ebp + 8]
add eax, 0x230
push eax
call fcn.00453385
push dword [ebp - 0x1e4]
mov dword [ebp - 0x1e0], eax
call fcn.0042fcb3
add esp, 0xc
test eax, eax
je case.0x4409d4.11
jmp 0x444826
mov edx, dword [ebp - 0x1dc]
cmp dword [edx + 4], 0
jne 0x444711
push dword [ebp - 0x1e4]
call fcn.00431f26
pop ecx
jmp case.0x4409d4.11
mov ecx, dword [ebp + 8]
mov byte [ecx + 0x238], 1
jmp case.0x4409d4.11
mov ebx, dword [ebp - 0x1dc]
mov ecx, dword [ebx + 4]
mov eax, ecx
shr eax, 0x1f
test al, al
je 0x444731
not ecx
movzx eax, al
push eax
mov esi, dword [ebp - 0x1dc]
imul eax, ecx, 0x18
push dword [esi + 8]
mov edi, dword [ebp - 0x1e4]
mov edx, dword [edi + 4]
push dword [eax + edx + 4]
call fcn.0043aad7
add esp, 0xc
cmp eax, 6
mov dword [ebp - 0x1e0], eax
jne case.0x4409d4.11
push 0
mov eax, dword [ebp + 8]
push dword [esi + 0xc]
add eax, 0x230
push str.database_table_is_locked:
push eax
call fcn.004300b2
add esp, 0x10
inc dword [ebp - 0x1d8]
cmp dword [ebp - 0x1e0], 0
je 0x440948
jmp 0x44479a
cmp dword [ebp - 0x1e0], 0
je 0x4447b5
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e0], 1
mov dword [eax + 0x80], edx
jmp 0x4447bf
mov dword [ebp - 0x1e0], 0x65
push dword [ebp + 8]
call fcn.00430f9e
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x130]
mov dword [ecx + 0x2c], eax
mov eax, dword [ebp - 0x1e0]
jmp 0x444915
mov eax, dword [ebp + 8]
push 0
add eax, 0x230
push 0x6a9589
push eax
call fcn.004300b2
add esp, 0xc
mov dword [ebp - 0x1e0], 7
jmp 0x44479a
mov dword [ebp - 0x1e0], 0x14
jmp 0x444830
mov dword [ebp - 0x1e0], 0xb
jmp 0x444830
mov dword [ebp - 0x1e0], 0xd
jmp 0x444830
mov dword [ebp - 0x1e0], 0x15
mov ebx, dword [ebp + 8]
cmp dword [ebx + 0x230], 0
jne 0x444791
call fcn.0042fff0
test eax, eax
je 0x444853
mov dword [ebp - 0x1e0], 7
push 0
push dword [ebp - 0x1e0]
call fcn.0042da6b
mov dword [esp], eax
mov eax, dword [ebp + 8]
jmp 0x4448a1
mov esi, dword [ebp - 0x1e4]
xor eax, eax
mov edi, dword [ebp + 8]
and dword [esi + 8], 0xfffffffb
cmp dword [esi + 0x30], 0xf03b7906
setne al
dec eax
and eax, 0xfffffff4
add eax, 0x15
mov dword [edi + 0x80], eax
mov dword [ebp - 0x1e0], eax
push 0
push eax
call fcn.0042da6b
mov dword [esp], eax
mov eax, edi
add eax, 0x230
push eax
call fcn.004300b2
add esp, 0xc
jmp 0x444791
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x1d8]
mov dword [edx + 0x2c], eax
mov al, 1
sub al, bl
mov ebx, dword [ebp - 0x1e4]
mov dword [edx + 0x7c], ecx
mov byte [ebx + 0x10], al
mov dword [edx + 0x80], 5
jmp 0x444910
mov esi, dword [ebp + 8]
mov edi, dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x130]
mov dword [esi + 0x7c], edi
mov dword [esi + 0x80], 5
mov dword [esi + 0x2c], eax
jmp 0x444910
mov eax, dword [ebp + 8]
mov dword [eax + 0x80], 5
mov eax, 5
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret