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

Disassembly:
sub esp, 0xbc
push ebx
mov ebx, dword [esp + 0xc4]
push esi
mov esi, dword [ebx + 8]
mov eax, dword [ebx]
mov dword [esp + 8], eax
mov dword [esp + 0x3c], esi
test esi, esi
je 0x55c9b6
mov dword [esp + 0x78], esi
jmp 0x55c9e4
cmp dword [ebx + 0x80], 0
jne 0x55c9c9
test byte [eax + 0x50], 8
jne 0x55c9c9
mov byte [ebx + 0x17], 1
push ebx
call fcn.00570c30
mov esi, eax
add esp, 4
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], esi
test esi, esi
je 0x55cdb4
mov ecx, dword [esi + 0x6c]
lea eax, [esi + 0x70]
push edi
lea edi, [esi + 0x6c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x88], edi
cmp dword [eax], ecx
jg 0x55ca13
push 0
push 1
push 1
push 0xa6
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55ca45
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa6
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0xd4]
mov ecx, dword [ebx]
mov dword [ebx + 0x2c], 2
push ebp
cmp dword [eax + 4], 0
jbe 0x55cabf
cmp byte [ecx + 0xb1], 0
je 0x55ca7e
push str.corrupt_database
push ebx
call fcn.0053e8f0
add esp, 8
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
mov ebp, dword [esp + 0xd4]
push ebp
push ecx
mov dword [esp + 0x30], eax
call fcn.00544c80
mov ebx, eax
add esp, 8
test ebx, ebx
jns 0x55cab9
push ebp
push str.unknown_database__T
push dword [esp + 0xd8]
call fcn.0053e8f0
add esp, 0xc
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
mov dword [esp + 0x6c], eax
jmp 0x55cad5
movzx ebx, byte [ecx + 0xb0]
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x28], eax
mov dword [esp + 0x6c], ebx
mov ecx, dword [esp + 0x10]
mov eax, ebx
shl eax, 4
mov dword [esp + 0x24], eax
mov ebp, dword [ecx + 0x10]
add ebp, eax
mov dword [esp + 0x20], ebp
cmp ebx, 1
jne 0x55cb07
push dword [esp + 0xd0]
call fcn.00558af0
add esp, 4
test eax, eax
jne 0x55cdb2
push dword [esp + 0x28]
push dword [esp + 0x14]
call fcn.00558370
add esp, 8
mov dword [esp + 0x3c], eax
test eax, eax
je 0x55cdb2
cmp dword [esp + 0xe0], 0
push dword [esp + 0xdc]
je 0x55cb4d
push 0x60f8c8
push dword [esp + 0x18]
call fcn.00557700
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x14], ecx
jmp 0x55cb5f
push dword [esp + 0x14]
call fcn.00558370
add esp, 8
mov dword [esp + 0x14], eax
mov ecx, eax
mov eax, dword [esp + 0xd8]
cmp dword [eax + 4], 0
jbe 0x55cb71
mov ebp, dword [ebp]
jmp 0x55cb73
xor ebp, ebp
push ebp
push ecx
push dword [esp + 0x44]
mov dword [esp + 0x4c], ebp
push 0x13
push dword [esp + 0xe0]
call fcn.00531ca0
add esp, 0x14
test eax, eax
jne 0x55cd8f
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0
mov eax, dword [ecx + 0xc]
mov dword [ecx + 0x1c8], 0
mov dword [esp + 0x34], 1
test eax, eax
je 0x55cbe9
push eax
call dword [0x635d70]
mov ecx, dword [esp + 0x14]
add esp, 4
test ebp, ebp
je 0x55cc02
push ebp
push ecx
call fcn.00544d00
mov ebp, eax
add esp, 8
test ebp, ebp
jns 0x55cc04
jmp 0x55cc8d
xor ebp, ebp
mov eax, dword [esp + 0x10]
add ebp, ebp
mov eax, dword [eax + 0x10]
mov ebp, dword [eax + ebp*8 + 4]
test ebp, ebp
je 0x55cc8d
cmp byte [ebp + 9], 0
je 0x55cc2d
inc dword [ebp + 0xc]
cmp byte [ebp + 0xa], 0
jne 0x55cc2d
push ebp
call fcn.004df120
add esp, 4
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [ecx + 0x1c8]
mov dword [esp + 0x38], ecx
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x55cc53
mov dword [esp + 0x34], 0xc
jmp 0x55cc6a
lea edx, [esp + 0xac]
push edx
push 0xe
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov dword [ecx + 0x1c8], eax
cmp byte [ebp + 9], 0
je 0x55cc8d
add dword [ebp + 0xc], 0xffffffff
jne 0x55cc8d
push ebp
call fcn.0058c360
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x55cca2
push eax
call dword [0x635d78]
add esp, 4
mov ebp, dword [esp + 0x34]
test ebp, ebp
jne 0x55cdc6
push 1
push esi
call fcn.0057dee0
push 0xffffffffffffffff
push dword [esp + 0xb8]
push ebp
push ebp
push esi
call fcn.0057de90
mov ebx, dword [esp + 0xc8]
add esp, 0x1c
test ebx, ebx
je 0x55cd8f
push ebp
push ebx
push ebp
push 1
push ebp
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55cd06
push ebp
push 1
push 1
push 0x54
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55cd38
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0xac]
test ebx, ebx
je 0x55cd8f
cmp dword [0x635d20], 0
je 0x55cdbd
mov eax, dword [0x63cf30]
test eax, eax
je 0x55cd5f
push eax
call dword [0x635d70]
add esp, 4
push ebx
call dword [0x635d4c]
sub dword [0x63ced0], eax
dec dword [0x63cef4]
push ebx
call dword [0x635d44]
mov eax, dword [0x63cf30]
add esp, 8
test eax, eax
je 0x55cd8f
push eax
call dword [0x635d78]
add esp, 4
mov ebp, dword [esp + 0x10]
push dword [esp + 0x3c]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x55cdb2
push eax
push ebp
call fcn.0053c090
add esp, 8
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
push ebx
call dword [0x635d44]
jmp 0x55cd8c
cmp ebp, 0xc
je 0x55ce78
mov eax, dword [esp + 0xac]
test eax, eax
je 0x55ce66
push eax
push 0x60c824
push dword [esp + 0xd8]
call fcn.0053e8f0
mov esi, dword [esp + 0xb8]
add esp, 0xc
test esi, esi
je 0x55ce66
cmp dword [0x635d20], 0
je 0x55ce5c
mov eax, dword [0x63cf30]
test eax, eax
je 0x55ce1a
push eax
call dword [0x635d70]
add esp, 4
push esi
call dword [0x635d4c]
sub dword [0x63ced0], eax
dec dword [0x63cef4]
push esi
call dword [0x635d44]
mov eax, dword [0x63cf30]
add esp, 8
test eax, eax
je 0x55ce66
push eax
call dword [0x635d78]
mov eax, dword [esp + 0xd4]
add esp, 4
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebp
jmp 0x55cd8f
push esi
call dword [0x635d44]
add esp, 4
mov eax, dword [esp + 0xd0]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebp
jmp 0x55cd8f
push dword [esp + 0x3c]
call fcn.00524a20
mov ebp, eax
add esp, 4
mov dword [esp + 0x7c], ebp
test ebp, ebp
je 0x55cd8f
test byte [ebp + 5], 1
je 0x55ceaf
push dword [esp + 0xd0]
call fcn.00562a10
add esp, 4
test eax, eax
jne 0x55cd8f
mov al, byte [ebp + 5]
test al, 2
jne 0x55cecc
test al, 4
je 0x55cec2
mov edx, dword [esp + 0x14]
test edx, edx
jne 0x55ced0
push ebp
push esi
call fcn.0052de10
add esp, 8
mov edx, dword [esp + 0x14]
movzx eax, byte [ebp + 4]
dec eax
cmp eax, 0x2a
ja case.0x55cede.5
jmp dword [eax*4 + 0x5616ac]
push ebx
push esi
call fcn.0057ec40
mov eax, dword [esp + 0x1c]
add esp, 8
test eax, eax
jne 0x55cf39
mov eax, dword [esp + 0xd0]
push 0
push 0x609624
push 9
add dword [eax + 0x2c], 2
push esi
call fcn.005705f0
push dword [esp + 0x4c]
push dword [esp + 0x24]
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x7c], 0xfffff830
call fcn.0053c090
add esp, 0x18
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
lea ecx, [esp + 0x28]
mov dword [esp + 0x28], 0
push ecx
push eax
call fcn.00552220
push dword [esp + 0x30]
call fcn.0052e370
push ebx
push 0
push dword [esp + 0xe4]
mov edi, eax
call fcn.00532ac0
push edi
push 3
push ebx
push 0x64
push esi
call fcn.00570460
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 0xc]
mov dword [eax + 0x50], edi
mov eax, dword [edx + 0xc]
push dword [eax + 0x50]
push dword [edx + 4]
call fcn.00536c00
push dword [esp + 0x70]
mov ebp, dword [esp + 0x48]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x50]
add esp, 0x3c
jmp 0x55cda8
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
mov edi, dword [edx + 4]
test eax, eax
jne 0x55d007
test edi, edi
je 0x55cfe1
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x24]
cdq
push edx
push eax
push esi
call fcn.0052b2a0
push dword [esp + 0x48]
push dword [esp + 0x20]
call fcn.0053c090
add esp, 0x14
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
xor eax, eax
cdq
push edx
push eax
push esi
call fcn.0052b2a0
push dword [esp + 0x48]
push dword [esp + 0x20]
call fcn.0053c090
add esp, 0x14
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
lea ecx, [esp + 0x28]
mov dword [esp + 0x28], 0
push ecx
push eax
call fcn.00552220
mov eax, dword [esp + 0x30]
mov ebp, dword [esp + 0x18]
push 0
push 0
push eax
push edi
mov dword [ebp + 0x64], eax
call fcn.00536d00
add esp, 0x18
cmp eax, 7
jne 0x55cd93
push ebp
call fcn.00558640
push dword [esp + 0x40]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x20]
add esp, 0xc
jmp 0x55cda8
mov edx, dword [esp + 0x20]
or ebp, 0xffffffff
mov edi, dword [esp + 0x14]
mov eax, dword [edx + 4]
mov dword [esp + 0x38], eax
test edi, edi
je 0x55d093
push str.fast
push edi
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55d085
lea ebp, [eax + 2]
jmp 0x55d093
push 0
push edi
call fcn.00551fa0
add esp, 8
movzx ebp, al
mov eax, dword [esp + 0xd8]
cmp dword [eax + 4], 0
jne 0x55d0d0
test ebp, ebp
js 0x55d0d0
mov eax, dword [esp + 0x10]
xor ebx, ebx
cmp dword [eax + 0x14], ebx
jle 0x55d0d0
xor edi, edi
mov esi, eax
mov eax, dword [esi + 0x10]
push ebp
push dword [edi + eax + 4]
call fcn.00536b10
inc ebx
lea edi, [edi + 0x10]
add esp, 8
cmp ebx, dword [esi + 0x14]
jl 0x55d0b3
mov esi, dword [esp + 0x44]
push ebp
push dword [esp + 0x3c]
call fcn.00536b10
cdq
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0x14
jmp 0x55cd8f
mov edi, dword [esp + 0xd0]
xorps xmm0, xmm0
push ebx
push edi
movlpd qword [esp + 0x68], xmm0
call fcn.00539090
mov eax, dword [esp + 0x44]
add esp, 8
inc dword [edi + 0x2c]
mov edi, dword [edi + 0x2c]
movzx eax, byte [eax]
cmp byte [eax + 0x6040d8], 0x70
jne 0x55d13e
push edi
push ebx
push 0xb2
push esi
call fcn.00570400
add esp, 0x10
push 1
push edi
push 0x54
push esi
call fcn.00570400
add esp, 0x10
jmp 0x55cd8f
mov eax, dword [esp + 0x14]
test eax, eax
je 0x55d184
lea ecx, [esp + 0x60]
push ecx
push eax
call fcn.0053c670
add esp, 8
test eax, eax
jne 0x55d184
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x60]
test ecx, ecx
jg 0x55d175
jl 0x55d184
test eax, eax
jb 0x55d184
test ecx, ecx
jl 0x55d191
jg 0x55d175
cmp eax, 0xfffffffe
jbe 0x55d191
mov eax, 0xfffffffe
mov dword [esp + 0x64], 0
jmp 0x55d191
xorps xmm0, xmm0
movlpd qword [esp + 0x60], xmm0
mov eax, dword [esp + 0x60]
push eax
push edi
push ebx
push 0xb3
push esi
call fcn.00570460
add esp, 0x14
push 1
push edi
push 0x54
push esi
call fcn.00570400
add esp, 0x10
jmp 0x55cd8f
test edx, edx
je 0x55d1e9
push str.exclusive
push edx
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55d1d0
lea ecx, [eax + 1]
jmp 0x55d1ec
push str.normal
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55d1e9
xor ecx, ecx
jmp 0x55d1ec
or ecx, 0xffffffff
mov eax, dword [esp + 0xd8]
mov ebp, dword [esp + 0x10]
cmp dword [eax + 4], 0
jne 0x55d255
cmp ecx, 0xffffffff
jne 0x55d208
movzx eax, byte [ebp + 0x59]
jmp 0x55d26a
mov edx, 2
cmp dword [ebp + 0x14], edx
jle 0x55d252
mov edi, 0x20
nop word [eax + eax]
mov eax, dword [ebp + 0x10]
mov eax, dword [edi + eax + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
test ecx, ecx
js 0x55d249
cmp byte [eax + 0xc], 0
jne 0x55d249
mov ebx, dword [eax + 0xe8]
test ebx, ebx
je 0x55d246
cmp byte [ebx + 0x2b], 2
je 0x55d249
mov byte [eax + 4], cl
inc edx
add edi, 0x10
cmp edx, dword [ebp + 0x14]
jl 0x55d220
mov byte [ebp + 0x59], cl
mov edx, dword [esp + 0x20]
push ecx
mov eax, dword [edx + 4]
mov eax, dword [eax + 4]
push dword [eax]
call fcn.00559d00
add esp, 8
cmp eax, 1
mov edx, str.exclusive
mov ecx, str.normal
cmove ecx, edx
push ecx
push esi
call fcn.0052b330
add esp, 8
jmp 0x55cd93
test edx, edx
je 0x55d2df
mov edi, edx
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x55d292
sub edi, ecx
and edi, 0x3fffffff
xor ebx, ebx
cmp ebx, 6
je 0x55d2df
mov eax, dword [ebx*4 + 0x6095b8]
test eax, eax
je 0x55d2df
push edi
push eax
push edx
call fcn.004c5f00
add esp, 0xc
test eax, eax
je 0x55d2c9
mov edx, dword [esp + 0x14]
inc ebx
jmp 0x55d2a3
cmp ebx, 2
jne 0x55d2fe
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x55d303
or ebx, 0xffffffff
mov ecx, dword [esp + 0xd8]
cmp dword [ecx + 4], 0
jne 0x55d30a
xor edx, edx
mov dword [ecx + 4], 1
mov dword [esp + 0x6c], edx
jmp 0x55d30e
cmp ebx, 0xffffffff
je 0x55d2e2
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x10]
mov edi, dword [ebp + 0x14]
sub edi, 1
js 0x55d390
mov ebp, edi
shl ebp, 4
nop
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
cmp dword [eax + ebp + 4], 0
je 0x55d379
cmp edi, edx
je 0x55d338
cmp dword [ecx + 4], 0
jne 0x55d379
mov eax, dword [esi + 0x9c]
bts eax, edi
mov dword [esi + 0x9c], eax
cmp edi, 1
je 0x55d36a
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ebp + 4]
cmp byte [eax + 9], 0
je 0x55d36a
mov eax, dword [esi + 0xa0]
bts eax, edi
mov dword [esi + 0xa0], eax
push ebx
push 1
push edi
push 4
push esi
call fcn.00570460
add esp, 0x14
mov ecx, dword [esp + 0xd8]
sub ebp, 0x10
sub edi, 1
mov edx, dword [esp + 0x6c]
jns 0x55d320
mov ebp, dword [esp + 0x10]
push 1
push 1
push 0x54
push esi
call fcn.00570400
add esp, 0x10
jmp 0x55cd93
mov edx, dword [esp + 0x20]
or ecx, 0xffffffff
mov dword [esp + 0x64], ecx
mov eax, dword [edx + 4]
mov edx, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov eax, 0xfffffffe
mov dword [esp + 0x60], eax
test edx, edx
je 0x55d3f5
lea eax, [esp + 0x60]
push eax
push edx
call fcn.0053c670
mov ecx, dword [esp + 0x6c]
add esp, 8
cmp ecx, 0xffffffff
jg 0x55d3f1
jl 0x55d3ea
mov eax, dword [esp + 0x60]
cmp eax, 0xffffffff
jae 0x55d3f5
or eax, 0xffffffff
or ecx, eax
jmp 0x55d3f5
mov eax, dword [esp + 0x60]
cmp ecx, 0xffffffff
jl 0x55d41d
jg 0x55d401
cmp eax, 0xffffffff
jb 0x55d41d
mov edx, dword [edi + 0xe8]
mov dword [edi + 0xb0], eax
mov dword [edi + 0xb4], ecx
test edx, edx
je 0x55d41d
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
push dword [edi + 0xb4]
push dword [edi + 0xb0]
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd8f
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
mov ebp, dword [edx + 4]
test eax, eax
jne 0x55d470
push ebp
call fcn.00534840
cdq
push edx
push eax
push esi
call fcn.0052b2a0
push dword [esp + 0x4c]
push dword [esp + 0x24]
call fcn.0053c090
add esp, 0x18
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
push str.none
push eax
call fcn.0056ab20
add esp, 8
test eax, eax
je 0x55d4e5
push str.full
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55d49e
mov eax, 1
jmp 0x55d4e5
push str.incremental
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55d4ba
mov eax, 2
jmp 0x55d4e5
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
push dword [esp + 0x18]
call fcn.00552220
mov eax, dword [esp + 0x30]
xor edx, edx
add esp, 8
movzx ecx, al
cmp eax, 2
cmova ecx, edx
movzx eax, cl
mov ecx, dword [esp + 0x10]
push eax
push ebp
mov dword [esp + 0x38], eax
mov byte [ecx + 0x5a], al
call fcn.00536b80
add esp, 8
test eax, eax
jne 0x55cd8f
mov ebp, dword [esp + 0x30]
cmp ebp, 1
je 0x55d514
cmp ebp, 2
jne 0x55cd8f
mov edi, dword [edi]
push 0
push 0x60966c
push 5
push esi
call fcn.005705f0
lea ecx, [edi + 4]
push ebx
push esi
mov dword [eax + 0x30], ecx
lea ecx, [ebp - 1]
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x54], ebx
mov dword [eax + 0x5c], ecx
call fcn.0057ec40
push dword [esp + 0x54]
mov ebp, dword [esp + 0x2c]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x34]
add esp, 0x20
jmp 0x55cda8
mov dword [esp + 0x28], 0
test edx, edx
je 0x55d581
lea eax, [esp + 0x28]
push eax
push edx
call fcn.00552220
add esp, 8
test eax, eax
je 0x55d581
mov edi, dword [esp + 0x28]
test edi, edi
jg 0x55d586
mov edi, 0x7fffffff
push ebx
push 0
push dword [esp + 0xd8]
call fcn.00532ac0
push 1
push edi
push 0x47
push esi
call fcn.00570400
push ebx
push 0x3e
push esi
call fcn.005703a0
push 1
push 0x54
push esi
mov edi, eax
call fcn.005703a0
push 0xffffffffffffffff
push 1
push 0x56
push esi
call fcn.00570400
add esp, 0x44
push edi
push 1
push 0x3b
push esi
call fcn.00570400
push edi
push esi
call fcn.0057b170
add esp, 0x18
jmp 0x55cd8f
test edx, edx
jne 0x55d610
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
push esi
call fcn.0052b2a0
push dword [esp + 0x48]
push dword [esp + 0x20]
call fcn.0053c090
add esp, 0x14
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
push edx
call fcn.00552220
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
mov ecx, dword [edx + 0xc]
mov dword [ecx + 0x50], eax
mov eax, dword [edx + 0xc]
push dword [eax + 0x50]
push dword [edx + 4]
call fcn.00536c00
push dword [esp + 0x4c]
mov ebp, dword [esp + 0x24]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x2c]
add esp, 0x18
jmp 0x55cda8
test edx, edx
jne 0x55d68a
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x20
or eax, edx
jne 0x55d672
cdq
push edx
jmp 0x55dbe7
mov edx, dword [esp + 0x20]
push 0
push dword [edx + 4]
call fcn.00536e30
add esp, 8
cdq
push edx
jmp 0x55dbe7
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 1
push eax
push edx
call fcn.00552220
mov esi, dword [esp + 0x30]
add esp, 8
test eax, eax
je 0x55d6b8
mov edx, dword [esp + 0x20]
push esi
push dword [edx + 4]
call fcn.00536e30
add esp, 8
test esi, esi
setne al
movzx eax, al
push eax
push dword [esp + 0x18]
call fcn.00551fa0
mov ebp, dword [esp + 0x18]
add esp, 8
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x24]
test al, al
je 0x55d6e0
or ecx, 0x20
jmp 0x55d6e3
and ecx, 0xffffffdf
mov dword [ebp + 0x20], ecx
push ebp
mov dword [ebp + 0x24], edx
call fcn.0052db40
push dword [esp + 0x40]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x20]
add esp, 0xc
jmp 0x55cda8
test edx, edx
je 0x55d81b
lea eax, [esp + 0x60]
push eax
push edx
call fcn.0053c670
add esp, 8
cmp dword [esp + 0x64], 0
jg 0x55d73e
jl 0x55d72b
cmp dword [esp + 0x60], 0
jae 0x55d73e
mov eax, dword [0x635dc8]
mov ecx, dword [0x635dcc]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0xd8]
mov edx, dword [esp + 0x10]
cmp dword [eax + 4], 0
jne 0x55d75d
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov dword [edx + 0x30], eax
mov dword [edx + 0x34], ecx
mov ebp, dword [edx + 0x14]
sub ebp, 1
js 0x55d81b
mov esi, dword [esp + 0xd8]
mov edi, ebp
shl edi, 4
mov dword [esp + 0x28], edi
nop dword [eax]
mov eax, dword [edx + 0x10]
mov edi, dword [edi + eax + 4]
test edi, edi
je 0x55d803
cmp ebp, ebx
je 0x55d795
cmp dword [esi + 4], 0
jne 0x55d803
cmp byte [edi + 9], 0
mov eax, dword [esp + 0x60]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x7c], eax
mov eax, dword [edi + 4]
mov dword [esp + 0x38], eax
je 0x55d7c8
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x55d7c8
push edi
call fcn.004df120
mov eax, dword [esp + 0x3c]
add esp, 4
mov eax, dword [eax]
mov ecx, dword [esp + 0x74]
push eax
mov dword [eax + 0x88], ecx
mov ecx, dword [esp + 0x80]
mov dword [eax + 0x8c], ecx
call fcn.0051e790
add esp, 4
cmp byte [edi + 9], 0
je 0x55d7ff
add dword [edi + 0xc], 0xffffffff
jne 0x55d7ff
push edi
call fcn.0058c360
add esp, 4
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
sub edi, 0x10
sub ebp, 1
mov dword [esp + 0x28], edi
jns 0x55d780
mov esi, dword [esp + 0x44]
mov ebp, dword [esp + 0x10]
lea eax, [esp + 0x60]
push eax
push 0x12
push dword [esp + 0x48]
mov dword [esp + 0x6c], 0xffffffff
push ebp
mov dword [esp + 0x74], 0xffffffff
call fcn.004c18a0
add esp, 0x10
test eax, eax
jne 0x55d85d
push dword [esp + 0x64]
push dword [esp + 0x64]
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd93
cmp eax, 0xc
je 0x55cd93
mov ecx, dword [esp + 0xd0]
inc dword [ecx + 0x24]
mov dword [ecx + 0xc], eax
jmp 0x55cd93
test edx, edx
jne 0x55d88b
mov ebx, dword [esp + 0x10]
movzx eax, byte [ebx + 0x56]
cdq
push edx
jmp 0x55dbe7
mov cl, byte [edx]
mov al, cl
sub al, 0x30
cmp al, 2
ja 0x55d89d
movsx ebx, cl
sub ebx, 0x30
jmp 0x55d8cf
push str.file
push edx
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55d8b4
lea ebx, [eax + 1]
jmp 0x55d8cf
push str.memory
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
neg eax
sbb ebx, ebx
and ebx, 0xfffffffe
add ebx, 2
mov ecx, dword [esp + 0xd0]
mov esi, dword [ecx]
movzx eax, byte [esi + 0x56]
cmp eax, ebx
je 0x55cd8f
push ecx
call fcn.00510ca0
mov ebp, dword [esp + 0x14]
add esp, 4
test eax, eax
jne 0x55cd93
push dword [esp + 0x3c]
mov byte [esi + 0x56], bl
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
cmp byte [0x635d24], 0
je 0x55d934
push 0xb
call dword [0x635d68]
add esp, 4
test eax, eax
je 0x55d934
push eax
call dword [0x635d70]
add esp, 4
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x55d954
push dword [0x63ce60]
push esi
call fcn.0052b330
mov ebp, dword [esp + 0x18]
add esp, 8
jmp 0x55da12
cmp byte [ecx], 0
mov ebp, dword [esp + 0x10]
je 0x55d9c7
mov eax, dword [ebp]
lea edx, [esp + 0x38]
push edx
push 1
push ecx
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x55d97b
cmp dword [esp + 0x38], eax
jne 0x55d9c7
push str.not_a_writable_directory
push dword [esp + 0xd4]
call fcn.0053e8f0
add esp, 8
cmp byte [0x635d24], 0
je 0x55d9b1
push 0xb
call dword [0x635d68]
add esp, 4
test eax, eax
je 0x55d9b1
push eax
call dword [0x635d78]
add esp, 4
push dword [esp + 0x3c]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
cmp byte [ebp + 0x56], 1
ja 0x55d9dc
push dword [esp + 0xd0]
call fcn.00510ca0
add esp, 4
push dword [0x63ce60]
call fcn.004d6820
mov eax, dword [esp + 0x18]
add esp, 4
cmp byte [eax], 0
je 0x55da08
push eax
push 0x60c824
call fcn.004d6530
add esp, 8
mov dword [0x63ce60], eax
jmp 0x55da12
mov dword [0x63ce60], 0
cmp byte [0x635d24], 0
je 0x55cd93
push 0xb
call dword [0x635d68]
add esp, 4
test eax, eax
je 0x55cd93
push eax
call dword [0x635d78]
add esp, 4
jmp 0x55cd93
cmp byte [0x635d24], 0
je 0x55da63
push 0xb
call dword [0x635d68]
add esp, 4
test eax, eax
je 0x55da63
push eax
call dword [0x635d70]
add esp, 4
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x55da7c
push dword [0x63ce64]
push esi
call fcn.0052b330
add esp, 8
jmp 0x55dae1
cmp byte [ecx], 0
je 0x55daab
mov ebp, dword [esp + 0x10]
lea edx, [esp + 0x38]
push edx
push 1
push ecx
mov eax, dword [ebp]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x55d97b
cmp dword [esp + 0x38], eax
je 0x55d97b
push dword [0x63ce64]
call fcn.004d6820
mov eax, dword [esp + 0x18]
add esp, 4
cmp byte [eax], 0
je 0x55dad7
push eax
push 0x60c824
call fcn.004d6530
add esp, 8
mov dword [0x63ce64], eax
jmp 0x55dae1
mov dword [0x63ce64], 0
cmp byte [0x635d24], 0
je 0x55cd8f
push 0xb
call dword [0x635d68]
add esp, 4
jmp 0x55cd81
test edx, edx
jne 0x55db34
mov edx, dword [esp + 0x20]
movzx eax, byte [edx + 8]
cdq
sub eax, 1
sbb edx, 0
push edx
push eax
push esi
call fcn.0052b2a0
push dword [esp + 0x48]
push dword [esp + 0x20]
call fcn.0053c090
add esp, 0x14
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
mov ebp, dword [esp + 0x10]
cmp byte [ebp + 0x55], 0
jne 0x55db65
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0xd4]
call fcn.0053e8f0
push dword [esp + 0x44]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x24]
add esp, 0x10
jmp 0x55cda8
cmp ebx, 1
je 0x55cd93
push 1
push 0
push edx
call fcn.0050f0b0
mov edx, dword [esp + 0x2c]
inc eax
and eax, 7
mov ecx, 1
push ebp
cmove eax, ecx
mov byte [edx + 8], al
mov byte [edx + 9], cl
call fcn.0052db40
push dword [esp + 0x4c]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x2c]
add esp, 0x18
jmp 0x55cda8
test edx, edx
jne 0x55dc06
push ebp
push esi
call fcn.0052de10
mov ebx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [ebx + 0x20]
mov eax, dword [ebx + 0x24]
and ecx, dword [ebp + 8]
and eax, dword [ebp + 0xc]
or ecx, eax
je 0x55dbd5
mov eax, 1
xor ecx, ecx
jmp 0x55dbe6
xorps xmm0, xmm0
movlpd qword [esp + 0x60], xmm0
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x60]
push ecx
push eax
push esi
call fcn.0052b2a0
push dword [esp + 0x48]
push ebx
call fcn.0053c090
add esp, 0x14
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov ebp, dword [esp + 0x10]
cmp byte [ebp + 0x55], 0
jne 0x55dc1c
and edi, 0xffffbfff
push 0
push edx
call fcn.00551fa0
add esp, 8
test al, al
je 0x55dc4a
mov eax, edi
and eax, 1
or eax, 0
je 0x55dc42
mov eax, dword [ebp + 0x20]
and eax, 0x10000000
or eax, 0
jne 0x55dc98
or dword [ebp + 0x20], edi
or dword [ebp + 0x24], ebx
jmp 0x55dc98
mov ecx, edi
mov eax, ebx
not ecx
not eax
and dword [ebp + 0x20], ecx
and dword [ebp + 0x24], eax
cmp edi, 0x80000
jne 0x55dc72
test ebx, ebx
jne 0x55dc72
mov dword [ebp + 0x208], ebx
mov dword [ebp + 0x20c], ebx
jmp 0x55dc98
and edi, 1
or edi, 0
je 0x55dc98
push str.reset
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55dc98
push ebp
call fcn.00563930
add esp, 4
push 0xa6
push esi
call fcn.00570350
push ebp
call fcn.0052db40
push dword [esp + 0x48]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x28]
add esp, 0x14
jmp 0x55cda8
test edx, edx
je 0x55cd8f
mov ebx, dword [esp + 0x40]
push ebx
push dword [esp + 0xd4]
call fcn.00539010
push ebx
push dword [esp + 0x20]
mov ebx, dword [esp + 0xe0]
push 2
push ebx
call fcn.005570f0
mov edi, eax
add esp, 0x18
mov dword [esp + 0x70], edi
test edi, edi
je 0x55cd8f
push edi
mov dword [esp + 0x7c], 0
call fcn.00561de0
push edi
push ebx
mov dword [esp + 0x44], eax
mov dword [ebx + 0x2c], 7
call fcn.0057eda0
movzx eax, word [edi + 0x22]
xor ecx, ecx
mov ebx, dword [edi + 4]
xor edx, edx
add esp, 0xc
mov dword [esp + 0x30], ecx
cmp dx, ax
jge 0x55cd8f
mov dword [esp + 0x24], eax
nop dword [eax]
movzx edx, word [ebx + 0xe]
xor edi, edi
mov esi, edx
mov dword [esp + 0x94], esi
mov esi, dword [esp + 0x44]
test dl, 0x62
je 0x55dd85
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
jne 0x55dd69
inc dword [esp + 0x78]
jmp 0x55deae
mov eax, dword [esp + 0x24]
test dl, 0x20
je 0x55dd79
mov edi, 2
jmp 0x55dd85
movzx edi, dl
and edi, 0x40
or edi, 0x20
shr edi, 5
test dl, 1
jne 0x55dd8e
xor edx, edx
jmp 0x55ddc5
mov ecx, dword [esp + 0x38]
mov edx, 1
test ecx, ecx
je 0x55ddc5
cwde
mov dword [esp + 0x74], eax
cmp eax, edx
jl 0x55ddc5
mov ecx, dword [ecx + 4]
mov ebp, eax
nop dword [eax]
movsx eax, word [ecx]
cmp eax, dword [esp + 0x30]
je 0x55ddc1
inc edx
add ecx, 2
cmp edx, ebp
jle 0x55ddb0
mov ebp, dword [esp + 0x7c]
movzx eax, word [ebx + 0xc]
test ax, ax
jne 0x55ddd2
xor eax, eax
jmp 0x55ddfa
mov ecx, dword [esp + 0x70]
cmp byte [ecx + 0x2b], 0
je 0x55dde0
xor eax, eax
jmp 0x55ddfa
mov ecx, dword [ecx + 0x34]
test ecx, ecx
jne 0x55ddeb
xor eax, eax
jmp 0x55ddfa
cmp dword [ecx], eax
jge 0x55ddf3
xor eax, eax
jmp 0x55ddfa
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 - 0xc]
cmp edi, 2
jae 0x55de0c
test eax, eax
je 0x55de0c
mov ecx, dword [eax + 8]
mov dword [esp + 0x28], ecx
jmp 0x55de14
mov dword [esp + 0x28], 0
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
mov dword [esp + 0x48], str.issisii
jne 0x55de2c
mov dword [esp + 0x48], str.issisi
test byte [esp + 0x94], 4
je 0x55de52
mov ecx, dword [ebx]
lea eax, [ecx + 1]
mov dword [esp + 0x74], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55de40
mov eax, dword [ebx]
sub ecx, dword [esp + 0x74]
inc eax
add ecx, eax
jmp 0x55de6b
mov eax, dword [ebx + 4]
shr eax, 4
and eax, 0xf
je 0x55de66
mov ecx, dword [eax*4 + 0x635f24]
jmp 0x55de6b
mov ecx, section..rdata
push edi
push edx
push dword [esp + 0x30]
mov eax, ebx
mov dword [esp + 0x40], 4
mov edx, dword [esp + 0x40]
test byte [eax + edx], 0xf
mov eax, 0
setne al
push eax
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0x88]
push ecx
push dword [ebx]
push eax
push dword [esp + 0x64]
push 1
push esi
call fcn.0057cd50
mov ecx, dword [esp + 0x58]
add esp, 0x28
mov eax, dword [esp + 0x70]
inc ecx
add ebx, 0x10
mov dword [esp + 0x30], ecx
movzx eax, word [eax + 0x22]
mov edx, eax
cwde
cmp ecx, eax
mov dword [esp + 0x24], edx
mov eax, edx
jl 0x55dd40
push dword [esp + 0x3c]
mov ebp, dword [esp + 0x14]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
mov eax, dword [esp + 0xd0]
mov ebx, dword [esp + 0x40]
push ebx
push eax
mov dword [eax + 0x2c], 6
call fcn.00539010
mov ebp, dword [esp + 0x18]
add esp, 8
mov dword [esp + 0x84], 0
cmp dword [ebp + 0x14], 0
jle 0x55cd93
xor edi, edi
mov dword [esp + 0x24], edi
test ebx, ebx
je 0x55df48
mov eax, dword [ebp + 0x10]
mov eax, dword [edi + eax]
test eax, eax
je 0x55e20d
push eax
push ebx
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55e20d
mov eax, dword [ebp + 0x10]
mov edx, dword [edi + eax + 0xc]
add edx, 8
mov ebx, dword [edx + 4]
test ebx, ebx
je 0x55e0b6
nop dword [eax]
mov eax, dword [edx + 8]
dec ebx
mov dword [esp + 0x70], ebx
test eax, eax
je 0x55e0b6
mov ecx, dword [eax + 8]
cmp word [ecx + 0x22], 0
je 0x55df85
mov eax, dword [eax]
test eax, eax
jne 0x55df70
jmp 0x55e0b6
push dword [ecx]
push str.SELECTFROM__w_
push ebp
call fcn.00557700
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x55e07a
push 0
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
push 0
push 0
push 0xffffffffffffffff
push ebp
push dword [esp + 0x28]
call fcn.00557310
mov edi, dword [esp + 0x44]
add esp, 0x1c
test edi, edi
je 0x55e066
mov ebx, dword [edi]
test ebx, ebx
jne 0x55dfff
push str.API_called_with_finalized_prepared_statement
push 0x15
call fcn.004c6060
push 0x6128ec
push 0x15f3d
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.004c6060
add esp, 0x1c
jmp 0x55e062
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x55e010
push eax
call dword [0x635d70]
add esp, 4
cmp dword [edi + 0x8c], 0
jl 0x55e02e
jg 0x55e024
cmp dword [edi + 0x88], 0
jbe 0x55e02e
push edi
push ebx
call fcn.00510cf0
add esp, 8
push edi
call fcn.0057da00
push edi
mov dword [esp + 0x50], eax
call fcn.00570d30
mov eax, dword [esp + 0x50]
add esp, 8
cmp byte [ebx + 0x57], 0
jne 0x55e04f
test eax, eax
je 0x55e059
push eax
push ebx
call fcn.004db270
add esp, 8
push ebx
call fcn.00556210
add esp, 4
mov ebx, dword [esp + 0x70]
push ebp
mov ebp, dword [esp + 0x14]
push ebp
call fcn.0053c090
mov edi, dword [esp + 0x2c]
add esp, 8
jmp 0x55e07e
mov ebp, dword [esp + 0x10]
cmp byte [ebp + 0x57], 0
je 0x55e0a4
push 0x603b54
push dword [ebp + 0x10c]
call fcn.0053e8f0
mov eax, dword [ebp + 0x10c]
add esp, 8
mov dword [eax + 0xc], 7
mov eax, dword [ebp + 0x10]
mov edx, dword [edi + eax + 0xc]
add edx, 8
test ebx, ebx
jne 0x55df60
mov edi, dword [edx + 8]
mov dword [esp + 0x30], edi
test edi, edi
je 0x55e205
mov ecx, dword [esp + 0x14]
nop dword [eax]
mov ebx, dword [edi + 8]
test ecx, ecx
je 0x55e0f3
mov eax, dword [ebx]
test eax, eax
je 0x55e1f7
push eax
push ecx
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55e1f3
mov al, byte [ebx + 0x2b]
cmp al, 2
jne 0x55e104
mov dword [esp + 0x34], str.view
jmp 0x55e12a
cmp al, 1
jne 0x55e112
mov dword [esp + 0x34], str.virtual
jmp 0x55e12a
test dword [ebx + 0x1c], 0x1000
mov eax, str.shadow
mov ecx, str.table
cmove eax, ecx
mov dword [esp + 0x34], eax
mov ebp, dword [ebx]
mov edx, 7
test ebp, ebp
je 0x55e1b5
mov edi, ebp
mov ebx, str.sqlite_
mov al, byte [edi]
dec edx
test al, al
je 0x55e162
movzx ecx, byte [ebx]
movzx eax, al
mov al, byte [eax + 0x6040d8]
cmp al, byte [ecx + 0x6040d8]
jne 0x55e162
inc edi
inc ebx
test edx, edx
jg 0x55e140
dec edx
test edx, edx
js 0x55e17e
movzx eax, byte [ebx]
movzx ecx, byte [eax + 0x6040d8]
movzx eax, byte [edi]
movzx eax, byte [eax + 0x6040d8]
sub eax, ecx
jne 0x55e1b1
lea edi, [ebp + 7]
push 0x60d243
push edi
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55e19a
mov ebp, str.sqlite_schema
jmp 0x55e1b1
push 0x60d427
push edi
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x55e1b1
mov ebp, str.sqlite_temp_schema
mov edi, dword [esp + 0x30]
mov edx, dword [edi + 8]
mov ecx, dword [edx + 0x1c]
mov eax, ecx
shr eax, 0x10
and eax, 1
shr ecx, 7
push eax
movsx eax, word [edx + 0x22]
and ecx, 1
push ecx
mov ecx, dword [esp + 0x2c]
push eax
push dword [esp + 0x40]
push ebp
mov ebp, dword [esp + 0x24]
mov eax, dword [ebp + 0x10]
push dword [ecx + eax]
push str.sssiii
push 1
push esi
call fcn.0057cd50
add esp, 0x24
mov ecx, dword [esp + 0x14]
mov edi, dword [edi]
mov dword [esp + 0x30], edi
test edi, edi
jne 0x55e0d0
mov ebx, dword [esp + 0x40]
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x84]
add edi, 0x10
inc eax
mov dword [esp + 0x24], edi
mov dword [esp + 0x84], eax
cmp eax, dword [ebp + 0x14]
jl 0x55df24
jmp 0x55cd93
test edx, edx
je 0x55cd8f
mov edi, dword [esp + 0x40]
push edi
push edx
push dword [esp + 0x18]
call fcn.005458c0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x55e28f
push edi
push dword [esp + 0x18]
mov edi, dword [esp + 0xd8]
push 2
push edi
call fcn.005570f0
add esp, 0x10
test eax, eax
je 0x55cd8f
test byte [eax + 0x1c], 0x80
je 0x55cd8f
push eax
call fcn.00561de0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x55cd8f
jmp 0x55e296
mov edi, dword [esp + 0xd0]
push dword [ebx + 0x18]
push dword [esp + 0x14]
call fcn.00565690
mov ecx, dword [ebp + 8]
add esp, 8
or ecx, dword [ebp + 0xc]
mov edx, eax
je 0x55e2ba
movzx eax, word [ebx + 0x34]
mov ecx, 6
jmp 0x55e2c3
movzx eax, word [ebx + 0x32]
mov ecx, 3
mov dword [esp + 0x34], eax
mov dword [edi + 0x2c], ecx
mov eax, dword [ebx + 0xc]
push edx
push edi
mov dword [esp + 0x40], eax
call fcn.00539090
xor edi, edi
add esp, 8
cmp word [esp + 0x34], di
je 0x55cd8f
nop dword [eax + eax]
mov eax, dword [ebx + 4]
movzx eax, word [eax + edi*2]
movsx edx, ax
test ax, ax
jns 0x55e303
xor eax, eax
jmp 0x55e311
mov eax, dword [esp + 0x38]
mov ecx, edx
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
push eax
push edx
push edi
push str.iisX
push 1
push esi
call fcn.0057cd50
mov eax, dword [ebp + 8]
add esp, 0x18
or eax, dword [ebp + 0xc]
je 0x55e355
movzx eax, word [ebx + 0x32]
cmp edi, eax
sbb eax, eax
neg eax
push eax
mov eax, dword [ebx + 0x20]
push dword [eax + edi*4]
mov eax, dword [ebx + 0x1c]
movzx eax, byte [eax + edi]
push eax
push str.isiX
push 4
push esi
call fcn.0057cd50
add esp, 0x18
mov eax, dword [esp + 0xd0]
push dword [eax + 0x2c]
push 1
push 0x54
push esi
call fcn.00570400
mov ecx, dword [esp + 0x44]
inc edi
movzx eax, cx
add esp, 0x10
cmp edi, eax
jl 0x55e2f0
push dword [esp + 0x3c]
mov ebp, dword [esp + 0x14]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
mov ebp, dword [esp + 0x10]
test edx, edx
je 0x55cd93
push dword [esp + 0x40]
push edx
push ebp
call fcn.00545970
mov edi, eax
add esp, 0xc
test edi, edi
je 0x55cd93
push dword [edi + 0x3c]
push ebp
call fcn.00565690
mov ecx, dword [esp + 0xd8]
push eax
push ecx
mov dword [ecx + 0x2c], 5
call fcn.00539090
mov edi, dword [edi + 8]
add esp, 0x10
xor ebx, ebx
test edi, edi
je 0x55cd93
mov dword [esp + 0x60], 0x60f970
mov dword [esp + 0x64], 0x60f974
mov dword [esp + 0x68], 0x60bf50
xor eax, eax
cmp dword [edi + 0x24], eax
setne al
push eax
mov eax, dword [edi + 0x38]
and eax, 3
push dword [esp + eax*4 + 0x64]
xor eax, eax
cmp byte [edi + 0x36], al
setne al
push eax
push dword [edi]
push ebx
push str.isisi
push 1
push esi
call fcn.0057cd50
mov edi, dword [edi + 0x14]
add esp, 0x20
inc ebx
test edi, edi
jne 0x55e400
push dword [esp + 0x3c]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
mov eax, dword [esp + 0xd0]
xor edi, edi
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 3
cmp dword [ebp + 0x14], edi
jle 0x55cd93
xor ebx, ebx
nop dword [eax]
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + ebx + 4]
test eax, eax
je 0x55e4b0
mov eax, dword [eax + 4]
mov eax, dword [eax]
cmp byte [eax + 0xf], 0
jne 0x55e496
cmp dword [eax], 0x6367b8
je 0x55e496
mov eax, dword [eax + 0xb8]
jmp 0x55e49b
mov eax, 0x604574
push eax
push dword [ecx + ebx]
push edi
push 0x60f980
push 1
push esi
call fcn.0057cd50
add esp, 0x18
inc edi
add ebx, 0x10
cmp edi, dword [ebp + 0x14]
jl 0x55e470
jmp 0x55cd93
mov eax, dword [esp + 0xd0]
xor ebx, ebx
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 2
mov edi, dword [ebp + 0x1b8]
test edi, edi
je 0x55cd93
mov eax, dword [edi + 8]
push dword [eax]
push ebx
push 0x60f984
push 1
push esi
call fcn.0057cd50
mov edi, dword [edi]
add esp, 0x14
inc ebx
test edi, edi
jne 0x55e4e0
jmp 0x55cd93
mov eax, dword [esp + 0x10]
mov ebp, 0x63ce70
mov ebx, dword [eax + 0x18]
mov eax, dword [esp + 0xd0]
shr ebx, 5
and ebx, 1
mov dword [eax + 0x2c], 6
mov edi, dword [ebp]
test edi, edi
je 0x55e544
nop dword [eax]
push ebx
push 1
push edi
push esi
call fcn.00524990
mov edi, dword [edi + 0x24]
add esp, 0x10
test edi, edi
jne 0x55e530
add ebp, 4
cmp ebp, 0x63cecc
jl 0x55e522
mov ebp, dword [esp + 0x10]
mov edi, dword [ebp + 0x1a8]
test edi, edi
je 0x55cd93
push ebx
push 0
push dword [edi + 8]
push esi
call fcn.00524990
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x55e561
jmp 0x55cd93
mov eax, dword [esp + 0xd0]
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 1
mov edi, dword [ebp + 0x18c]
test edi, edi
je 0x55cd93
nop dword [eax + eax]
mov eax, dword [edi + 8]
push dword [eax + 4]
push 0x60d888
push 1
push esi
call fcn.0057cd50
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x55e5a0
jmp 0x55cd93
mov edi, 0x609170
push dword [edi]
push 0x60d888
push 1
push esi
call fcn.0057cd50
add edi, 0x10
add esp, 0x10
cmp edi, 0x6095a0
jl 0x55e5c6
jmp 0x55cd8f
mov ebp, dword [esp + 0x10]
test edx, edx
je 0x55cd93
push dword [esp + 0x40]
push edx
push ebp
call fcn.00545970
add esp, 0xc
mov dword [esp + 0x38], eax
test eax, eax
je 0x55cd93
cmp byte [eax + 0x2b], 0
jne 0x55cd93
mov edi, dword [eax + 0x30]
test edi, edi
je 0x55cd93
push dword [eax + 0x3c]
push ebp
call fcn.00565690
mov ecx, dword [esp + 0xd8]
xor ebp, ebp
push eax
push ecx
mov dword [esp + 0x44], ebp
mov dword [ecx + 0x2c], 8
call fcn.00539090
add esp, 0x10
nop word [eax + eax]
xor ebx, ebx
cmp dword [edi + 0x14], ebx
jle 0x55e6b8
lea ebp, [edi + 0x24]
nop word [eax + eax]
movzx eax, byte [edi + 0x19]
push str.NONE
push eax
call fcn.004d8660
add esp, 4
push eax
movzx eax, byte [edi + 0x1a]
push eax
call fcn.004d8660
mov ecx, dword [ebp]
add esp, 4
add ecx, ecx
push eax
push dword [ebp + 4]
mov eax, dword [esp + 0x48]
mov eax, dword [eax + 4]
push dword [eax + ecx*8]
push dword [edi + 8]
push ebx
push dword [esp + 0x50]
push str.iissssss
push 1
push esi
call fcn.0057cd50
inc ebx
lea ebp, [ebp + 8]
add esp, 0x2c
cmp ebx, dword [edi + 0x14]
jl 0x55e660
mov ebp, dword [esp + 0x34]
mov edi, dword [edi + 4]
inc ebp
mov dword [esp + 0x34], ebp
test edi, edi
jne 0x55e650
push dword [esp + 0x3c]
mov ebp, dword [esp + 0x14]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
mov ebp, dword [esp + 0xd0]
mov edx, dword [esp + 0x10]
mov eax, dword [ebp + 0x2c]
lea ecx, [eax + 1]
add eax, 5
mov dword [ebp + 0x2c], eax
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x30], eax
mov eax, dword [edx + 0x10]
mov eax, dword [ecx + eax + 0xc]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x5616a4
mov eax, dword [esp + 0x14]
test eax, eax
je 0x55e733
push dword [esp + 0x40]
push eax
push 0
push ebp
call fcn.005570f0
mov edx, dword [esp + 0x20]
add esp, 0x10
xor ecx, ecx
jmp 0x55e738
mov eax, dword [ecx + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x5c], eax
test eax, eax
je 0x55ee5a
cmp byte [eax + 0x2b], 0
jne 0x55ee5a
cmp dword [eax + 0x30], 0
je 0x55ee5a
mov ecx, dword [eax + 0x3c]
mov ebx, 0xffff8000
test ecx, ecx
je 0x55e77f
mov eax, dword [edx + 0x10]
xor ebx, ebx
add eax, 0xc
cmp dword [eax], ecx
je 0x55e77f
lea eax, [eax + 0x10]
inc ebx
cmp dword [eax], ecx
jne 0x55e777
mov eax, dword [esp + 0x10]
mov edx, ebx
shl edx, 4
mov ecx, ebx
mov dword [esp + 0x74], edx
mov eax, dword [eax + 0x10]
mov eax, dword [edx + eax]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x80]
test eax, eax
cmovne ebp, eax
mov eax, 1
shl eax, cl
mov ecx, dword [ebp + 0x5c]
test ecx, eax
jne 0x55e8be
bts ecx, ebx
mov dword [ebp + 0x5c], ecx
cmp ebx, 1
jne 0x55e8c7
push ebp
call fcn.00558af0
add esp, 4
mov ebp, dword [esp + 0x5c]
mov edx, dword [esp + 0xd0]
movsx eax, word [ebp + 0x22]
add eax, dword [esp + 0x30]
cmp dword [edx + 0x2c], eax
jge 0x55e7e8
mov dword [edx + 0x2c], eax
push 0x70
push ebp
push ebx
push 0
push edx
call fcn.005587a0
push 0
push dword [ebp]
push 0
push dword [esp + 0x74]
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [ebp + 0x30]
add esp, 0x30
mov dword [esp + 0x34], eax
mov ecx, 1
mov dword [esp + 0x24], ecx
test eax, eax
je 0x55e93f
push dword [esp + 0x40]
push dword [eax + 8]
push dword [esp + 0x18]
call fcn.00545970
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x55e91f
mov dword [esp + 0x2c], 0
cmp ebx, 1
je 0x55e87a
mov edx, dword [esp + 0xd0]
mov eax, dword [esp + 0x74]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x10]
mov eax, dword [ecx + eax + 4]
cmp byte [eax + 9], 0
je 0x55e87a
push dword [ebp]
push 0
push dword [ebp + 0x14]
push ebx
push edx
call fcn.00518d50
add esp, 0x14
push 0
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x3c]
push ebp
push dword [esp + 0xe0]
call fcn.005473b0
add esp, 0x14
test eax, eax
jne 0x55cd8f
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x55e8fc
push 0x70
push ebp
push ebx
push dword [esp + 0x30]
push dword [esp + 0xe0]
call fcn.005587a0
add esp, 0x14
jmp 0x55e91f
cmp ebx, 1
je 0x55e7cd
mov ecx, dword [esp + 0xd0]
mov ebp, dword [esp + 0x5c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 4]
cmp byte [eax + 9], 0
je 0x55e7d1
push dword [ebp]
push 0
push dword [ebp + 0x14]
push ebx
push ecx
call fcn.00518d50
add esp, 0x14
jmp 0x55e7d1
push ebx
push dword [eax + 0x2c]
push dword [esp + 0x2c]
push 0x70
push esi
call fcn.00570460
push dword [esp + 0x40]
push dword [esp + 0xe8]
call fcn.0057df60
add esp, 0x1c
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x24]
inc ecx
mov dword [esp + 0x24], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x34], eax
test eax, eax
jne 0x55e824
mov ebp, dword [esp + 0x5c]
mov eax, dword [esp + 0xd0]
cmp dword [eax + 0x28], ecx
jge 0x55e94e
mov dword [eax + 0x28], ecx
push 0
push 0x24
push esi
call fcn.005703a0
mov ebp, dword [ebp + 0x30]
add esp, 0xc
mov dword [esp + 0x70], eax
mov dword [esp + 0x24], 1
mov dword [esp + 0x20], ebp
test ebp, ebp
je 0x55edc4
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x10]
add eax, 2
mov dword [esp + 0x74], eax
push dword [esp + 0x40]
push dword [ebp + 8]
push ecx
call fcn.00545970
xor ebx, ebx
mov dword [esp + 0x44], eax
add esp, 0xc
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], ebx
test eax, eax
je 0x55e9ca
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x30]
push ecx
push ebp
push eax
push dword [esp + 0xe0]
call fcn.005473b0
mov ebx, dword [esp + 0x3c]
add esp, 0x14
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0xd0]
mov edx, dword [esp + 0x30]
dec dword [eax + 0x38]
mov ebp, dword [eax + 0x38]
mov eax, dword [ecx + 0x14]
add eax, edx
mov dword [esp + 0x34], ebp
cmp dword [edi + 0x2c], eax
mov edi, dword [esp + 0x8c]
jge 0x55ea09
mov esi, dword [esp + 0xd0]
mov dword [esi + 0x2c], eax
mov esi, dword [esp + 0x44]
xor eax, eax
mov dword [esp + 0x28], eax
cmp dword [ecx + 0x14], eax
jle 0x55eaaf
add ecx, 0x24
mov ebp, edx
mov dword [esp + 0x48], ecx
lea eax, [ebx + eax*4]
test ebx, ebx
jne 0x55ea2a
mov eax, ecx
mov eax, dword [eax]
push ebp
push eax
push 0
push dword [esp + 0x68]
push esi
call fcn.00540000
mov eax, dword [esp + 0x30]
add esp, 0x14
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55ea5b
push 0
push dword [esp + 0x38]
push ebp
push 0x32
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55ea89
mov edx, dword [esp + 0x34]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], ebp
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x28]
inc ebp
mov edx, dword [esp + 0x20]
inc eax
mov ecx, dword [esp + 0x48]
add ecx, 8
mov dword [esp + 0x28], eax
mov dword [esp + 0x48], ecx
cmp eax, dword [edx + 0x14]
jl 0x55ea21
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x55eb47
mov ecx, dword [eax + 0x10]
test ecx, ecx
jne 0x55ead1
push eax
push dword [esp + 0x14]
call fcn.004e4740
add esp, 8
mov ecx, eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x14]
push eax
push ecx
push 0
push eax
push dword [esp + 0x40]
push 0x60
push esi
call fcn.005704c0
mov eax, dword [esp + 0x3c]
add esp, 0x1c
mov ecx, dword [edi]
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jg 0x55eb17
push edx
push dword [esp + 0x34]
push ebp
push dword [esp + 0x30]
push 0x1d
push esi
call fcn.004d8850
add esp, 0x18
jmp 0x55ebb0
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x24]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x30]
mov dword [eax + ecx*4 + 0xc], esi
mov esi, dword [esp + 0x44]
mov dword [eax + ecx*4], 0xfd1d
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0x10], edx
jmp 0x55ebb0
cmp dword [esp + 0x38], 0
je 0x55ebb0
mov ecx, dword [edi]
mov eax, dword [esp + 0x1c]
lea edx, [ecx + 2]
cmp dword [eax], ecx
jg 0x55eb71
push dword [esp + 0x30]
push edx
push dword [esp + 0x2c]
push 0x1e
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55eba6
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edi, dword [esp + 0x24]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x8c]
mov dword [eax + ecx*4], 0x1e
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
push ebp
push esi
call fcn.0057a930
add esp, 8
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
test byte [edx + 0x1c], 0x80
mov eax, dword [eax]
jne 0x55ebf1
cmp eax, ecx
jg 0x55ebd7
mov eax, dword [esp + 0x54]
push 0
inc eax
push eax
push 0
push 0x87
jmp 0x55ec01
lea eax, [ecx + 1]
lea edx, [esi + 0x68]
mov dword [edi], eax
mov eax, dword [edx]
lea ecx, [ecx + ecx*4]
mov dword [esp + 0x2c], edx
mov dword [eax + ecx*4], 0x87
jmp 0x55ec32
cmp eax, ecx
jg 0x55ec1a
mov eax, dword [esp + 0x54]
push 0
inc eax
push eax
push 0
push 0x4b
push esi
call fcn.0050f290
mov eax, dword [esp + 0x94]
add esp, 0x14
add eax, 0x68
mov dword [esp + 0x2c], eax
jmp 0x55ec5a
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
lea eax, [esi + 0x68]
mov dword [esp + 0x2c], eax
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x4b
mov edx, dword [esp + 0x54]
mov edi, dword [esp + 0x8c]
inc edx
mov dword [eax + ecx*4 + 0x10], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 4], 0
mov eax, dword [esp + 0x24]
dec eax
push eax
mov eax, dword [esp + 0x24]
push dword [eax + 8]
push 0x60f99c
push dword [esp + 0x80]
push esi
call fcn.0057cd50
mov eax, dword [esp + 0x30]
add esp, 0x14
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55ec9b
push 0
push 4
push dword [esp + 0x5c]
push 0x54
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55ecd0
mov edx, dword [esp + 0x54]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 4
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x55ecea
push ebp
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x55ecf2
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebp*4], eax
mov ecx, dword [esp + 0x10]
test ebx, ebx
je 0x55eda7
cmp ebx, dword [ecx + 0x164]
jae 0x55ed39
cmp ebx, dword [ecx + 0x15c]
jb 0x55ed21
mov eax, dword [ecx + 0x158]
mov dword [ebx], eax
mov dword [ecx + 0x158], ebx
jmp 0x55eda7
cmp ebx, dword [ecx + 0x160]
jb 0x55ed39
mov eax, dword [ecx + 0x150]
mov dword [ebx], eax
mov dword [ecx + 0x150], ebx
jmp 0x55eda7
cmp dword [ecx + 0x210], 0
je 0x55ed4e
push ebx
push ecx
call fcn.0051a400
add esp, 8
jmp 0x55eda3
cmp dword [0x635d20], 0
je 0x55ed99
mov eax, dword [0x63cf30]
test eax, eax
je 0x55ed6a
push eax
call dword [0x635d70]
add esp, 4
push ebx
call dword [0x635d4c]
sub dword [0x63ced0], eax
dec dword [0x63cef4]
push ebx
call dword [0x635d44]
mov eax, dword [0x63cf30]
add esp, 8
test eax, eax
je 0x55eda3
push eax
call dword [0x635d78]
jmp 0x55eda0
push ebx
call dword [0x635d44]
add esp, 4
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x20]
inc dword [esp + 0x24]
mov ebp, dword [ebp + 4]
mov dword [esp + 0x20], ebp
test ebp, ebp
jne 0x55e985
mov edx, dword [esp + 0x2c]
jmp 0x55edd2
mov edx, dword [esp + 0x80]
add edx, 0x68
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x70]
mov ecx, dword [edi]
lea ebx, [ebp + 1]
cmp dword [eax], ecx
jg 0x55edf9
push 0
push ebx
push 0
push 0x27
push esi
call fcn.0050f290
mov edx, dword [esp + 0x40]
add esp, 0x14
jmp 0x55ee2a
mov ebp, dword [esp + 0x70]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov ebx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x55ee3b
mov eax, 0x63d108
jmp 0x55ee49
mov eax, dword [edx]
lea ecx, [ebp*4]
add ecx, ebp
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x84]
mov ebp, dword [esp + 0xd0]
mov dword [eax + 8], ebx
test ecx, ecx
je 0x55cd8f
mov edx, dword [esp + 0x10]
jmp 0x55e713
test edx, edx
je 0x55cd8f
push 0
push edx
call fcn.00551fa0
add esp, 8
test al, al
je 0x55ee8e
mov edi, 0x60455c
mov ebx, 0xc
jmp 0x55ee98
mov edi, 0x604558
mov ebx, 4
mov ebp, dword [esp + 0x10]
mov esi, 2
push 0
push 0
push 0
push 0
push 0
push 0x4ca120
push edi
push 1
push esi
push str.like
push ebp
call fcn.0053ab20
push 0
push 1
push esi
push str.like
push ebp
call fcn.00544d60
inc esi
add esp, 0x40
mov ecx, dword [eax + 4]
or ecx, ebx
and ecx, 0xffdfffff
mov dword [eax + 4], ecx
cmp esi, 3
jle 0x55eea1
push dword [esp + 0x3c]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
mov ebp, dword [esp + 0x6c]
xor eax, eax
mov ebx, dword [esp + 0xd0]
xor ecx, ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x3c]
movzx eax, byte [eax]
mov al, byte [eax + 0x6040d8]
cmp al, 0x71
mov byte [esp + 0x5b], al
mov eax, dword [esp + 0xd8]
sete cl
mov dword [esp + 0xbc], ecx
mov ecx, 0xffffffff
cmp dword [eax], 0
mov eax, 0x64
mov dword [ebx + 0x2c], 6
cmove ebp, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x78], eax
test edx, edx
je 0x55efb1
lea eax, [esp + 0x78]
push eax
push edx
call fcn.00552220
add esp, 8
test eax, eax
je 0x55ef7f
mov eax, dword [esp + 0x78]
mov dword [esp + 0x34], eax
test eax, eax
jg 0x55efb1
mov eax, 0x64
jmp 0x55efad
test ebp, ebp
js 0x55ef93
mov eax, dword [esp + 0x10]
mov ecx, ebp
add ecx, ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8]
jmp 0x55ef95
xor eax, eax
push eax
push dword [esp + 0x18]
push 0
push ebx
call fcn.005570f0
mov dword [esp + 0x60], eax
add esp, 0x10
mov eax, dword [esp + 0x78]
mov dword [esp + 0x34], eax
push 1
lea ecx, [eax - 1]
push ecx
push 0x47
push esi
call fcn.00570400
mov ebp, dword [esp + 0x20]
xor ecx, ecx
add esp, 0x10
mov dword [esp + 0x30], ecx
cmp dword [ebp + 0x14], ecx
jle 0x55f405
mov dword [esp + 0xc8], 0x10
xor eax, eax
mov eax, dword [esp + 0x6c]
test eax, eax
js 0x55eff2
cmp ecx, eax
jne 0x55f3f7
mov eax, dword [ebx + 0x80]
mov edx, ebx
test eax, eax
cmovne edx, eax
mov eax, 1
shl eax, cl
mov ebx, dword [edx + 0x5c]
test ebx, eax
jne 0x55f025
bts ebx, ecx
mov dword [edx + 0x5c], ebx
cmp ecx, 1
jne 0x55f025
push edx
call fcn.00558af0
mov ecx, dword [esp + 0x34]
add esp, 4
mov ebx, dword [esp + 0xd0]
mov edx, ecx
shl edx, 4
xor ecx, ecx
mov dword [esp + 0x74], edx
mov byte [ebx + 0x17], 0
mov eax, dword [ebp + 0x10]
mov eax, dword [edx + eax + 0xc]
mov dword [esp + 0x28], eax
mov ebp, dword [eax + 0x10]
test ebp, ebp
je 0x55f3ef
mov edx, dword [esp + 0x50]
mov edi, ecx
mov ebx, dword [ebp + 8]
test edx, edx
je 0x55f062
cmp edx, ebx
jne 0x55f089
test byte [ebx + 0x1c], 0x80
lea eax, [ecx + 1]
cmovne eax, ecx
xor edx, edx
mov ecx, eax
mov eax, dword [ebx + 8]
test eax, eax
je 0x55f080
mov eax, dword [eax + 0x14]
inc ecx
inc edx
test eax, eax
jne 0x55f077
cmp edx, edi
cmovg edi, edx
mov edx, dword [esp + 0x50]
mov ebp, dword [ebp]
test ebp, ebp
jne 0x55f057
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x560e47
test edx, edx
lea eax, [ecx + 1]
push 0
cmove eax, ecx
lea eax, [eax*4 + 4]
push eax
push ebp
call fcn.0053c1d0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x55f405
xor edx, edx
cmp dword [esp + 0x50], edx
je 0x55f0e0
mov edx, 1
mov dword [ebx + 4], 0
mov ebp, dword [esp + 0x28]
mov ebp, dword [ebp + 0x10]
test ebp, ebp
je 0x55f12f
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x50]
mov dword [esp + 0x24], eax
mov ecx, dword [ebp + 8]
test esi, esi
je 0x55f102
cmp esi, ecx
jne 0x55f124
test byte [ecx + 0x1c], 0x80
jne 0x55f10f
mov eax, dword [ecx + 0x14]
inc edx
mov dword [ebx + edx*4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x55f124
mov eax, dword [ecx + 0x2c]
inc edx
mov dword [ebx + edx*4], eax
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x55f116
mov ebp, dword [ebp]
test ebp, ebp
jne 0x55f0f7
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0xd0]
mov eax, dword [esp + 0x24]
add eax, 8
mov dword [ebx], edx
cmp dword [ecx + 0x2c], eax
jge 0x55f147
mov dword [ecx + 0x2c], eax
push 0xfffffffffffffff2
push ebx
push 1
push edx
push 2
push 0x9b
push esi
mov byte [ecx + 0x13], 0
mov dword [ecx + 0x1c], 0
call fcn.005704c0
mov eax, dword [edi]
add esp, 0x1c
test eax, eax
jle 0x55f185
mov ecx, dword [esp + 0x30]
lea ebp, [esi + 0x68]
movzx edx, cl
lea ecx, [eax + eax*4]
mov eax, dword [ebp]
mov word [eax + ecx*4 - 0x12], dx
jmp 0x55f18f
mov ebp, dword [esp + 0x80]
add ebp, 0x68
mov eax, dword [esp + 0x1c]
mov ebx, dword [edi]
mov dword [esp + 0x18], ebp
cmp dword [eax], ebx
jg 0x55f1b2
push 0
push 0
push 2
push 0x32
push esi
call fcn.0050f290
add esp, 0x14
mov ebx, eax
jmp 0x55f1e4
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x74]
push 0xfffffffffffffffa
mov eax, dword [edx + 0x10]
push dword [ecx + eax]
push str._in_database__s__n
push edx
call fcn.00557700
add esp, 0xc
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55f231
push 3
push 3
push 2
push 0x6f
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55f263
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.00510b30
mov eax, dword [esi]
add esp, 4
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x55f27d
mov eax, 0x63d108
jmp 0x55f286
mov eax, dword [ebp]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x28]
mov ebx, dword [eax + 0x10]
mov dword [esp + 0x28], ebx
test ebx, ebx
je 0x560e3b
mov eax, dword [esp + 0x50]
jmp 0x55f2a6
mov ebx, dword [esp + 0x28]
mov ebx, dword [ebx + 8]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x74], 0
mov dword [esp + 0x5c], 0xffffffff
test eax, eax
je 0x55f2c9
cmp eax, ebx
jne 0x560e2f
mov al, byte [ebx + 0x2b]
test al, al
je 0x55f453
cmp al, 1
jne 0x55f3cd
cmp word [ebx + 0x22], 0
jg 0x55f306
mov eax, dword [ebx + 0x30]
push 0
push dword [eax]
mov eax, dword [esp + 0x18]
add eax, 0x184
push eax
call fcn.004ede00
add esp, 0xc
cmp dword [eax + 8], 0
je 0x55f3cd
cmp byte [ebx + 0x2b], 1
je 0x55f313
cmp word [ebx + 0x22], 0
jg 0x55f323
push ebx
push dword [esp + 0xd4]
call fcn.00592cf0
add esp, 8
mov eax, dword [ebx + 0x34]
test eax, eax
je 0x55f3cd
mov eax, dword [eax + 8]
test eax, eax
je 0x55f3cd
mov eax, dword [eax]
test eax, eax
je 0x55f3cd
cmp dword [eax], 4
jl 0x55f3cd
cmp dword [eax + 0x60], 0
je 0x55f3cd
push dword [esp + 0xbc]
push 3
push dword [esp + 0x38]
push 0xae
push esi
call fcn.00570460
inc dword [ebx + 0x18]
add esp, 0x14
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x55f38a
push ebx
push 0xfffffffffffffff0
push eax
call fcn.004f1310
add esp, 0xc
jmp 0x55f39b
mov eax, dword [edi]
lea ecx, [eax + eax*4]
mov eax, dword [ebp]
mov byte [eax + ecx*4 - 0x13], 0xf0
mov dword [eax + ecx*4 - 4], ebx
push 3
push 0x32
push esi
call fcn.005703a0
push esi
mov ebx, eax
call fcn.00510b30
mov ecx, dword [esi]
add esp, 0x10
mov edx, dword [edi]
cmp byte [ecx + 0x57], 0
je 0x55f3c1
mov eax, 0x63d108
jmp 0x55f3ca
mov eax, dword [ebp]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov ebx, dword [esp + 0xd0]
mov eax, dword [esp + 0x50]
mov ebp, dword [esp + 0x28]
mov ebp, dword [ebp]
test ebp, ebp
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x18]
jne 0x55f2a2
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
inc ecx
mov dword [esp + 0x30], ecx
cmp ecx, dword [ebp + 0x14]
jl 0x55efe0
push 0
push 0x6096e0
push 7
push esi
call fcn.005705f0
add esp, 0x10
test eax, eax
je 0x55f43d
mov ecx, 1
mov byte [eax + 0x29], 0xff
sub ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov dword [eax + 0x38], 0x60fafc
mov byte [eax + 0x65], 0xff
mov dword [eax + 0x74], str.database_disk_image_is_malformed
mov eax, dword [edi]
sub eax, 2
push eax
push 0
push esi
call fcn.00570910
add esp, 0xc
jmp 0x55cd93
cmp byte [esp + 0x5b], 0x71
je 0x55f4b7
test byte [ebx + 0x1c], 0x80
je 0x55f4b7
mov ecx, dword [ebx + 8]
mov dword [esp + 0x54], ecx
test ecx, ecx
je 0x55f484
nop dword [eax + eax]
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x55f480
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x55f470
mov dword [esp + 0x54], ecx
movzx eax, word [ecx + 0x32]
push eax
push dword [esp + 0xd4]
call fcn.005523a0
mov edx, eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x2c], edx
movzx ecx, word [eax + 0x32]
dec ecx
add ecx, edx
push ecx
push edx
push 1
push 0x4b
push esi
call fcn.00570460
add esp, 0x1c
jmp 0x55f4c7
mov dword [esp + 0x54], 0
mov dword [esp + 0x24], 0
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x44]
push eax
push 0
push 1
push 0
push 0x70
push ebx
push dword [esp + 0xec]
call fcn.005588e0
mov edx, dword [esp + 0x3c]
add esp, 0x20
mov ecx, dword [edi]
cmp dword [edx], ecx
jg 0x55f50a
push 0
push 7
push 0
push 0x47
push esi
call fcn.0050f290
mov edx, dword [esp + 0x30]
add esp, 0x14
jmp 0x55f53c
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 7
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebp, dword [ebx + 8]
test ebp, ebp
je 0x55f5a5
mov ebx, 8
mov ecx, dword [edi]
cmp dword [edx], ecx
jg 0x55f564
push 0
push ebx
push 0
push 0x47
push esi
call fcn.0050f290
mov edx, dword [esp + 0x30]
add esp, 0x14
jmp 0x55f599
mov esi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebp, dword [ebp + 0x14]
inc ebx
test ebp, ebp
jne 0x55f548
mov ebx, dword [esp + 0x4c]
mov ecx, dword [edi]
cmp dword [edx], ecx
jg 0x55f5c8
push 0
push 0
push dword [esp + 0x48]
push 0x24
push esi
call fcn.0050f290
mov ebp, dword [esp + 0x2c]
add esp, 0x14
mov edx, dword [esp + 0x1c]
jmp 0x55f602
mov ebp, dword [esp + 0x18]
lea eax, [ecx + 1]
mov ebx, dword [esp + 0x40]
lea ecx, [ecx + ecx*4]
mov dword [edi], eax
mov eax, dword [ebp]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x4c]
mov dword [eax + ecx*4], 0x24
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [edi]
mov dword [esp + 0x78], ecx
cmp dword [edx], ecx
jg 0x55f623
push 0
push 1
push 7
push 0x56
push esi
call fcn.0050f290
add esp, 0x14
mov dword [esp + 0x78], eax
jmp 0x55f655
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
test byte [ebx + 0x1c], 0x80
jne 0x55f695
movsx ebx, word [ebx + 0x22]
or ecx, 0xffffffff
test ebx, ebx
jle 0x55f683
mov edx, dword [esp + 0x4c]
mov edx, dword [edx + 4]
add edx, 0xe
test byte [edx], 0x20
lea eax, [ecx + 1]
lea edx, [edx + 0x10]
cmovne eax, ecx
mov ecx, eax
sub ebx, 1
jne 0x55f670
mov eax, dword [esp + 0x4c]
lea edx, [ecx - 1]
movsx eax, word [eax + 0x20]
cmp ecx, eax
cmovne edx, ecx
jmp 0x55f6b5
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x55f6b0
nop dword [eax]
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x55f6b0
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x55f6a0
movzx edx, word [ecx + 0x34]
dec edx
test edx, edx
js 0x55f73a
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55f6db
push 3
push edx
push dword [esp + 0x48]
push 0x5e
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55f709
mov ebx, dword [esp + 0x40]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x55f718
mov eax, 0x63d108
jmp 0x55f726
mov eax, dword [edi]
lea ecx, [eax + eax*4]
mov eax, dword [ebp]
lea eax, [eax + ecx*4]
add eax, 0xffffffec
cmp dword [eax + 0xc], 3
jne 0x55f73a
cmp byte [eax], 0x5e
jne 0x55f73a
mov ecx, pe_nt_image_headers32
or word [eax + 2], cx
cmp byte [esp + 0x5b], 0x71
je 0x55f8a7
mov eax, dword [esp + 0x54]
test eax, eax
je 0x55f8a7
movzx edx, word [eax + 0x32]
mov eax, dword [esp + 0x1c]
mov ebx, dword [edi]
cmp dword [eax], ebx
jg 0x55f779
push edx
push dword [esp + 0x28]
push 0
push dword [esp + 0x4c]
push 0x29
push esi
call fcn.004d8850
add esp, 0x18
mov ebx, eax
jmp 0x55f7ab
mov esi, dword [esp + 0x40]
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x24]
mov dword [eax + ecx*4 + 0xc], esi
mov esi, dword [esp + 0x44]
mov dword [eax + ecx*4], 0xfd29
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0x10], edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55f7ca
push 0
push 0
push dword [esp + 0x2c]
push 0x32
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x55f7fc
mov edx, dword [esp + 0x24]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x4c]
push dword [eax]
push str.row_not_in_PRIMARY_KEY_order_for__s
push dword [esp + 0x18]
call fcn.00557700
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
push esi
call fcn.00510b30
mov eax, dword [esi]
lea ecx, [ebx + ebx*4]
mov edx, dword [edi]
add esp, 0x2c
shl ecx, 2
cmp byte [eax + 0x57], 0
je 0x55f841
mov eax, 0x63d108
jmp 0x55f846
mov eax, dword [ebp]
add eax, ecx
mov dword [eax + 8], edx
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x55f85a
mov eax, 0x63d110
jmp 0x55f862
mov eax, dword [ebp]
add eax, 0x1c
add eax, ecx
mov ebp, dword [esp + 0x54]
xor ebx, ebx
mov dword [eax], edx
xor eax, eax
cmp ax, word [ebp + 0x32]
jae 0x55f8a7
mov edi, dword [esp + 0xd0]
mov esi, dword [esp + 0x40]
nop dword [eax]
mov eax, dword [esp + 0x24]
add eax, ebx
push eax
push ebx
push esi
push ebp
push edi
call fcn.00540e20
movzx eax, word [ebp + 0x32]
inc ebx
add esp, 0x14
cmp ebx, eax
jl 0x55f880
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x8c]
mov ecx, dword [esp + 0x4c]
xor ebp, ebp
mov dword [esp + 0x88], ebp
movzx eax, word [ecx + 0x1e]
and eax, 1
mov dword [esp + 0xa8], eax
xor eax, eax
cmp ax, word [ecx + 0x22]
jge 0x560117
nop
mov ecx, dword [ecx + 4]
mov eax, ebp
shl eax, 4
add ecx, eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x90], ecx
movsx eax, word [eax + 0x20]
cmp ebp, eax
je 0x5600ff
cmp dword [esp + 0xa8], 0
lea ebx, [ecx + 8]
lea edx, [ecx + 4]
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], edx
je 0x55f927
mov eax, dword [edx]
and eax, 0xf0
cmp dword [esp + 0xc8], eax
sbb eax, eax
neg eax
jmp 0x55f93d
xor eax, eax
mov dword [esp + 0x98], edx
cmp byte [ebx], 0x41
mov dword [esp + 0x94], ebx
setg al
test byte [edx], 0xf
mov dword [esp + 0x9c], eax
jne 0x55f951
test eax, eax
je 0x5600ff
test byte [ecx + 0xe], 0x20
mov dword [esp + 0x2c], 5
je 0x55f985
push 3
push ebp
push dword [esp + 0x48]
push dword [esp + 0x58]
push esi
call fcn.00540000
add esp, 0x14
mov dword [esp + 0x20], 0xffffffff
mov ebp, 3
jmp 0x55fb45
movzx edx, word [ecx + 0xc]
test dx, dx
je 0x55fae8
mov al, byte [ebx]
mov ebx, dword [esp + 0x10]
mov byte [esp + 0xc0], al
mov dword [esp + 0x70], 0
mov al, byte [ebx + 0x54]
mov byte [esp + 0xc4], al
mov eax, dword [esp + 0x4c]
cmp byte [eax + 0x2b], 0
jne 0x55fae8
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x55fae8
mov eax, edx
cmp dword [ecx], eax
jl 0x55fae8
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 - 0xc]
test eax, eax
je 0x55fae8
push 0
lea ecx, [esp + 0x74]
push ecx
push dword [esp + 0xc8]
push dword [esp + 0xd0]
push eax
push ebx
call fcn.0058e5e0
mov ebx, dword [esp + 0x88]
add esp, 0x18
test ebx, ebx
je 0x55fae8
movzx ecx, word [ebx + 0x10]
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x608430]
mov dword [esp + 0x2c], eax
test ecx, 0x9000
jne 0x55fa33
cmp dword [ebx + 0x18], 0
je 0x55fa3c
push ebx
call fcn.0058fe30
add esp, 4
mov ecx, dword [ebx + 0x14]
test ecx, ecx
je 0x55fa93
cmp ebx, dword [ecx + 0x164]
jae 0x55fa7e
cmp ebx, dword [ecx + 0x15c]
jb 0x55fa66
mov eax, dword [ecx + 0x158]
mov dword [ebx], eax
mov dword [ecx + 0x158], ebx
jmp 0x55fae8
cmp ebx, dword [ecx + 0x160]
jb 0x55fa7e
mov eax, dword [ecx + 0x150]
mov dword [ebx], eax
mov dword [ecx + 0x150], ebx
jmp 0x55fae8
cmp dword [ecx + 0x210], 0
je 0x55fa93
push ebx
push ecx
call fcn.0051a400
add esp, 8
jmp 0x55fae8
cmp dword [0x635d20], 0
je 0x55fade
mov eax, dword [0x63cf30]
test eax, eax
je 0x55faaf
push eax
call dword [0x635d70]
add esp, 4
push ebx
call dword [0x635d4c]
sub dword [0x63ced0], eax
dec dword [0x63cef4]
push ebx
call dword [0x635d44]
mov eax, dword [0x63cf30]
add esp, 8
test eax, eax
je 0x55fae8
push eax
call dword [0x635d78]
jmp 0x55fae5
push ebx
call dword [0x635d44]
add esp, 4
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x20], eax
test byte [edx + 0x1c], 0x80
je 0x55fb38
mov ecx, dword [edx + 8]
test ecx, ecx
je 0x55fb11
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x55fb11
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x55fb01
movzx ebx, word [ecx + 0x34]
xor edx, edx
test ebx, ebx
je 0x55fb2e
mov eax, dword [ecx + 4]
movzx ebp, bp
cmp bp, word [eax]
je 0x55fb33
inc edx
add eax, 2
cmp edx, ebx
jl 0x55fb21
or eax, 0xffffffff
jmp 0x55fb42
movzx eax, dx
jmp 0x55fb42
push ebp
push edx
call fcn.0056b290
add esp, 8
movsx ebp, ax
mov eax, dword [esp + 0xd0]
mov edx, esi
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x84], edx
mov eax, dword [eax + 0x38]
dec eax
mov dword [esp + 0x7c], eax
lea ebx, [eax - 1]
mov eax, dword [esp + 0xd0]
mov dword [esp + 0xa0], ebx
mov dword [eax + 0x38], ebx
mov eax, dword [esp + 0x98]
test byte [eax], 0xf
je 0x55fd80
mov eax, dword [esp + 0x1c]
mov edx, dword [edi]
mov dword [esp + 0xa4], edx
cmp dword [eax], edx
jg 0x55fbbe
push dword [esp + 0x2c]
push ebp
push ebx
mov ebx, dword [esp + 0x2c]
push ebx
push 0x12
push esi
call fcn.004d8850
mov edx, eax
add esp, 0x18
mov dword [esp + 0xa4], edx
jmp 0x55fbf6
lea eax, [edx + 1]
mov dword [edi], eax
lea ecx, [edx + edx*4]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x20]
mov dword [eax + ecx*4 + 0x10], edx
mov edx, dword [esp + 0xa4]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 0xc], ebp
mov eax, dword [edi]
test ebx, ebx
jns 0x55fc1a
test eax, eax
jle 0x55fc13
lea ecx, [eax + eax*4]
mov ebx, 0xf
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], bx
mov ebx, edx
jmp 0x55fcda
mov edx, dword [esp + 0x18]
test eax, eax
jle 0x55fc35
lea ecx, [eax + eax*4]
mov esi, 0xd
mov eax, dword [edx]
mov word [eax + ecx*4 - 0x12], si
mov esi, dword [esp + 0x44]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55fc54
push 3
push ebp
push ebx
push 0x5e
push esi
call fcn.0050f290
mov edx, dword [esp + 0x2c]
add esp, 0x14
jmp 0x55fc81
mov esi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x1c]
mov ebx, dword [edi]
cmp dword [eax], ebx
jg 0x55fca6
mov edx, dword [esp + 0xa0]
push 0
push edx
push 3
push 0x33
push esi
call fcn.0050f290
add esp, 0x14
mov ebx, eax
jmp 0x55fcda
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [edx]
mov edx, dword [esp + 0xa0]
mov dword [eax + ecx*4], 0x33
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x90]
push dword [eax]
mov eax, dword [esp + 0x50]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x1c]
call fcn.00557700
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0xc8]
add esp, 0x2c
test eax, eax
je 0x55fdbe
push dword [esp + 0x7c]
push esi
call fcn.0057a930
mov eax, dword [esi]
add esp, 8
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x55fd38
mov eax, 0x63d108
jmp 0x55fd4b
mov eax, dword [esp + 0xa4]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x55fd5f
mov eax, 0x63d108
jmp 0x55fd6b
mov eax, dword [esp + 0x18]
lea ecx, [ebx + ebx*4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov ebx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x70]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x9c]
cmp dword [esp + 0xa8], 0
je 0x55fe8a
test eax, eax
je 0x55fe77
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55fdd2
push dword [esp + 0x2c]
push ebp
push ebx
push dword [esp + 0x2c]
push 0x12
push esi
call fcn.004d8850
add esp, 0x18
jmp 0x55fdff
mov ebx, dword [esp + 0xa0]
mov edx, dword [esp + 0x84]
mov ecx, dword [esp + 0x70]
jmp 0x55fd87
mov edx, dword [esp + 0x20]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], ebp
mov dword [eax + ecx*4 + 0x10], edx
mov ecx, dword [edi]
test ecx, ecx
jle 0x55fe29
mov eax, dword [esp + 0x98]
lea ecx, [ecx + ecx*4]
mov eax, dword [eax]
shr eax, 4
and eax, 0xf
movzx edx, byte [eax + 0x637543]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov ebp, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov eax, dword [ebp + 4]
push dword [ecx + eax]
mov eax, dword [esp + 0x9c]
push dword [ebp]
mov eax, dword [eax]
shr eax, 4
and eax, 0xf
push dword [eax*4 + 0x635f24]
push str.non__s_value_in__s._s
push dword [esp + 0x20]
call fcn.00557700
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
add esp, 0x30
jmp 0x5600a7
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x80], ebp
jmp 0x5600a3
mov eax, dword [esp + 0x94]
mov esi, edx
mov dword [esp + 0x44], esi
mov dword [esp + 0x80], ecx
cmp byte [eax], 0x42
jne 0x55ff58
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55fecc
push dword [esp + 0x2c]
push ebp
push ebx
push dword [esp + 0x2c]
push 0x12
push edx
call fcn.004d8850
mov esi, dword [esp + 0x30]
add esp, 0x18
jmp 0x55fef9
mov esi, dword [esp + 0x18]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*4]
mov dword [edi], eax
mov eax, dword [esi]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], ebp
mov dword [eax + ecx*4 + 0x10], edx
mov eax, dword [edi]
test eax, eax
jle 0x55ff0e
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [esi]
mov word [eax + ecx*4 - 0x12], dx
mov ebp, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov eax, dword [ebp + 4]
push dword [ecx + eax]
push dword [ebp]
push str.NUMERIC_value_in__s._s
push dword [esp + 0x1c]
call fcn.00557700
mov esi, dword [esp + 0x94]
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x9c]
mov dword [esp + 0xac], eax
jmp 0x5600a0
cmp byte [eax], 0x43
jl 0x5600a7
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x55ff8a
push dword [esp + 0x2c]
push ebp
push ebx
push dword [esp + 0x2c]
push 0x12
push esi
call fcn.004d8850
mov edx, dword [esp + 0x38]
add esp, 0x18
mov ebp, dword [esp + 0x2c]
jmp 0x55ffb7
mov edx, dword [esp + 0x20]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 0xc], ebp
mov ebp, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0x10], ebp
mov eax, dword [edi]
test eax, eax
jle 0x55ffd4
lea ecx, [eax + eax*4]
mov esi, 0x1b
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], si
mov esi, dword [esp + 0x44]
test edx, edx
js 0x55fff2
push 3
push dword [esp + 0x8c]
push dword [esp + 0x48]
push dword [esp + 0x58]
push esi
call fcn.00540000
add esp, 0x14
push 0xffffffffffffffff
push 0x5ea004
push 0
push 1
push 3
push 0x60
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x56002b
push ebp
push 3
push ebx
push 0xffffffffffffffff
push 0x12
push esi
call fcn.004d8850
mov edx, dword [esp + 0x30]
add esp, 0x18
jmp 0x56005c
mov edx, dword [esp + 0x18]
lea eax, [ecx + 1]
mov esi, dword [esp + 0x44]
lea ecx, [ecx + ecx*4]
mov dword [edi], eax
mov eax, dword [edx]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], 0xffffffff
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], ebp
mov eax, dword [edi]
test eax, eax
jle 0x560071
lea ecx, [eax + eax*4]
mov eax, dword [edx]
mov edx, 0x1c
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov eax, dword [edx + 4]
push dword [ecx + eax]
push dword [edx]
push str.TEXT_value_in__s._s
push dword [esp + 0x1c]
call fcn.00557700
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
add esp, 0x2c
mov dword [esp + 0x44], esi
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x7c]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x5600c5
push edx
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x5600cd
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + edx*4], eax
push esi
call fcn.00510b30
mov ecx, dword [esi + 0xc]
add esp, 4
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x5600f0
push ebx
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x5600f8
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebx*4], eax
mov ebp, dword [esp + 0x88]
mov ecx, dword [esp + 0x4c]
inc ebp
mov dword [esp + 0x88], ebp
movsx eax, word [ecx + 0x22]
cmp ebp, eax
jl 0x55f8d0
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x560270
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x200
or eax, 0
jne 0x560270
push eax
push ecx
push ebx
call fcn.00543e90
add esp, 0xc
mov edx, eax
cmp byte [ebx + 0x57], 0
mov dword [esp + 0x48], edx
jne 0x560262
mov ebx, dword [esp + 0xd0]
mov eax, dword [esp + 0x40]
inc eax
mov ebp, dword [ebx + 0x38]
dec ebp
mov dword [ebx + 0x34], eax
mov dword [esp + 0x7c], ebp
lea ecx, [ebp - 1]
mov dword [ebx + 0x38], ecx
mov ebx, dword [edx]
dec ebx
mov dword [esp + 0x90], ecx
test ebx, ebx
jle 0x5601be
mov edi, dword [esp + 0x7c]
lea ebp, [ebx*4 + 2]
mov esi, dword [esp + 0xd0]
add ebp, ebx
lea ebp, [edx + ebp*4]
push 0
push edi
push dword [ebp]
push esi
call fcn.00542df0
dec ebx
lea ebp, [ebp - 0x14]
add esp, 0x10
test ebx, ebx
jg 0x560194
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x8c]
mov ebp, dword [esp + 0x7c]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x90]
push 0x10
push ebx
push dword [edx + 8]
push dword [esp + 0xdc]
call fcn.00543200
mov ecx, dword [esi + 0xc]
add esp, 0x10
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x5601f4
push ebp
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x5601fc
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebp*4], eax
mov eax, dword [esp + 0xd0]
mov dword [eax + 0x34], 0
mov eax, dword [esp + 0x4c]
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x18]
call fcn.00557700
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
push esi
call fcn.00510b30
mov ecx, dword [esi + 0xc]
add esp, 0x2c
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x560252
push ebx
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x56025a
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebx*4], eax
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x48]
test edx, edx
je 0x560270
push edx
push ebx
call fcn.004ec290
add esp, 8
cmp byte [esp + 0x5b], 0x71
mov ebp, dword [esp + 0x4c]
je 0x560b9f
mov ebx, dword [ebp + 8]
mov dword [esp + 0x2c], ebx
test ebx, ebx
je 0x560b9f
mov eax, dword [esp + 0x38]
mov ecx, 8
sub ecx, eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x54]
nop
dec dword [eax + 0x38]
mov ebp, dword [eax + 0x38]
cmp ecx, ebx
je 0x560b88
push dword [esp + 0x5c]
lea ecx, [esp + 0x64]
push dword [esp + 0x78]
push ecx
push 0
push 0
push dword [esp + 0x54]
push ebx
push eax
call fcn.00551830
mov edx, dword [esp + 0xb0]
add esp, 0x20
mov ecx, dword [edi]
add edx, dword [esp + 0x20]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x74], ebx
cmp dword [eax], ecx
jg 0x56030c
push 0
push 1
push edx
push 0x56
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560341
mov esi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x1c]
movzx edx, word [ebx + 0x34]
mov ebx, dword [edi]
cmp dword [eax], ebx
jg 0x560368
push edx
push dword [esp + 0x60]
push ebp
push dword [esp + 0x2c]
push 0x1d
push esi
call fcn.004d8850
add esp, 0x18
mov ebx, eax
jmp 0x56039c
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x5c]
mov dword [eax + ecx*4 + 0xc], edi
mov edi, dword [esp + 0x8c]
mov dword [eax + ecx*4], 0xfd1d
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0x10], edx
push 0
push str.row
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x5603d5
push 3
push 3
push 7
push 0x6f
push esi
call fcn.0050f290
mov ebp, dword [esp + 0x2c]
add esp, 0x14
jmp 0x56040b
mov ebp, dword [esp + 0x18]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push str._missing_from_index
push 0
push 4
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x560440
push 3
push 3
push 4
push 0x6f
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560472
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov ebp, dword [esp + 0x2c]
push 0
push dword [ebp]
push 0
push 4
push 0
push 0x75
push esi
call fcn.005704c0
mov ecx, dword [edi]
add esp, 0x1c
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jg 0x5604b0
push 3
push 3
push 4
push 0x6f
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x5604e5
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.00510b30
mov ecx, dword [esi]
add esp, 4
mov edx, dword [edi]
mov dword [esp + 0x7c], eax
cmp byte [ecx + 0x57], 0
je 0x560507
mov ebx, dword [esp + 0x18]
mov ecx, 0x63d108
jmp 0x560513
lea ecx, [ebx + ebx*4]
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x4c]
mov dword [ecx + 8], edx
test byte [eax + 0x1c], 0x80
jne 0x560681
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x560546
push 0
push 3
push dword [esp + 0x28]
push 0x8e
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560577
mov edx, dword [esp + 0x20]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx]
mov dword [eax + ecx*4], 0x8e
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x5c]
movzx eax, word [ebp + 0x34]
dec edx
mov ebx, dword [edi]
add edx, eax
mov eax, dword [esp + 0x1c]
cmp dword [eax], ebx
jg 0x5605a0
push edx
push 0
push 3
push 0x35
push esi
call fcn.0050f290
add esp, 0x14
mov ebx, eax
jmp 0x5605d2
mov ebp, dword [esp + 0x18]
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ebp, dword [esp + 0x18]
push 0
push str.rowid_not_at_end_of_record_for_row
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x56060b
push 3
push 3
push 7
push 0x6f
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x56063d
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push str._of_index
push 0
push 4
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0xa4]
dec eax
push eax
push esi
call fcn.0057a930
mov eax, dword [esi]
add esp, 0x24
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x560675
mov eax, 0x63d108
jmp 0x56067e
mov eax, dword [ebp]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x2c]
xor ecx, ecx
xor ebp, ebp
xor ebx, ebx
cmp cx, word [eax + 0x32]
jae 0x5608ac
nop word [eax + eax]
mov eax, dword [eax + 0x20]
cmp dword [eax + ebx*4], str.BINARY
je 0x560762
test ebp, ebp
jne 0x5606c1
mov eax, dword [esp + 0xd0]
dec dword [eax + 0x38]
mov ebp, dword [eax + 0x38]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x5606df
push 3
push ebx
push dword [esp + 0x28]
push 0x5e
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560710
mov edx, dword [esp + 0x20]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x5c]
mov ecx, dword [edi]
add edx, ebx
cmp dword [eax], ecx
jg 0x560731
push edx
push ebp
push 3
push 0x34
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560762
mov esi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x34
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x2c]
inc ebx
movzx eax, word [eax + 0x32]
cmp ebx, eax
mov eax, dword [esp + 0x2c]
jl 0x5606a0
test ebp, ebp
je 0x5608a8
mov eax, dword [esp + 0x1c]
mov ebx, dword [edi]
cmp dword [eax], ebx
jg 0x56079e
push 0
push 0
push 0
push 9
push esi
call fcn.0050f290
add esp, 0x14
mov ebx, eax
jmp 0x5607d3
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x5607ed
push ebp
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x5607f5
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebp*4], eax
push 0
push str.row
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x56082e
push 3
push 3
push 7
push 0x6f
push esi
call fcn.0050f290
mov ebp, dword [esp + 0x2c]
add esp, 0x14
jmp 0x560864
mov ebp, dword [esp + 0x18]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push str._values_differ_from_index
push 0
push 4
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0xa4]
dec eax
push eax
push esi
call fcn.0057a930
mov eax, dword [esi]
add esp, 0x24
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x56089c
mov eax, 0x63d108
jmp 0x5608a5
mov eax, dword [ebp]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x2c]
cmp byte [eax + 0x36], 0
je 0x560b20
mov ecx, dword [esp + 0xd0]
xor ebp, ebp
dec dword [ecx + 0x38]
mov edx, dword [ecx + 0x38]
xor ecx, ecx
mov dword [esp + 0x48], edx
cmp cx, word [eax + 0x32]
jae 0x56095d
mov ebx, dword [esp + 0x5c]
jmp 0x5608e4
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
movsx ecx, word [eax + ebp*2]
test ecx, ecx
js 0x5608ff
mov eax, dword [esp + 0x4c]
add ecx, ecx
mov eax, dword [eax + 4]
test byte [eax + ecx*8 + 4], 0xf
jne 0x56094f
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x56091e
push 0
push edx
push ebx
push 0x32
push esi
call fcn.0050f290
mov edx, dword [esp + 0x5c]
add esp, 0x14
jmp 0x56094f
mov esi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x2c]
inc ebp
inc ebx
movzx eax, word [eax + 0x32]
cmp ebp, eax
jl 0x5608e0
mov eax, dword [esp + 0x1c]
mov ebp, dword [edi]
cmp dword [eax], ebp
jg 0x560982
push 0
push 0
push dword [esp + 0x28]
push 0x27
push esi
call fcn.0050f290
mov ebx, dword [esp + 0x2c]
add esp, 0x14
mov ebp, eax
jmp 0x5609bd
mov ebx, dword [esp + 0x18]
lea eax, [ebp + 1]
mov edx, dword [esp + 0x20]
lea ecx, [ebp*4]
mov dword [edi], eax
add ecx, ebp
mov eax, dword [ebx]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x5609dd
mov ebx, dword [esp + 0x48]
push 0
push ebx
push 0
push 9
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560a0e
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx]
mov ebx, dword [esp + 0x48]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x560a23
mov ebp, dword [esp + 0x18]
mov eax, 0x63d108
jmp 0x560a36
lea ecx, [ebp*4]
add ecx, ebp
mov ebp, dword [esp + 0x18]
mov eax, dword [ebp]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x2c]
mov ecx, dword [edi]
movzx edx, word [eax + 0x32]
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jg 0x560a62
push edx
push dword [esp + 0x60]
push ebx
push dword [esp + 0x2c]
push 0x29
push esi
call fcn.004d8850
add esp, 0x18
jmp 0x560a8c
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov ebp, dword [esp + 0x20]
mov dword [eax + ecx*4 + 4], ebp
mov ebp, dword [esp + 0x5c]
mov dword [eax + ecx*4], 0xfd29
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], ebp
mov dword [eax + ecx*4 + 0x10], edx
push 0
push str.non_unique_entry_in_index
push 0
push 3
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x560ac6
push 0
push dword [esp + 0x8c]
push 0
push 9
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560afe
mov edx, dword [esp + 0x88]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x560b18
push ebx
push esi
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x560b20
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebx*4], eax
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x560b31
mov eax, 0x63d108
jmp 0x560b41
mov eax, dword [esp + 0x7c]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0xd0]
test edx, edx
je 0x560b80
mov ebx, dword [eax + 8]
not edx
mov ecx, dword [ebx + 0xc]
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x560b70
push edx
push ebx
push ecx
call fcn.00529000
add esp, 0xc
jmp 0x560b79
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0xd0]
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x54]
mov ebx, dword [ebx + 0x14]
inc dword [esp + 0x20]
mov dword [esp + 0x2c], ebx
test ebx, ebx
jne 0x5602b0
mov ebp, dword [esp + 0x4c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x560bc5
mov edx, dword [esp + 0x78]
push 0
push edx
push dword [esp + 0x48]
push 0x27
push esi
call fcn.0050f290
mov ebx, dword [esp + 0x2c]
add esp, 0x14
jmp 0x560bfa
mov ebx, dword [esp + 0x18]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x40]
lea ecx, [ecx + ecx*4]
mov dword [edi], eax
mov eax, dword [ebx]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x78]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x560c0b
mov eax, 0x63d110
jmp 0x560c1a
mov eax, dword [esp + 0x78]
lea ecx, [eax + eax*4]
mov eax, dword [ebx]
lea eax, [eax + ecx*4]
add eax, 0xfffffff4
cmp byte [esp + 0x5b], 0x71
mov dword [eax], edx
je 0x55f3cd
push 0
push str.wrong__of_entries_in_index
push 0
push 2
push 0
push 0x75
push esi
call fcn.005704c0
mov ebp, dword [ebp + 8]
add esp, 0x1c
test ebp, ebp
je 0x560dd2
mov eax, dword [esp + 0x54]
mov edx, 8
mov dword [esp + 0x48], edx
cmp eax, ebp
je 0x560dc2
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
add ebx, 0xfffffff8
mov ecx, dword [edi]
add ebx, edx
cmp dword [eax], ecx
jg 0x560c88
push 0
push 3
push ebx
push 0x62
push esi
call fcn.0050f290
mov edx, dword [esp + 0x5c]
add esp, 0x14
jmp 0x560cbd
mov esi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x62
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x1c]
mov ebx, dword [edi]
cmp dword [eax], ebx
jg 0x560cdb
push 3
push 0
push edx
push 0x35
push esi
call fcn.0050f290
add esp, 0x14
mov ebx, eax
jmp 0x560d10
mov esi, dword [esp + 0x44]
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [edi]
test eax, eax
jle 0x560d29
lea ecx, [eax + eax*4]
mov edx, 0x90
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
push 0
push dword [ebp]
push 0
push 4
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x560d5c
push 3
push 2
push 4
push 0x6f
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x560d91
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 2
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.00510b30
mov eax, dword [esi]
add esp, 4
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x560dab
mov eax, 0x63d108
jmp 0x560db7
mov eax, dword [esp + 0x18]
lea ecx, [ebx + ebx*4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x54]
mov ebp, dword [ebp + 0x14]
inc edx
mov dword [esp + 0x48], edx
test ebp, ebp
jne 0x560c57
mov eax, dword [esp + 0x54]
test eax, eax
je 0x55f3cd
movzx eax, word [eax + 0x32]
mov ebx, dword [esp + 0xd0]
cmp eax, 1
jne 0x560e17
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x55f3d4
mov al, byte [ebx + 0x13]
cmp al, 8
jae 0x55f3d4
movzx eax, al
mov dword [ebx + eax*4 + 0xa4], ecx
inc byte [ebx + 0x13]
jmp 0x55f3d4
cmp eax, dword [ebx + 0x1c]
jle 0x55f3d4
mov dword [ebx + 0x1c], eax
mov eax, dword [esp + 0x24]
mov dword [ebx + 0x20], eax
jmp 0x55f3d4
mov ebx, dword [esp + 0xd0]
jmp 0x55f3d8
mov ebx, dword [esp + 0xd0]
jmp 0x55f3ef
mov ebx, dword [esp + 0xd0]
jmp 0x55f3f3
test edx, edx
jne 0x560e9d
mov ebx, dword [esp + 0xd0]
push ebx
call fcn.00562a10
add esp, 4
test eax, eax
jne 0x55cd8f
mov eax, dword [ebx]
movzx eax, byte [eax + 0x54]
push dword [eax*8 + 0x609708]
push esi
call fcn.0052b330
push dword [esp + 0x44]
push dword [esp + 0x1c]
call fcn.0053c090
add esp, 0x10
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xbc
ret
mov ebp, dword [esp + 0x10]
test byte [ebp + 0x18], 0x40
jne 0x55cd93
mov eax, dword [str.UTF8]
mov esi, 0x609708
test eax, eax
je 0x560f12
nop dword [eax]
push eax
push edx
call fcn.0056ab20
add esp, 8
test eax, eax
je 0x560ede
mov eax, dword [esi + 8]
add esi, 8
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x560ec0
jmp 0x560f12
mov cl, byte [esi + 4]
mov edx, 2
movzx eax, cl
test cl, cl
cmovne edx, eax
mov eax, dword [ebp + 0x10]
mov byte [esp + 0x60], dl
push dword [esp + 0x60]
mov eax, dword [eax + 0xc]
push ebp
mov byte [eax + 0x4d], dl
call fcn.005690e0
mov eax, dword [esi]
add esp, 8
test eax, eax
jne 0x55cd93
push dword [esp + 0x14]
push str.unsupported_encoding:__s
push dword [esp + 0xd8]
call fcn.0053e8f0
push dword [esp + 0x48]
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x28]
add esp, 0x14
jmp 0x55cda8
mov edi, dword [ebp + 8]
push ebx
push esi
call fcn.0057ec40
add esp, 8
cmp dword [esp + 0x14], 0
je 0x560fd9
test byte [ebp + 5], 8
jne 0x560fd9
push 0
push 0x609750
push 2
push esi
call fcn.005705f0
mov esi, eax
mov dword [esp + 0x48], 0
lea eax, [esp + 0x48]
push eax
push dword [esp + 0x28]
mov dword [esi + 4], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], edi
call fcn.00552220
mov eax, dword [esp + 0x50]
add esp, 0x18
mov ebp, dword [esp + 0x10]
mov dword [esi + 0x20], eax
mov eax, 1
mov word [esi + 0x16], ax
cmp edi, eax
jne 0x55cd93
mov eax, dword [ebp + 0x20]
and eax, 0x10000000
or eax, 0
je 0x55cd93
push dword [esp + 0x3c]
mov byte [esi + 0x14], 0xbb
push ebp
call fcn.0053c090
mov eax, dword [esp + 0x1c]
add esp, 8
jmp 0x55cda8
push 0
push 0x6096fc
push 3
push esi
call fcn.005705f0
push esi
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x20], edi
call fcn.0057dab0
add esp, 0x14
jmp 0x55cd8f
mov eax, dword [esp + 0xd0]
xor ebx, ebx
mov dword [eax + 0x2c], 1
nop
cmp ebx, 0x29
ja 0x56108a
mov eax, dword [ebx*4 + 0x604030]
inc ebx
test eax, eax
je 0x56108a
push 0
push eax
push 0
push 1
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x561056
push 0
push 1
push 1
push 0x54
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x561010
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x561010
push esi
call fcn.0057dab0
jmp 0x55cd8c
mov eax, dword [esp + 0xd8]
mov ebp, 0xc
cmp dword [eax], 0
cmovne ebp, ebx
xor edi, edi
test edx, edx
je 0x5610f9
push str.full
push edx
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x5610c4
lea edi, [eax + 1]
jmp 0x5610f9
push str.restart
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
test eax, eax
jne 0x5610de
lea edi, [eax + 2]
jmp 0x5610f9
push str.truncate
push dword [esp + 0x18]
call fcn.0056ab20
add esp, 8
mov ecx, 3
test eax, eax
cmove edi, ecx
mov eax, dword [esp + 0xd0]
push 1
push edi
push ebp
push 3
push esi
mov dword [eax + 0x2c], 3
call fcn.00570460
push 3
push 1
push 0x54
push esi
call fcn.00570400
add esp, 0x24
jmp 0x55cd8f
test edx, edx
je 0x561151
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0
push eax
push edx
call fcn.00552220
push dword [esp + 0x40]
mov ebp, dword [esp + 0x1c]
push ebp
call fcn.004c6340
add esp, 0x10
jmp 0x561155
mov ebp, dword [esp + 0x10]
cmp dword [ebp + 0x110], 0x580910
jne 0x561178
mov eax, dword [ebp + 0x114]
cdq
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd93
xor eax, eax
cdq
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd93
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x5611a0
push eax
call dword [0x635d70]
add esp, 4
cmp byte [ebp + 0x5f], 0
jne 0x5611af
push ebp
call fcn.004ded10
add esp, 4
xor esi, esi
cmp dword [ebp + 0x14], esi
jle 0x5611eb
xor edi, edi
nop dword [eax + eax]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + edi + 4]
test eax, eax
je 0x5611e2
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0xe4]
push dword [eax + 0x34]
call dword [0x635db4]
add esp, 4
inc esi
add edi, 0x10
cmp esi, dword [ebp + 0x14]
jl 0x5611c0
cmp byte [ebp + 0x5f], 0
jne 0x5611fa
push ebp
call fcn.004df0e0
add esp, 4
mov eax, dword [ebp + 0xc]
jmp 0x55da2a
test edx, edx
je 0x56122f
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0
push eax
push edx
call fcn.00552220
mov ecx, dword [esp + 0x40]
add esp, 8
mov dword [esp + 0x28], ecx
test cl, 2
je 0x55cd8f
jmp 0x561237
mov dword [esp + 0x28], 0xfffe
cmp dword [esp + 0x40], 0
mov ebp, dword [esp + 0xd0]
mov edx, dword [ebp + 0x28]
mov dword [esp + 0x30], edx
lea eax, [edx + 1]
mov dword [ebp + 0x28], eax
je 0x561258
mov dword [esp + 0x34], ebx
jmp 0x56126c
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
dec eax
mov dword [esp + 0x34], eax
cmp ebx, eax
jg 0x561497
mov eax, dword [esp + 0x24]
mov ecx, ebx
mov ebx, 1
rol ebx, cl
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x38], ebx
cmp dword [esp + 0x6c], 1
je 0x56147c
mov eax, dword [ebp + 0x80]
mov ecx, ebp
test eax, eax
cmovne ecx, eax
mov eax, dword [ecx + 0x5c]
test eax, ebx
jne 0x5612aa
mov ebp, dword [esp + 0x6c]
bts eax, ebp
mov dword [ecx + 0x5c], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 0xc]
mov ebp, dword [eax + 0x10]
test ebp, ebp
je 0x56146d
nop dword [eax]
nop dword [eax + eax]
mov ebx, dword [ebp + 8]
test dword [ebx + 0x1c], 0x100
je 0x56145e
mov ax, word [ebx + 0x26]
add ax, 0x2e
movzx ecx, ax
mov eax, dword [ebx + 8]
mov dword [esp + 0x60], ecx
test eax, eax
je 0x561307
test byte [eax + 0x38], 0x80
je 0x561394
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x5612f6
test cx, cx
je 0x561394
push 0x70
push ebx
push dword [esp + 0x74]
push edx
push dword [esp + 0xe0]
call fcn.005587a0
mov eax, dword [esp + 0x74]
add esp, 0x14
mov esi, dword [esp + 0x1c]
mov ecx, dword [edi]
movsx edx, ax
mov eax, dword [esp + 0x28]
and eax, 1
add eax, 2
add eax, ecx
cmp dword [esi], ecx
mov esi, dword [esp + 0x44]
mov dword [esp + 0x60], eax
jg 0x56135f
push edx
push eax
push dword [esp + 0x38]
push 0x21
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x561394
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edi, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x60]
mov dword [eax + ecx*4 + 8], edi
mov edi, dword [esp + 0x8c]
mov dword [eax + ecx*4], 0x21
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x10]
push dword [ebx]
mov ecx, dword [esp + 0x28]
mov eax, dword [edx + 0x10]
push dword [eax + ecx]
push str.ANALYZE___w_.__w_
push edx
call fcn.00557700
add esp, 0x10
mov edx, eax
test byte [esp + 0x28], 1
je 0x561443
mov ebx, dword [esp + 0xd0]
mov cl, byte [ebx + 0x13]
test cl, cl
jne 0x5613d5
inc dword [ebx + 0x2c]
mov ebx, dword [ebx + 0x2c]
jmp 0x5613e4
dec cl
movzx eax, cl
mov byte [ebx + 0x13], cl
mov ebx, dword [ebx + eax*4 + 0xa4]
push 0xfffffffffffffffa
push edx
push 0
push ebx
push 0
push 0x75
push esi
call fcn.005704c0
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x561413
push 0
push 1
push ebx
push 0x54
push esi
call fcn.0050f290
add esp, 0x14
jmp 0x56145a
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x56145a
push 0xfffffffffffffffa
push edx
push 0
push 0
push 0
push 0x94
push esi
call fcn.005704c0
add esp, 0x1c
mov edx, dword [esp + 0x30]
mov ebp, dword [ebp]
test ebp, ebp
jne 0x5612d0
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xd0]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x24]
inc dword [esp + 0x6c]
add eax, 0x10
rol ebx, 1
mov dword [esp + 0x24], eax
mov dword [esp + 0x38], ebx
cmp dword [esp + 0x6c], ecx
jle 0x561281
push 0xa6
push esi
call fcn.00570350
add esp, 8
jmp 0x55cd8f
test edx, edx
je 0x5614d0
lea eax, [esp + 0x60]
push eax
push edx
call fcn.0053c670
add esp, 8
test eax, eax
jne 0x5614d0
push dword [esp + 0x64]
push dword [esp + 0x64]
call fcn.004bf400
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.004bf400
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0x14
jmp 0x55cd8f
test edx, edx
je 0x561539
lea eax, [esp + 0x60]
push eax
push edx
call fcn.0053c670
add esp, 8
test eax, eax
jne 0x561539
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.004bf510
mov edi, dword [esp + 0x6c]
add esp, 8
mov ebx, eax
test edi, edi
jl 0x561539
mov ecx, dword [esp + 0x60]
jg 0x56151f
test ecx, ecx
je 0x561539
mov eax, ebx
or eax, edx
je 0x56152f
cmp edx, edi
jl 0x561539
jg 0x56152f
cmp ebx, ecx
jbe 0x561539
push edi
push ecx
call fcn.004bf510
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.004bf510
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0x14
jmp 0x55cd8f
test edx, edx
je 0x56158f
lea eax, [esp + 0x60]
push eax
push edx
call fcn.0053c670
add esp, 8
test eax, eax
jne 0x56158f
cmp dword [esp + 0x64], eax
jl 0x56158f
mov eax, dword [esp + 0x60]
jg 0x561578
test eax, eax
jb 0x56158f
mov ebp, dword [esp + 0x10]
and eax, 0x7fffffff
push eax
push 0xb
push ebp
call fcn.004d7ae0
add esp, 0xc
jmp 0x561593
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0xa4]
cdq
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd93
test edx, edx
je 0x5615e1
lea eax, [esp + 0x60]
push eax
push edx
call fcn.0053c670
add esp, 8
test eax, eax
jne 0x5615e1
cmp dword [esp + 0x64], eax
jl 0x5615e1
mov eax, dword [esp + 0x60]
jg 0x5615d0
test eax, eax
jb 0x5615e1
mov ebp, dword [esp + 0x10]
and eax, 0x7fffffff
mov dword [ebp + 0x1f0], eax
jmp 0x5615e5
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0x1f0]
cdq
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd93
test edx, edx
je 0x561689
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0
push eax
push edx
call fcn.00552220
mov edi, dword [esp + 0x40]
add esp, 8
mov ebp, dword [esp + 0x10]
test edi, edi
jle 0x56163d
push ebp
push 0x58a830
push ebp
call fcn.004d5e90
add esp, 0xc
mov dword [ebp + 0x1f4], edi
jmp 0x56168d
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x56164e
push eax
call dword [0x635d70]
add esp, 4
mov eax, dword [ebp + 0xc]
mov dword [ebp + 0x1c0], 0
mov dword [ebp + 0x1c4], 0
mov dword [ebp + 0x1c8], 0
mov dword [ebp + 0x1f4], 0
test eax, eax
je 0x56168d
push eax
call dword [0x635d78]
add esp, 4
jmp 0x56168d
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0x1f4]
cdq
push edx
push eax
push esi
call fcn.0052b2a0
add esp, 0xc
jmp 0x55cd93
mov ebp, edx
jmp 0x55cd93