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

Disassembly:
sub esp, 0xa4
mov eax, dword [0x6651c0]
xor eax, esp
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xac]
push ebp
push esi
mov esi, dword [esp + 0xb0]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xb8]
push edi
mov ebp, dword [esi]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc0]
push esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x88], eax
mov dword [esp + 0x6c], ebp
call fcn.0056a013
mov edi, eax
mov dword [esp + 0x74], edi
pop ecx
test edi, edi
je 0x57297b
push ebx
xor eax, eax
xor ebx, ebx
push ebx
inc eax
push eax
push eax
push 0xa6
push edi
call fcn.0057b786
lea eax, [esp + 0x84]
mov dword [esi + 0x2c], 2
push eax
push dword [esp + 0x50]
push dword [esp + 0x38]
push esi
call fcn.0057936e
add esp, 0x24
mov dword [esp + 0x28], eax
test eax, eax
js 0x57297a
mov ecx, eax
shl ecx, 4
add ecx, dword [ebp + 0x10]
mov dword [esp + 0x2c], ecx
cmp eax, 1
jne 0x56fac6
push esi
call fcn.0056d738
pop ecx
test eax, eax
jne 0x57297a
push dword [esp + 0x70]
push ebp
call fcn.0056d326
mov dword [esp + 0x98], eax
pop ecx
pop ecx
test eax, eax
je 0x57297a
push dword [esp + 0x88]
cmp dword [esp + 0xcc], ebx
je 0x56fb0a
push 0x65d968
push ebp
call fcn.0056cc7e
mov esi, eax
add esp, 0xc
mov dword [esp + 0x88], esi
jmp 0x56fb1b
push ebp
call fcn.0056d326
pop ecx
pop ecx
mov esi, eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x38]
cmp dword [eax + 4], ebx
jbe 0x56fb30
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [esp + 0x24], eax
jmp 0x56fb36
mov eax, ebx
mov dword [esp + 0x24], ebx
push eax
push esi
push dword [esp + 0x98]
push 0x13
push dword [esp + 0x24]
call fcn.00559d89
add esp, 0x14
test eax, eax
jne 0x572957
mov eax, dword [esp + 0x90]
mov dword [esp + 0xa4], eax
lea eax, [esp + 0xa0]
push eax
push 0xe
push dword [esp + 0x2c]
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb4], esi
mov dword [esp + 0xb8], ebx
push ebp
mov dword [ebp + 0x1c8], ebx
call fcn.00525f5c
add esp, 0x10
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x56fc51
xor esi, esi
inc esi
push esi
push edi
call fcn.00584bc2
push 0xffffffffffffffff
push dword [esp + 0xac]
push ebx
push ebx
push edi
call fcn.00584b84
mov eax, dword [esp + 0xbc]
add esp, 0x1c
mov dword [esp + 0x10], eax
test eax, eax
je 0x572957
push eax
push esi
push edi
call fcn.00582f5d
push ebx
xor eax, eax
inc eax
push eax
push eax
push 0x54
push edi
call fcn.0057b786
mov eax, dword [esp + 0xc0]
add esp, 0x20
mov dword [esp + 0x10], eax
test eax, eax
je 0x572957
cmp dword [0x6631a8], ebx
je 0x56fc44
mov ecx, dword [0x666550]
test ecx, ecx
je 0x56fc1c
push ecx
call dword [0x6631f8]
mov eax, dword [esp + 0x14]
pop ecx
push eax
call dword [0x6631d4]
sub dword [0x6664e8], eax
push dword [esp + 0x14]
dec dword [0x66650c]
call dword [0x6631cc]
mov eax, dword [0x666550]
pop ecx
jmp 0x570566
push eax
call dword [0x6631cc]
pop ecx
jmp 0x572957
cmp eax, 0xc
je 0x56fce8
cmp dword [esp + 0xa0], ebx
je 0x56fcd5
push dword [esp + 0xa0]
push 0x65a88c
push dword [esp + 0x1c]
call fcn.00561f37
mov esi, dword [esp + 0xac]
add esp, 0xc
test esi, esi
je 0x56fcd5
cmp dword [0x6631a8], ebx
je 0x56fccd
mov eax, dword [0x666550]
test eax, eax
je 0x56fc9f
push eax
call dword [0x6631f8]
pop ecx
push esi
call dword [0x6631d4]
sub dword [0x6664e8], eax
dec dword [0x66650c]
push esi
call dword [0x6631cc]
mov eax, dword [0x666550]
pop ecx
pop ecx
test eax, eax
je 0x56fcd5
push eax
call dword [0x663200]
jmp 0x56fcd4
push esi
call dword [0x6631cc]
pop ecx
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ecx
jmp 0x572957
push dword [esp + 0x90]
call fcn.005516a8
pop ecx
mov ecx, eax
mov dword [esp + 0x34], ecx
test ecx, ecx
je 0x572957
test byte [ecx + 5], 1
je 0x56fd1f
push dword [esp + 0x14]
call fcn.005735fc
pop ecx
test eax, eax
jne 0x572957
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + 5]
test al, 2
jne 0x56fd3b
test al, 4
je 0x56fd2e
test esi, esi
jne 0x56fd3b
push ecx
push edi
call fcn.00557458
pop ecx
pop ecx
mov ecx, dword [esp + 0x34]
movzx eax, byte [ecx + 4]
dec eax
cmp eax, 0x2a
ja case.0x56fd49.5
jmp dword [eax*4 + 0x572995]
push dword [esp + 0x28]
push edi
call fcn.00585486
pop ecx
pop ecx
test esi, esi
jne 0x56fd8f
mov eax, dword [esp + 0x14]
push ebx
push 0x657ec4
push 9
add dword [eax + 0x2c], 2
push edi
call fcn.0057b8b9
mov ecx, dword [esp + 0x38]
add esp, 0x10
mov dword [eax + 4], ecx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x7c], 0xfffff830
jmp 0x572957
push esi
call fcn.00559afb
push eax
call fcn.00557839
push dword [esp + 0x30]
mov esi, eax
push ebx
push dword [esp + 0x24]
call fcn.0055a6a1
push esi
push 3
push dword [esp + 0x44]
push 0x64
push edi
call fcn.0057b786
mov ecx, dword [esp + 0x54]
mov eax, dword [ecx + 0xc]
mov dword [eax + 0x50], esi
mov eax, dword [ecx + 0xc]
push dword [eax + 0x50]
push dword [ecx + 4]
call fcn.0055cd4c
add esp, 0x30
jmp 0x572957
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
mov dword [esp + 0x1c], eax
test esi, esi
jne 0x56fdfa
test eax, eax
je 0x56fdf3
mov eax, dword [eax + 4]
mov ebx, dword [eax + 0x24]
mov eax, ebx
jmp 0x57294b
push esi
call fcn.00559afb
push ebx
push ebx
push eax
push dword [esp + 0x2c]
mov dword [ebp + 0x64], eax
call fcn.0055cd88
add esp, 0x14
cmp eax, 7
jne 0x572957
push ebp
call fcn.0056d4a3
jmp 0x56fc4b
mov eax, dword [esp + 0x2c]
or ecx, 0xffffffff
mov dword [esp + 0x18], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x1c], eax
test esi, esi
je 0x56fe62
push str.fast
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x56fe52
push 2
pop ecx
jmp 0x56fe5e
push ebx
push esi
call fcn.00569515
pop ecx
pop ecx
movzx ecx, al
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x38]
cmp dword [eax + 4], ebx
jne 0x56fea3
test ecx, ecx
js 0x56fea3
cmp dword [ebp + 0x14], ebx
jle 0x56fea3
mov edi, dword [esp + 0x18]
mov esi, ebx
mov dword [esp + 0x54], 0x10
mov eax, dword [ebp + 0x10]
push edi
push dword [esi + eax + 4]
call fcn.0055ccae
add esi, dword [esp + 0x5c]
inc ebx
pop ecx
pop ecx
cmp ebx, dword [ebp + 0x14]
jl 0x56fe82
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 0x18]
push ecx
push dword [esp + 0x20]
call fcn.0055ccae
cdq
push edx
push eax
push edi
call fcn.005557d7
add esp, 0x14
jmp 0x572957
push dword [esp + 0x28]
xorps xmm0, xmm0
push dword [esp + 0x18]
movlpd qword [esp + 0x4c], xmm0
call fcn.0055e161
mov eax, dword [esp + 0x98]
pop ecx
pop ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x2c]
inc edx
mov dword [ecx + 0x2c], edx
movzx eax, byte [eax]
mov dword [esp + 0x10], edx
cmp byte [eax + 0x657038], 0x70
jne 0x56ff11
push edx
push dword [esp + 0x2c]
push 0xb2
push edi
call fcn.0057b76b
mov esi, dword [esp + 0x20]
add esp, 0x10
jmp 0x56ff75
test esi, esi
je 0x56ff50
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
pop ecx
pop ecx
test eax, eax
jne 0x56ff50
mov eax, dword [esp + 0x44]
cmp dword [esp + 0x48], ebx
jg 0x56ff43
jl 0x56ff50
cmp eax, ebx
jb 0x56ff50
cmp dword [esp + 0x48], ebx
jl 0x56ff5d
jg 0x56ff43
cmp eax, 0xfffffffe
jbe 0x56ff5d
push 0xfffffffffffffffe
pop eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ebx
jmp 0x56ff5d
xorps xmm0, xmm0
movlpd qword [esp + 0x44], xmm0
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x10]
push eax
push esi
push dword [esp + 0x30]
push 0xb3
push edi
call fcn.0057b786
add esp, 0x14
push ebx
push 1
push esi
push 0x54
push edi
call fcn.0057b786
jmp 0x56feb6
or ecx, 0xffffffff
mov eax, str.exclusive
test esi, esi
je 0x56ffbd
push eax
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x56ffa7
xor edx, edx
inc edx
or ecx, 0xffffffff
jmp 0x56ffbf
push str.normal
push esi
call fcn.005781b4
pop ecx
pop ecx
or ecx, 0xffffffff
mov edx, ebx
test eax, eax
je 0x56ffbf
mov edx, ecx
mov eax, dword [esp + 0x38]
mov dword [esp + 0x18], edx
cmp dword [eax + 4], ebx
jne 0x570014
cmp edx, ecx
jne 0x56ffd6
movzx eax, byte [ebp + 0x59]
jmp 0x570028
push 2
pop ebx
cmp dword [ebp + 0x14], ebx
jle 0x570011
push 0x20
mov dword [esp + 0x58], 0x10
mov edi, dword [esp + 0x58]
pop esi
mov eax, dword [ebp + 0x10]
push edx
mov eax, dword [esi + eax + 4]
mov eax, dword [eax + 4]
push dword [eax]
call fcn.0056e0e9
mov edx, dword [esp + 0x20]
inc ebx
pop ecx
add esi, edi
pop ecx
cmp ebx, dword [ebp + 0x14]
jl 0x56ffed
mov edi, dword [esp + 0x74]
mov byte [ebp + 0x59], dl
mov eax, dword [esp + 0x2c]
push edx
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax]
call fcn.0056e0e9
pop ecx
pop ecx
cmp eax, 1
mov ecx, str.exclusive
mov eax, str.normal
cmove eax, ecx
push eax
push edi
call fcn.00555804
pop ecx
jmp 0x56fc4b
test esi, esi
je 0x5700a1
push esi
call fcn.00578223
pop ecx
mov ecx, eax
mov dword [esp + 0x10], ebx
mov dword [esp + 0x1c], ecx
mov eax, ebx
cmp eax, 6
je 0x5700a1
mov eax, dword [eax*4 + 0x657e98]
test eax, eax
je 0x5700a1
push ecx
push eax
push esi
call fcn.00528757
add esp, 0xc
test eax, eax
je 0x57008a
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x10], eax
jmp 0x57005c
mov esi, dword [esp + 0x10]
mov eax, esi
cmp esi, 2
jne 0x5700bc
mov eax, dword [ebp + 0x20]
and eax, 0x10000000
or eax, ebx
je 0x5700c3
or esi, 0xffffffff
mov edx, dword [esp + 0x38]
cmp dword [edx + 4], ebx
jne 0x5700c7
mov ecx, ebx
mov dword [edx + 4], 1
mov dword [esp + 0x28], ecx
jmp 0x5700cb
mov esi, eax
cmp eax, 0xffffffff
je 0x5700a4
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x28]
mov eax, dword [ebp + 0x14]
sub eax, 1
mov dword [esp + 0x20], eax
js 0x57013a
shl eax, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x54], 0x10
mov eax, dword [ebp + 0x10]
mov ebp, dword [esp + 0x10]
cmp dword [eax + ebp + 4], ebx
mov ebp, dword [esp + 0x6c]
mov eax, dword [esp + 0x20]
je 0x570121
cmp eax, ecx
je 0x570104
cmp dword [edx + 4], ebx
jne 0x570121
push eax
push edi
call fcn.00585486
push esi
push 1
push dword [esp + 0x30]
push 4
push edi
call fcn.0057b786
mov eax, dword [esp + 0x3c]
add esp, 0x1c
mov ecx, dword [esp + 0x54]
dec eax
sub dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x20], eax
test eax, eax
jns 0x5700e6
xor eax, eax
push ebx
inc eax
push eax
push eax
jmp 0x56ff79
mov eax, dword [esp + 0x2c]
or ebx, 0xffffffff
mov ecx, ebx
push 0xfffffffffffffffe
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
mov dword [esp + 0x4c], ecx
pop eax
mov dword [esp + 0x44], eax
test esi, esi
je 0x57019a
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
pop ecx
pop ecx
mov ecx, dword [esp + 0x48]
cmp ecx, ebx
jg 0x570196
jl 0x570188
mov eax, dword [esp + 0x44]
cmp eax, ebx
jae 0x57019a
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
jmp 0x57019a
mov eax, dword [esp + 0x44]
push ecx
push eax
push dword [esp + 0x24]
call fcn.0056e0a6
push edx
push eax
push edi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
call fcn.005557d7
add esp, 0x18
jmp 0x572957
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
mov dword [esp + 0x1c], eax
test esi, esi
jne 0x5701e0
push eax
call fcn.0055b5e4
cdq
push edx
push eax
push edi
call fcn.005557d7
jmp 0x570697
push esi
call fcn.00544382
push eax
push dword [esp + 0x24]
mov dword [esp + 0x1c], eax
mov byte [ebp + 0x5a], al
call fcn.0055ccfc
add esp, 0xc
test eax, eax
jne 0x572957
mov eax, dword [esp + 0x10]
cmp eax, 1
je 0x570214
cmp eax, 2
jne 0x572957
mov esi, dword [edi + 0x6c]
push ebx
push 0x657eec
push 5
push edi
call fcn.0057b8b9
mov edx, dword [esp + 0x38]
lea ecx, [esi + 4]
push edx
push edi
mov dword [eax + 0x30], ecx
mov ecx, dword [esp + 0x28]
dec ecx
mov dword [eax + 4], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], ecx
call fcn.00585486
jmp 0x5701b5
mov dword [esp + 0x18], ebx
test esi, esi
je 0x57026b
lea eax, [esp + 0x18]
push eax
push esi
call fcn.005695bb
pop ecx
pop ecx
test eax, eax
je 0x57026b
cmp dword [esp + 0x18], ebx
jg 0x570273
mov dword [esp + 0x18], 0x7fffffff
mov esi, dword [esp + 0x28]
push esi
push ebx
push dword [esp + 0x1c]
call fcn.0055a6a1
push 1
push dword [esp + 0x28]
push 0x47
push edi
call fcn.0057b76b
push esi
push 0x3e
push edi
call fcn.0057b752
push 1
push 0x54
push edi
mov esi, eax
call fcn.0057b752
push ebx
push 0xffffffffffffffff
xor ebx, ebx
inc ebx
push ebx
push 0x56
push edi
call fcn.0057b786
add esp, 0x48
push esi
push ebx
push 0x3b
push edi
call fcn.0057b76b
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x18
mov dword [eax + 8], ecx
jmp 0x572957
test esi, esi
jne 0x5702e9
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x50]
jmp 0x57294b
push esi
call fcn.00559afb
mov edx, 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.0055cd4c
jmp 0x572954
test esi, esi
jne 0x570334
mov eax, dword [ebp + 0x20]
and eax, 0x20
or eax, ebx
je 0x56fdf3
mov eax, dword [esp + 0x2c]
push ebx
push dword [eax + 4]
call fcn.0055ce4d
pop ecx
pop ecx
mov ebx, eax
jmp 0x56fdf3
lea eax, [esp + 0x10]
mov dword [esp + 0x10], 1
push eax
push esi
call fcn.005695bb
pop ecx
pop ecx
test eax, eax
je 0x57035f
mov eax, dword [esp + 0x2c]
push dword [esp + 0x10]
push dword [eax + 4]
call fcn.0055ce4d
pop ecx
pop ecx
cmp dword [esp + 0x10], ebx
setne al
movzx eax, al
push eax
push esi
call fcn.00569515
mov edx, dword [ebp + 0x24]
test al, al
pop ecx
pop ecx
mov ecx, dword [ebp + 0x20]
mov eax, ebp
je 0x570383
or ecx, 0x20
jmp 0x570386
and ecx, 0xffffffdf
mov dword [eax + 0x20], ecx
push ebp
mov dword [eax + 0x24], edx
call fcn.005572ad
jmp 0x56fc4b
test esi, esi
je 0x570495
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
mov eax, dword [esp + 0x50]
mov dword [esp + 0x18], eax
pop ecx
pop ecx
cmp eax, ebx
jg 0x5703df
jl 0x5703c6
mov esi, dword [esp + 0x44]
mov dword [esp + 0x18], esi
cmp esi, ebx
jae 0x5703e7
mov eax, dword [0x663254]
mov esi, dword [0x663250]
mov dword [esp + 0x10], eax
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
jmp 0x5703e3
mov esi, dword [esp + 0x44]
mov dword [esp + 0x18], esi
mov ecx, dword [esp + 0x38]
cmp dword [ecx + 4], ebx
jne 0x5703f6
mov dword [ebp + 0x30], esi
mov dword [ebp + 0x34], eax
mov edx, dword [ebp + 0x14]
sub edx, 1
mov dword [esp + 0x30], edx
js 0x570495
mov edi, dword [esp + 0x28]
mov esi, edx
shl esi, 4
mov dword [esp + 0x3c], esi
mov dword [esp + 0x54], 0x10
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + esi + 4]
mov dword [esp + 0x1c], eax
test eax, eax
je 0x570480
cmp edx, edi
je 0x570433
cmp dword [ecx + 4], ebx
jne 0x570480
mov esi, dword [eax + 4]
push eax
call fcn.0055b585
mov eax, dword [esi]
mov ecx, dword [esp + 0x1c]
push eax
mov dword [eax + 0x88], ecx
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x8c], ecx
call fcn.0054db74
push dword [esp + 0x24]
call fcn.0055c2fd
mov eax, dword [esp + 0x54]
add esp, 0xc
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x18], eax
sub esi, dword [esp + 0x54]
dec edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x3c], esi
test edx, edx
jns 0x57041b
mov edi, dword [esp + 0x74]
or eax, 0xffffffff
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
lea eax, [esp + 0x44]
push eax
push 0x12
push dword [esp + 0x2c]
push ebp
call fcn.00525f5c
mov ecx, eax
add esp, 0x10
test ecx, ecx
jne 0x5704c7
push dword [esp + 0x48]
push dword [esp + 0x48]
jmp 0x57294e
push 0xc
pop eax
cmp ecx, eax
je 0x572957
jmp 0x56fcd9
test esi, esi
jne 0x5704e4
movzx eax, byte [ebp + 0x56]
jmp 0x57294b
push esi
push dword [esp + 0x18]
call fcn.0053921d
jmp 0x57003f
cmp byte [0x6631ac], bl
je 0x570510
push 0xb
call dword [0x6631f0]
pop ecx
test eax, eax
je 0x570510
push eax
call dword [0x6631f8]
pop ecx
test esi, esi
jne 0x570522
push dword [0x666478]
push edi
call fcn.00555804
jmp 0x570550
cmp byte [esi], bl
je 0x57057b
mov eax, dword [ebp]
lea ecx, [esp + 0x1c]
push ecx
push 1
push esi
push eax
call dword [eax + 0x20]
add esp, 0x10
test eax, eax
jne 0x570542
cmp dword [esp + 0x1c], ebx
jne 0x57057b
push str.not_a_writable_directory
push dword [esp + 0x18]
call fcn.00561f37
pop ecx
pop ecx
cmp byte [0x6631ac], bl
je 0x572957
push 0xb
call dword [0x6631f0]
pop ecx
test eax, eax
je 0x572957
push eax
call dword [0x663200]
jmp 0x56fc4b
cmp byte [ebp + 0x56], 1
ja 0x57058b
push dword [esp + 0x14]
call fcn.005458e0
pop ecx
push dword [0x666478]
call fcn.00531a22
pop ecx
cmp byte [esi], bl
je 0x5705ad
push esi
push 0x65a88c
call fcn.00531883
mov dword [0x666478], eax
jmp 0x570550
mov dword [0x666478], ebx
jmp 0x570552
cmp byte [0x6631ac], bl
je 0x5705d2
push 0xb
call dword [0x6631f0]
pop ecx
test eax, eax
je 0x5705d2
push eax
call dword [0x6631f8]
pop ecx
test esi, esi
jne 0x5705e1
push dword [0x66647c]
jmp 0x57051a
cmp byte [esi], bl
je 0x570609
mov eax, dword [ebp]
lea ecx, [esp + 0x1c]
push ecx
push 1
push esi
push eax
call dword [eax + 0x20]
add esp, 0x10
test eax, eax
jne 0x570542
cmp dword [esp + 0x1c], ebx
je 0x570542
push dword [0x66647c]
call fcn.00531a22
pop ecx
cmp byte [esi], bl
je 0x57062e
push esi
push 0x65a88c
call fcn.00531883
mov dword [0x66647c], eax
jmp 0x570550
mov dword [0x66647c], ebx
jmp 0x570552
test esi, esi
jne 0x570650
mov eax, dword [esp + 0x2c]
movzx eax, byte [eax + 8]
cdq
sub eax, 1
sbb edx, ebx
jmp 0x57294c
cmp byte [ebp + 0x55], bl
jne 0x570668
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0x18]
call fcn.00561f37
jmp 0x57003f
xor eax, eax
inc eax
cmp dword [esp + 0x28], eax
je 0x572957
push eax
push ebx
push esi
call fcn.005448f1
mov edx, dword [esp + 0x38]
inc eax
push 1
pop ecx
and eax, 7
push ebp
cmove eax, ecx
mov byte [edx + 9], cl
mov byte [edx + 8], al
call fcn.005572ad
add esp, 0x10
jmp 0x572957
test esi, esi
jne 0x5706dc
push ecx
push edi
call fcn.00557458
mov edx, dword [esp + 0x3c]
mov eax, dword [ebp + 0x24]
pop ecx
pop ecx
mov ecx, dword [ebp + 0x20]
and ecx, dword [edx + 8]
and eax, dword [edx + 0xc]
or ecx, eax
je 0x5706c5
xor eax, eax
inc eax
jmp 0x5706d6
xorps xmm0, xmm0
movlpd qword [esp + 0x44], xmm0
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
push ebx
jmp 0x57294d
mov eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], ecx
cmp byte [ebp + 0x55], bl
jne 0x5706fc
and eax, 0xffffbfff
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], eax
push ebx
push esi
call fcn.00569515
pop ecx
pop ecx
test al, al
je 0x57072e
mov ecx, dword [esp + 0x10]
mov eax, ecx
and eax, 1
or eax, ebx
je 0x570722
mov eax, dword [ebp + 0x20]
and eax, 0x10000000
or eax, ebx
jne 0x57077d
or dword [ebp + 0x20], ecx
mov eax, dword [esp + 0x18]
or dword [ebp + 0x24], eax
jmp 0x57077d
mov edx, dword [esp + 0x10]
mov ecx, edx
mov eax, dword [esp + 0x18]
not ecx
and dword [ebp + 0x20], ecx
not eax
and dword [ebp + 0x24], eax
cmp edx, 0x80000
jne 0x57075e
cmp dword [esp + 0x18], ebx
jne 0x57075e
mov dword [ebp + 0x208], ebx
mov dword [ebp + 0x20c], ebx
jmp 0x57077d
and edx, 1
or edx, ebx
je 0x57077d
push str.reset
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x57077d
push ebp
call fcn.00573fdd
pop ecx
push 0xa6
push edi
call fcn.0057b73c
push ebp
call fcn.005572ad
jmp 0x572954
test esi, esi
je 0x572957
push dword [esp + 0x24]
push dword [esp + 0x18]
call fcn.0055e113
push dword [esp + 0x2c]
push esi
mov esi, dword [esp + 0x24]
push 2
push esi
call fcn.0056c7f9
mov edx, eax
add esp, 0x18
mov dword [esp + 0x3c], edx
test edx, edx
je 0x572957
push edx
mov dword [esp + 0x14], ebx
call fcn.00572edd
push edx
push esi
mov dword [esp + 0x3c], eax
mov dword [esi + 0x2c], 7
call fcn.00585534
mov esi, dword [esp + 0x48]
xor edx, edx
add esp, 0xc
mov dword [esp + 0x18], ebx
movzx eax, word [esi + 0x22]
mov ecx, dword [esi + 4]
mov dword [esp + 0x5c], ecx
cmp dx, ax
jge 0x572957
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x64], eax
mov dword [esp + 0x54], 0x10
movzx eax, word [ecx + 0xe]
mov edx, ebx
mov dword [esp + 0x1c], eax
test al, 0x62
je 0x57084f
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
jne 0x570836
inc dword [esp + 0x10]
jmp 0x57092b
movzx eax, word [ecx + 0xe]
test al, 0x20
je 0x570843
push 2
pop edx
jmp 0x57084f
movzx edx, al
and edx, 0x40
or edx, 0x20
shr edx, 5
xor eax, eax
inc eax
test byte [esp + 0x1c], al
jne 0x57085e
mov dword [esp + 0x20], ebx
jmp 0x5708af
mov dword [esp + 0x20], eax
cmp dword [esp + 0x30], ebx
je 0x5708af
mov edi, dword [esp + 0x64]
movsx edi, di
mov dword [esp + 0x1c], edi
cmp edi, eax
mov edi, dword [esp + 0x74]
jl 0x5708af
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
mov esi, dword [eax + 4]
movsx eax, word [esi]
cmp eax, dword [esp + 0x18]
je 0x57089b
inc edi
add esi, 2
cmp edi, ebp
jle 0x57088a
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x74]
push ecx
push esi
call fcn.0055e30b
pop ecx
pop ecx
cmp edx, 2
jae 0x5708c6
test eax, eax
je 0x5708c6
mov ecx, dword [eax + 8]
jmp 0x5708c8
mov ecx, ebx
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
mov dword [esp + 0x64], str.issisii
jne 0x5708e0
mov dword [esp + 0x64], str.issisi
push edx
push dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x68]
push 0
pop eax
test byte [ecx + 4], 0xf
setne al
push eax
push 0x658f34
push ecx
call fcn.0055e46e
pop ecx
pop ecx
push eax
mov eax, dword [esp + 0x70]
push dword [eax]
mov eax, dword [esp + 0x30]
sub eax, dword [esp + 0x28]
push eax
push dword [esp + 0x80]
push 1
push edi
call fcn.00584130
mov ecx, dword [esp + 0x84]
add esp, 0x28
movzx eax, word [esi + 0x22]
mov edx, dword [esp + 0x18]
mov ebp, eax
add ecx, dword [esp + 0x54]
inc edx
cwde
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x18], edx
mov dword [esp + 0x5c], ecx
cmp edx, eax
jl 0x570817
mov ebp, dword [esp + 0x6c]
jmp 0x572957
mov eax, dword [esp + 0x14]
push dword [esp + 0x24]
push eax
mov dword [eax + 0x2c], 6
call fcn.0055e113
pop ecx
pop ecx
mov dword [esp + 0x30], ebx
cmp dword [ebp + 0x14], ebx
jle 0x572957
mov ecx, dword [esp + 0x24]
mov edx, ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], 0x10
test ecx, ecx
je 0x5709b6
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 0
je 0x570bbb
push dword [edx + eax]
push ecx
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x570bb7
mov ecx, dword [esp + 0x50]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + ecx + 0xc]
mov ecx, dword [eax + 0xc]
add eax, 8
test ecx, ecx
je 0x570af8
mov edi, dword [esp + 0x50]
dec ecx
mov dword [esp + 0x78], ecx
mov ecx, dword [eax + 8]
jmp 0x5709e8
mov edx, dword [ecx + 8]
cmp word [edx + 0x22], bx
je 0x5709f1
mov ecx, dword [ecx]
test ecx, ecx
jne 0x5709dd
jmp 0x570aed
push dword [edx]
push str.SELECTFROM__w_
push ebp
call fcn.0056cc7e
add esp, 0xc
mov dword [esp + 0x70], eax
test eax, eax
je 0x570ab2
push ebx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], ebx
push ecx
push ebx
push ebx
push 0xffffffffffffffff
push eax
push ebp
call fcn.0056c955
mov esi, dword [esp + 0x34]
add esp, 0x1c
mov dword [esp + 0x1c], esi
test esi, esi
je 0x570aa6
mov eax, dword [esi]
push esi
mov dword [esp + 0x14], eax
call fcn.0058ff7c
pop ecx
test eax, eax
je 0x570a4f
push 0x15f3d
call fcn.0056d131
pop ecx
jmp 0x570aa6
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x570a66
push ecx
call dword [0x6631f8]
mov eax, dword [esp + 0x14]
pop ecx
cmp dword [esi + 0x8c], ebx
jl 0x570a81
jg 0x570a78
cmp dword [esi + 0x88], ebx
jbe 0x570a81
push esi
push eax
call fcn.00545928
pop ecx
pop ecx
push esi
call fcn.00584914
push dword [esp + 0x20]
mov esi, eax
call fcn.0057bd16
push esi
mov esi, dword [esp + 0x1c]
push esi
call fcn.00559293
push esi
call fcn.0056c1a5
add esp, 0x14
push dword [esp + 0x70]
push ebp
call fcn.00560283
pop ecx
pop ecx
cmp byte [ebp + 0x57], 0
je 0x570ad7
push str.out_of_memory
push dword [ebp + 0x10c]
call fcn.00561f37
mov eax, dword [ebp + 0x10c]
pop ecx
pop ecx
mov dword [eax + 0xc], 7
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x78]
mov eax, dword [eax + edi + 0xc]
add eax, 8
test ecx, ecx
jne 0x5709d3
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x88]
mov edx, dword [eax + 8]
mov dword [esp + 0x18], edx
test edx, edx
je 0x570bb7
xor ebx, ebx
inc ebx
mov edx, dword [edx + 8]
mov dword [esp + 0x1c], edx
test esi, esi
je 0x570b30
cmp dword [edx], 0
je 0x570ba3
push dword [edx]
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x570ba3
mov edx, dword [esp + 0x1c]
mov al, byte [edx + 0x2b]
cmp al, 2
jne 0x570b41
mov dword [esp + 0x10], str.view
jmp 0x570b67
cmp al, bl
jne 0x570b4f
mov dword [esp + 0x10], str.virtual
jmp 0x570b67
test dword [edx + 0x1c], 0x1000
mov eax, str.shadow
mov ecx, str.table
cmove eax, ecx
mov dword [esp + 0x10], eax
mov ecx, dword [edx + 0x1c]
mov eax, ecx
shr eax, 0x10
and eax, ebx
shr ecx, 7
push eax
movsx eax, word [edx + 0x22]
and ecx, ebx
push ecx
push eax
push dword [esp + 0x1c]
push dword [edx]
call fcn.00572a41
pop ecx
mov ecx, dword [esp + 0x60]
push eax
mov eax, dword [ebp + 0x10]
push dword [eax + ecx]
push str.sssiii
push ebx
push edi
call fcn.00584130
add esp, 0x24
mov edx, dword [esp + 0x18]
mov edx, dword [edx]
mov dword [esp + 0x18], edx
test edx, edx
jne 0x570b0a
xor ebx, ebx
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x54]
inc eax
add dword [esp + 0x50], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 0x30], eax
cmp eax, dword [ebp + 0x14]
jl 0x570992
jmp 0x572957
test esi, esi
je 0x572957
push dword [esp + 0x24]
push esi
push ebp
call fcn.00566334
add esp, 0xc
mov dword [esp + 0x20], eax
test eax, eax
jne 0x570c37
push dword [esp + 0x24]
push esi
mov esi, dword [esp + 0x1c]
push 2
push esi
call fcn.0056c7f9
add esp, 0x10
test eax, eax
je 0x572957
test byte [eax + 0x1c], 0x80
je 0x572957
push eax
call fcn.00572edd
mov dword [esp + 0x24], eax
pop ecx
test eax, eax
je 0x572957
jmp 0x570c3b
mov esi, dword [esp + 0x14]
push dword [eax + 0x18]
push ebp
call fcn.0057526e
mov dword [esp + 0x24], eax
mov edx, esi
mov eax, dword [esp + 0x3c]
pop ecx
pop ecx
mov ecx, dword [eax + 8]
or ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x20]
je 0x570c64
movzx edi, word [eax + 0x34]
push 6
jmp 0x570c6a
movzx edi, word [eax + 0x32]
push 3
pop ecx
mov dword [esp + 0x10], edi
mov dword [edx + 0x2c], ecx
push dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
movzx edi, di
push esi
mov dword [esp + 0x80], edi
mov dword [esp + 0x78], eax
call fcn.0055e161
pop ecx
mov edx, ebx
test edi, edi
mov edi, dword [esp + 0x78]
pop ecx
mov dword [esp + 0x10], edx
je 0x572957
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 4]
movzx eax, word [eax + edx*2]
movsx ecx, ax
mov dword [esp + 0x1c], ecx
test ax, ax
jns 0x570cc0
mov eax, ebx
jmp 0x570cd0
mov eax, dword [esp + 0x70]
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
mov ecx, dword [esp + 0x1c]
push eax
push ecx
push edx
push str.iisX
push 1
push edi
call fcn.00584130
mov eax, dword [ebp + 8]
add esp, 0x18
or eax, dword [ebp + 0xc]
je 0x570d1c
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
movzx eax, word [ecx + 0x32]
cmp edx, eax
sbb eax, eax
neg eax
push eax
mov eax, dword [ecx + 0x20]
push dword [eax + edx*4]
mov eax, dword [ecx + 0x1c]
movzx eax, byte [eax + edx]
push eax
push str.isiX
push 4
push edi
call fcn.00584130
add esp, 0x18
push ebx
push dword [esi + 0x2c]
push 1
push 0x54
push edi
call fcn.0057b786
mov edx, dword [esp + 0x24]
add esp, 0x14
inc edx
mov dword [esp + 0x10], edx
cmp edx, dword [esp + 0x78]
jl 0x570ca5
jmp 0x570953
test esi, esi
je 0x572957
push dword [esp + 0x24]
push esi
push ebp
call fcn.00566398
mov esi, eax
add esp, 0xc
test esi, esi
je 0x572957
push dword [esi + 0x3c]
push ebp
call fcn.0057526e
mov ecx, dword [esp + 0x1c]
push eax
push ecx
mov dword [ecx + 0x2c], 5
call fcn.0055e161
mov esi, dword [esi + 8]
add esp, 0x10
test esi, esi
je 0x572957
push 3
mov dword [esp + 0x48], 0x65da10
mov ebp, ebx
mov dword [esp + 0x4c], 0x65da14
mov dword [esp + 0x50], 0x658fc4
pop ecx
xor eax, eax
cmp dword [esi + 0x24], ebx
setne al
push eax
mov eax, dword [esi + 0x38]
and eax, ecx
push dword [esp + eax*4 + 0x48]
xor eax, eax
cmp byte [esi + 0x36], al
setne al
push eax
push dword [esi]
push ebp
push str.isisi
push 1
push edi
call fcn.00584130
mov esi, dword [esi + 0x14]
add esp, 0x20
inc ebp
push 3
pop ecx
test esi, esi
jne 0x570dab
jmp 0x570953
mov eax, dword [esp + 0x14]
mov dword [eax + 0x2c], 3
cmp dword [ebp + 0x14], ebx
jle 0x572957
mov esi, ebx
mov dword [esp + 0x54], 0x10
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + esi + 4]
test eax, eax
je 0x570e34
mov eax, dword [eax + 4]
xor ecx, ecx
inc ecx
push ecx
push dword [eax]
call fcn.0056e006
push eax
push dword [edx + esi]
push ebx
push 0x65da20
push ecx
push edi
call fcn.00584130
add esp, 0x20
add esi, dword [esp + 0x54]
inc ebx
cmp ebx, dword [ebp + 0x14]
jl 0x570e07
jmp 0x572957
mov eax, dword [esp + 0x14]
mov dword [eax + 0x2c], 2
mov esi, dword [ebp + 0x1b8]
jmp 0x570e6f
mov eax, dword [esi + 8]
push dword [eax]
push ebx
push 0x65da24
push 1
push edi
call fcn.00584130
mov esi, dword [esi]
add esp, 0x14
inc ebx
test esi, esi
jne 0x570e56
jmp 0x572957
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov esi, dword [ebp + 0x18]
inc ebx
shr esi, 5
and esi, ebx
mov dword [eax + 0x2c], 6
mov eax, 0x666488
mov dword [esp + 0x10], eax
mov ebp, dword [eax]
test ebp, ebp
je 0x570eb4
push esi
push ebx
push ebp
push edi
call fcn.0055161e
mov ebp, dword [ebp + 0x24]
add esp, 0x10
test ebp, ebp
jne 0x570e9d
mov eax, dword [esp + 0x10]
add eax, 4
mov dword [esp + 0x10], eax
cmp eax, 0x6664e4
jl 0x570e97
mov ebp, dword [esp + 0x6c]
push 0
pop ebx
mov eax, dword [ebp + 0x1a8]
test eax, eax
je 0x572957
mov ebp, eax
push esi
push ebx
push dword [ebp + 8]
push edi
call fcn.0055161e
mov ebp, dword [ebp]
add esp, 0x10
test ebp, ebp
jne 0x570ed9
jmp 0x570953
mov eax, dword [esp + 0x14]
mov dword [eax + 0x2c], 1
mov esi, dword [ebp + 0x18c]
jmp 0x570f1e
mov eax, dword [esi + 8]
push dword [eax + 4]
push 0x65b928
push 1
push edi
call fcn.00584130
mov esi, dword [esi]
add esp, 0x10
test esi, esi
jne 0x570f06
jmp 0x572957
push 0x10
mov esi, 0x657920
pop ebx
push dword [esi]
push 0x65b928
push 1
push edi
call fcn.00584130
add esi, ebx
add esp, 0x10
cmp esi, 0x657d50
jl 0x570f2f
jmp 0x572957
test esi, esi
je 0x572957
push dword [esp + 0x24]
push esi
push ebp
call fcn.00566398
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x572957
cmp byte [eax + 0x2b], bl
jne 0x572957
mov esi, dword [eax + 0x30]
test esi, esi
je 0x572957
push dword [eax + 0x3c]
push ebp
call fcn.0057526e
mov ecx, dword [esp + 0x1c]
push eax
push ecx
mov dword [esp + 0x20], ebx
mov dword [ecx + 0x2c], 8
call fcn.0055e161
mov ebp, dword [esp + 0x2c]
add esp, 0x10
mov eax, ebx
mov edx, ebx
mov dword [esp + 0x18], edx
cmp dword [esi + 0x14], ebx
jle 0x571019
lea ebx, [esi + 0x24]
movzx eax, byte [esi + 0x19]
push str.NONE
push eax
call fcn.00533b1b
add esp, 4
push eax
movzx eax, byte [esi + 0x1a]
push eax
call fcn.00533b1b
mov ecx, dword [ebx]
add esp, 4
add ecx, ecx
push eax
push dword [ebx + 4]
mov eax, dword [ebp + 4]
push dword [eax + ecx*8]
push dword [esi + 8]
push edx
push dword [esp + 0x2c]
push str.iissssss
push 1
push edi
call fcn.00584130
mov edx, dword [esp + 0x44]
lea ebx, [ebx + 8]
add esp, 0x2c
inc edx
mov dword [esp + 0x18], edx
cmp edx, dword [esi + 0x14]
jl 0x570fbc
mov eax, dword [esp + 0x10]
xor ebx, ebx
mov esi, dword [esi + 4]
inc eax
mov dword [esp + 0x10], eax
test esi, esi
jne 0x570fae
jmp 0x570953
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x2c]
lea edx, [eax + 1]
add eax, 5
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x28]
mov dword [ecx + 0x2c], eax
add edx, edx
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + edx*8 + 0xc]
mov edx, dword [eax + 0x10]
test edx, edx
je 0x572957
test esi, esi
je 0x571075
push dword [esp + 0x24]
push esi
push ebx
push ecx
call fcn.0056c7f9
add esp, 0x10
mov dword [esp + 0x38], ebx
mov edx, ebx
jmp 0x57107e
mov eax, dword [edx + 8]
mov edx, dword [edx]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], eax
test eax, eax
je 0x571435
cmp byte [eax + 0x2b], bl
jne 0x571435
cmp dword [eax + 0x30], ebx
je 0x571435
push dword [eax + 0x3c]
push ebp
call fcn.0057526e
mov ecx, dword [ebp + 0x10]
mov edx, eax
mov dword [esp + 0x58], eax
add edx, edx
push dword [esp + 0x58]
push dword [esp + 0x20]
mov eax, dword [ecx + edx*8]
mov dword [esp + 0x34], eax
call fcn.0055e161
mov eax, dword [esp + 0x44]
push dword [eax]
push ebx
push dword [eax + 0x14]
push dword [esp + 0x6c]
push dword [esp + 0x34]
call fcn.00578768
mov ecx, dword [esp + 0x58]
add esp, 0x24
mov eax, dword [esp + 0x14]
movsx edx, word [ecx + 0x22]
add edx, dword [esp + 0x20]
cmp dword [eax + 0x2c], edx
jge 0x5710f6
mov dword [eax + 0x2c], edx
push 0x70
push ecx
push dword [esp + 0x58]
push ebx
push eax
call fcn.0056d55f
mov eax, dword [esp + 0x48]
push dword [eax]
push dword [esp + 0x7c]
push edi
call fcn.00582f5d
mov eax, dword [esp + 0x54]
xor ecx, ecx
add esp, 0x20
inc ecx
mov eax, dword [eax + 0x30]
jmp 0x5711ce
push dword [esp + 0x24]
push dword [eax + 8]
push ebp
call fcn.00566398
add esp, 0xc
mov dword [esp + 0x30], eax
test eax, eax
je 0x5711c2
push dword [eax]
mov dword [esp + 0x44], ebx
push ebx
push dword [eax + 0x14]
push dword [esp + 0x5c]
push dword [esp + 0x24]
call fcn.00578768
push ebx
lea eax, [esp + 0x58]
push eax
push dword [esp + 0x2c]
push dword [esp + 0x50]
push dword [esp + 0x38]
call fcn.0056722f
add esp, 0x28
test eax, eax
jne 0x572957
mov eax, dword [esp + 0x40]
test eax, eax
jne 0x57119f
push 0x70
push dword [esp + 0x34]
push dword [esp + 0x58]
push dword [esp + 0x24]
push dword [esp + 0x24]
call fcn.0056d55f
add esp, 0x14
jmp 0x5711c2
push dword [esp + 0x50]
push dword [eax + 0x2c]
push dword [esp + 0x20]
push 0x70
push edi
call fcn.0057b786
push dword [esp + 0x54]
push dword [esp + 0x2c]
call fcn.00584c34
add esp, 0x1c
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
inc ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], ecx
test eax, eax
jne 0x571126
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x28], ecx
jge 0x5711ea
mov dword [eax + 0x28], ecx
push ebx
push 0x24
push edi
call fcn.0057b752
mov dword [esp + 0x8c], eax
add esp, 0xc
mov eax, dword [esp + 0x34]
mov dword [esp + 0x5c], 1
mov eax, dword [eax + 0x30]
mov dword [esp + 0x60], eax
test eax, eax
je 0x571409
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x14]
lea edx, [ecx + 1]
add ecx, 2
mov dword [esp + 0x70], edx
mov dword [esp + 0x78], ecx
push dword [esp + 0x24]
push dword [eax + 8]
push ebp
call fcn.00566398
add esp, 0xc
mov dword [esp + 0x1c], eax
mov dword [esp + 0x40], ebx
mov dword [esp + 0x7c], ebx
test eax, eax
je 0x571266
lea ecx, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x44]
push ecx
push dword [esp + 0x68]
push eax
push esi
call fcn.0056722f
add esp, 0x14
dec dword [esi + 0x38]
mov eax, dword [esi + 0x38]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x60]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esi + 0x2c], edx
jge 0x571285
mov dword [esi + 0x2c], edx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x10], ebx
test edx, edx
jle 0x571308
mov esi, dword [esp + 0x34]
mov edx, ecx
mov ebp, dword [esp + 0x7c]
add eax, 0x24
mov dword [esp + 0x18], edx
mov ecx, ebx
mov dword [esp + 0x3c], eax
jmp 0x5712ad
mov edx, dword [esp + 0x18]
test ebp, ebp
je 0x5712ba
lea eax, [ecx*4]
add eax, ebp
push edx
push dword [eax]
push ebx
push esi
push edi
call fcn.00562c0e
push dword [esp + 0x44]
push dword [esp + 0x30]
push 0x32
push edi
call fcn.0057b76b
mov eax, dword [esp + 0x84]
add esp, 0x24
mov ecx, dword [esp + 0x10]
add dword [esp + 0x3c], 8
inc ecx
inc dword [esp + 0x18]
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x10], ecx
cmp ecx, edx
jl 0x5712a9
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x40]
test eax, eax
je 0x571352
push edx
push eax
push ebp
call fcn.0056a457
pop ecx
pop ecx
push eax
mov eax, dword [esp + 0x68]
push ebx
push dword [eax + 0x14]
push dword [esp + 0x30]
push 0x60
push edi
call fcn.0057b7e0
mov eax, dword [esp + 0x7c]
push dword [eax + 0x14]
push dword [esp + 0x40]
push dword [esp + 0x54]
push dword [esp + 0x84]
push 0x1d
push edi
call fcn.0057b858
add esp, 0x34
jmp 0x571379
cmp dword [esp + 0x1c], ebx
je 0x571379
mov eax, dword [edi + 0x6c]
push ecx
add eax, 2
push eax
push dword [esp + 0x64]
push 0x1e
push edi
call fcn.0057b786
push dword [esp + 0x44]
push edi
call fcn.00582757
add esp, 0x1c
mov eax, dword [esp + 0x34]
push ebx
push dword [esp + 0x74]
test byte [eax + 0x1c], 0x80
mov eax, 0x87
push ebx
push 0x4b
pop ecx
cmovne eax, ecx
push eax
push edi
call fcn.0057b786
mov eax, dword [esp + 0x70]
dec eax
push eax
mov eax, dword [esp + 0x78]
push dword [eax + 8]
push 0x65da3c
push dword [esp + 0x98]
push edi
call fcn.00584130
push ebx
push 4
push dword [esp + 0x94]
push 0x54
push edi
call fcn.0057b786
push dword [esp + 0x6c]
push edi
call fcn.00584970
mov eax, dword [esp + 0xc0]
add esp, 0x44
test eax, eax
je 0x5713eb
push eax
push ebp
call fcn.00560283
pop ecx
pop ecx
mov eax, dword [esp + 0x60]
inc dword [esp + 0x5c]
mov eax, dword [eax + 4]
mov dword [esp + 0x60], eax
test eax, eax
jne 0x57122e
mov esi, dword [esp + 0x88]
mov eax, dword [esp + 0x80]
inc eax
push eax
push ebx
push 0x27
push edi
call fcn.0057b76b
push dword [esp + 0x90]
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x18
mov edx, dword [esp + 0x38]
mov dword [eax + 8], ecx
test edx, edx
je 0x572957
mov ecx, dword [esp + 0x14]
jmp 0x57105a
test esi, esi
je 0x572957
push ebx
push esi
call fcn.00569515
movzx eax, al
push eax
push ebp
call fcn.00573c25
jmp 0x570697
mov eax, dword [esp + 0x90]
xor ecx, ecx
push 0x64
mov dword [esp + 0x28], ebx
movzx eax, byte [eax]
mov al, byte [eax + 0x657038]
cmp al, 0x71
mov byte [esp + 0x5f], al
mov eax, dword [esp + 0x3c]
sete cl
mov dword [esp + 0x9c], ecx
or ecx, 0xffffffff
cmp dword [eax], ebx
mov eax, dword [esp + 0x2c]
cmove eax, ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x18]
pop ecx
mov dword [esp + 0x18], ecx
mov dword [eax + 0x2c], 6
test esi, esi
je 0x57150a
lea eax, [esp + 0x18]
push eax
push esi
call fcn.005695bb
pop ecx
pop ecx
test eax, eax
je 0x5714da
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
test ecx, ecx
jg 0x57150c
push 0x64
pop ecx
mov dword [esp + 0x18], ecx
jmp 0x57150c
mov eax, dword [esp + 0x28]
test eax, eax
js 0x5714ee
mov ecx, eax
mov eax, dword [ebp + 0x10]
add ecx, ecx
mov eax, dword [eax + ecx*8]
jmp 0x5714f0
mov eax, ebx
push eax
push esi
mov esi, dword [esp + 0x1c]
push ebx
push esi
call fcn.0056c7f9
mov ecx, dword [esp + 0x28]
add esp, 0x10
mov dword [esp + 0x24], eax
jmp 0x57150c
mov esi, eax
push 1
dec ecx
push ecx
push 0x47
push edi
call fcn.0057b76b
add esp, 0x10
mov ecx, ebx
mov dword [esp + 0x34], ecx
cmp dword [ebp + 0x14], ebx
jle 0x5723ee
mov eax, dword [esp + 0x28]
mov dword [esp + 0x54], 0x10
mov dword [esp + 0x20], ebx
test eax, eax
js 0x571546
cmp ecx, eax
jne 0x5723dc
push ecx
push esi
call fcn.0055e161
pop ecx
pop ecx
mov ecx, dword [esp + 0x34]
mov byte [esi + 0x17], bl
add ecx, ecx
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + ecx*8 + 0xc]
mov ecx, ebx
mov dword [esp + 0x3c], eax
mov eax, dword [eax + 0x10]
mov dword [esp + 0x10], eax
test eax, eax
je 0x5723d4
mov edi, dword [esp + 0x20]
cmp dword [esp + 0x24], 0
mov edx, dword [eax + 8]
mov dword [esp + 0x1c], edx
je 0x57158c
cmp dword [esp + 0x24], edx
jne 0x5715b0
test byte [edx + 0x1c], 0x80
jne 0x571593
inc ecx
mov eax, dword [esp + 0x1c]
mov edx, ebx
mov eax, dword [eax + 8]
jmp 0x5715a3
mov eax, dword [eax + 0x14]
inc ecx
inc edx
test eax, eax
jne 0x57159e
mov eax, dword [esp + 0x10]
cmp edx, edi
cmovg edi, edx
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
jne 0x571578
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x74]
test ecx, ecx
je 0x5723d4
cmp dword [esp + 0x24], 0
lea eax, [ecx + 1]
push ebx
cmove eax, ecx
lea eax, [eax*4 + 4]
push eax
push ebp
call fcn.00560346
mov edx, eax
add esp, 0xc
mov dword [esp + 0x30], edx
test edx, edx
je 0x5723ee
cmp dword [esp + 0x24], 0
mov ecx, ebx
je 0x571604
xor ecx, ecx
mov dword [edx + 4], ebx
inc ecx
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x10], eax
test eax, eax
je 0x57166b
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x20], edx
cmp dword [esp + 0x24], 0
mov edx, dword [eax + 8]
je 0x57162f
cmp dword [esp + 0x24], edx
jne 0x571659
test byte [edx + 0x1c], 0x80
jne 0x571640
mov eax, dword [edx + 0x14]
inc ecx
mov dword [edi + ecx*4], eax
mov eax, dword [esp + 0x10]
mov edx, dword [edx + 8]
test edx, edx
je 0x571659
mov eax, dword [edx + 0x2c]
inc ecx
mov dword [edi + ecx*4], eax
mov edx, dword [edx + 0x14]
test edx, edx
jne 0x571647
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
jne 0x57161f
mov edi, dword [esp + 0x74]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
add eax, 8
mov dword [edx], ecx
cmp dword [esi + 0x2c], eax
jge 0x57167c
mov dword [esi + 0x2c], eax
push 0xfffffffffffffff2
push edx
push 1
push ecx
push 2
mov byte [esi + 0x13], bl
mov dword [esi + 0x1c], ebx
pop esi
push esi
push 0x9b
push edi
call fcn.0057b7e0
mov eax, dword [esp + 0x50]
movzx eax, al
push eax
push edi
call fcn.0057bb2b
push esi
push 0x32
push edi
call fcn.0057b752
mov edx, dword [esp + 0x64]
add esp, 0x30
mov ecx, dword [ebp + 0x10]
add edx, edx
mov esi, eax
push 0xfffffffffffffffa
push dword [ecx + edx*8]
push str._in_database__s__n
push ebp
call fcn.0056cc7e
add esp, 0xc
push eax
push ebx
push 3
pop edx
push edx
push ebx
push 0x75
push edi
call fcn.0057b7e0
push 3
pop eax
push eax
push eax
push 2
push 0x6f
push edi
call fcn.0057b786
push edi
call fcn.00545846
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x3c
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x3c]
mov esi, dword [eax + 0x10]
mov dword [esp + 0x1c], esi
test esi, esi
je 0x5723d4
mov eax, dword [esp + 0x24]
or dword [esp + 0x50], 0xffffffff
mov esi, dword [esi + 8]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x78], ebx
test eax, eax
je 0x571736
cmp eax, esi
jne 0x5723c2
mov al, byte [esi + 0x2b]
test al, al
je 0x5717f5
cmp al, 1
jne 0x5723be
cmp word [esi + 0x22], bx
jg 0x57176a
mov eax, dword [esi + 0x30]
push dword [eax]
lea eax, [ebp + 0x184]
push eax
call fcn.0056a113
pop ecx
pop ecx
test eax, eax
je 0x5723be
push esi
push dword [esp + 0x18]
call fcn.00585534
mov eax, dword [esi + 0x34]
pop ecx
pop ecx
test eax, eax
je 0x5723be
mov eax, dword [eax + 8]
test eax, eax
je 0x5723be
mov eax, dword [eax]
test eax, eax
je 0x5723be
cmp dword [eax], 4
jl 0x5723be
cmp dword [eax + 0x60], ebx
je 0x5723be
push dword [esp + 0x98]
push 3
pop edx
push edx
push dword [esp + 0x3c]
push 0xae
push edi
call fcn.0057b786
inc dword [esi + 0x18]
push 0xfffffffffffffff0
push esi
push edi
call fcn.0057ba0b
push 3
push 0x32
push edi
call fcn.0057b752
push edi
mov esi, eax
call fcn.00545846
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x38
mov dword [eax + 8], ecx
jmp 0x5723be
cmp byte [esp + 0x5b], 0x71
je 0x57183d
test byte [esi + 0x1c], 0x80
je 0x57183d
push esi
call fcn.00572edd
mov esi, dword [esp + 0x18]
mov dword [esp + 0x64], eax
movzx ecx, word [eax + 0x32]
push ecx
push esi
call fcn.00569724
mov edx, eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], edx
movzx ecx, word [eax + 0x32]
dec ecx
add ecx, edx
push ecx
push edx
push 1
push 0x4b
push edi
call fcn.0057b786
add esp, 0x20
jmp 0x571849
mov esi, dword [esp + 0x14]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x30], ebx
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x3c]
push eax
push ebx
push 1
push ebx
push 0x70
push dword [esp + 0x44]
push esi
call fcn.0056d5e5
push ebx
push 7
push ebx
push 0x47
push edi
call fcn.0057b786
mov eax, dword [esp + 0x60]
add esp, 0x34
mov eax, dword [eax + 8]
mov dword [esp + 0x68], eax
test eax, eax
je 0x5718a3
push 8
pop esi
mov ebp, eax
push esi
push ebx
push 0x47
push edi
call fcn.0057b76b
mov ebp, dword [ebp + 0x14]
add esp, 0x10
inc esi
test ebp, ebp
jne 0x571886
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x14]
push ebx
push dword [esp + 0x3c]
push 0x24
push edi
call fcn.0057b76b
push ebx
push 1
push 7
push 0x56
push edi
call fcn.0057b786
mov ecx, dword [esp + 0x50]
add esp, 0x24
mov dword [esp + 0x44], eax
test byte [ecx + 0x1c], 0x80
jne 0x57191a
movzx eax, word [ecx + 0x22]
or edx, 0xffffffff
and dword [esp + 0x68], 0
cmp word [esp + 0x68], ax
jge 0x57190c
mov esi, dword [ecx + 4]
mov edi, dword [esp + 0x54]
add esi, 0xe
movsx ebp, ax
test byte [esi], 0x20
lea eax, [edx + 1]
cmovne eax, edx
add esi, edi
mov edx, eax
sub ebp, 1
jne 0x5718ee
mov edi, dword [esp + 0x74]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x14]
movsx eax, word [ecx + 0x20]
lea ecx, [edx - 1]
cmp edx, eax
cmovne ecx, edx
jmp 0x571926
push ecx
call fcn.00572edd
pop ecx
movzx ecx, word [eax + 0x34]
dec ecx
test ecx, ecx
js 0x571944
push 3
push ecx
push dword [esp + 0x40]
push 0x5e
push edi
call fcn.0057b786
push 3
push edi
call fcn.0058545d
add esp, 0x1c
cmp byte [esp + 0x5b], 0x71
je 0x571a0a
mov eax, dword [esp + 0x60]
test eax, eax
je 0x571a0a
movzx eax, word [eax + 0x32]
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x44]
push 0x29
push edi
call fcn.0057b858
push dword [esp + 0x48]
mov esi, eax
push 0x32
push edi
call fcn.0057b752
mov eax, dword [esp + 0x50]
push dword [eax]
push str.row_not_in_PRIMARY_KEY_order_for__s
push ebp
call fcn.0056cc7e
push 0xfffffffffffffffa
push eax
push ebx
push 3
push ebx
push 0x75
push edi
call fcn.0057b7e0
add esp, 0x4c
push edi
call fcn.00545846
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
mov dword [eax + 8], ecx
lea eax, [esi + 1]
push eax
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x14
mov esi, dword [esp + 0x14]
mov dword [esp + 0x68], ebx
mov dword [eax + 8], ecx
xor ecx, ecx
mov eax, dword [esp + 0x60]
cmp cx, word [eax + 0x32]
jae 0x571a0a
mov edi, dword [esp + 0x38]
mov ebp, ebx
mov ebx, eax
mov eax, dword [esp + 0x30]
add eax, ebp
push eax
push ebp
push edi
push ebx
push esi
call fcn.00563238
movzx eax, word [ebx + 0x32]
add esp, 0x14
inc ebp
cmp ebp, eax
jl 0x5719e4
mov edi, dword [esp + 0x74]
xor ebx, ebx
mov ebp, dword [esp + 0x6c]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x5c], ebx
movzx eax, word [ecx + 0x1e]
and eax, 1
mov dword [esp + 0x84], eax
xor eax, eax
cmp ax, word [ecx + 0x22]
jge 0x571e42
mov eax, ebx
mov dword [esp + 0x20], ebx
mov edx, dword [ecx + 4]
add edx, eax
movsx eax, word [ecx + 0x20]
mov dword [esp + 0x80], edx
cmp dword [esp + 0x5c], eax
je 0x571e1d
cmp dword [esp + 0x84], 0
je 0x571a68
mov eax, dword [edx + 4]
and eax, 0xf0
cmp dword [esp + 0x54], eax
sbb eax, eax
neg eax
jmp 0x571a71
xor eax, eax
cmp byte [edx + 8], 0x41
setg al
test byte [edx + 4], 0xf
mov dword [esp + 0x10], eax
jne 0x571a83
test eax, eax
je 0x571e1d
test byte [edx + 0xe], 0x20
mov dword [esp + 0x64], 5
je 0x571ab2
push 3
push dword [esp + 0x60]
push dword [esp + 0x40]
push ecx
push edi
call fcn.00562c0e
add esp, 0x14
or dword [esp + 0x40], 0xffffffff
push 3
pop edx
jmp 0x571b45
cmp word [edx + 0xc], bx
je 0x571b16
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], ebx
push eax
movzx eax, byte [edx + 8]
push eax
movzx eax, byte [ebp + 0x54]
push eax
push edx
push ecx
call fcn.0055e30b
pop ecx
pop ecx
push eax
push ebp
call fcn.0057b5ea
mov ecx, dword [esp + 0x50]
add esp, 0x14
mov dword [esp + 0x68], ecx
test ecx, ecx
je 0x571b12
movzx eax, word [ecx + 0x10]
and eax, 0x3f
push ecx
movzx eax, byte [eax + 0x657378]
mov dword [esp + 0x68], eax
call fcn.00583802
mov eax, dword [esp + 0x6c]
push eax
push dword [eax + 0x14]
call fcn.00560283
add esp, 0xc
mov ecx, dword [esp + 0x2c]
test byte [ecx + 0x1c], 0x80
mov eax, dword [esp + 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x5c]
movzx eax, ax
push eax
push ecx
je 0x571b3b
call fcn.00572edd
pop ecx
push eax
call fcn.005786d6
jmp 0x571b40
call fcn.005786ff
pop ecx
movsx edx, ax
pop ecx
mov eax, dword [esi + 0x38]
dec eax
mov dword [esp + 0x7c], edx
mov dword [esp + 0x68], eax
lea ecx, [eax - 1]
mov eax, dword [esp + 0x80]
mov dword [esi + 0x38], ecx
mov dword [esp + 0x3c], ecx
test byte [eax + 4], 0xf
je 0x571c4d
push dword [esp + 0x64]
push edx
push ecx
push dword [esp + 0x4c]
push 0x12
push edi
call fcn.0057b858
add esp, 0x18
mov dword [esp + 0x94], eax
cmp dword [esp + 0x40], 0
jge 0x571ba2
push 0xf
push edi
call fcn.0057bb2b
mov eax, dword [esp + 0x9c]
pop ecx
pop ecx
jmp 0x571bd0
push 0xd
push edi
call fcn.0057bb2b
push 3
push dword [esp + 0x88]
push dword [esp + 0x50]
push 0x5e
push edi
call fcn.0057b786
push dword [esp + 0x58]
push 3
push 0x33
push edi
call fcn.0057b76b
add esp, 0x2c
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x80]
push dword [eax]
mov eax, dword [esp + 0x30]
push dword [eax]
push str.NULL_value_in__s._s
push ebp
call fcn.0056cc7e
push 0xfffffffffffffffa
push eax
push ebx
push 3
push ebx
push 0x75
push edi
call fcn.0057b7e0
mov edx, dword [esp + 0x3c]
add esp, 0x2c
test edx, edx
je 0x571ce6
push dword [esp + 0x68]
push edi
call fcn.00582757
push dword [esp + 0x9c]
push edi
call fcn.0058273c
push dword [esp + 0x9c]
mov ecx, dword [edi + 0x6c]
push edi
mov dword [eax + 8], ecx
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x18
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x84], 0
je 0x571cf6
test edx, edx
je 0x571dfc
push dword [esp + 0x64]
push dword [esp + 0x80]
push ecx
push dword [esp + 0x4c]
push 0x12
push edi
call fcn.0057b858
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 4]
shr eax, 4
and eax, 0xf
movzx eax, byte [eax + 0x6649b7]
push eax
push edi
call fcn.0057bb2b
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
mov eax, dword [ecx + 4]
push dword [edx + eax]
mov eax, dword [esp + 0xa4]
push dword [ecx]
mov eax, dword [eax + 4]
shr eax, 4
and eax, 0xf
push dword [eax*4 + 0x663398]
push str.non__s_value_in__s._s
push ebp
call fcn.0056cc7e
push 0xfffffffffffffffa
push eax
push ebx
push 3
push ebx
push 0x75
push edi
call fcn.0057b7e0
add esp, 0x50
jmp 0x571dfc
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x3c]
jmp 0x571c51
cmp byte [eax + 8], 0x42
jne 0x571d4e
push dword [esp + 0x64]
push dword [esp + 0x80]
push ecx
push dword [esp + 0x4c]
push 0x12
push edi
call fcn.0057b858
push 0x1c
push edi
call fcn.0057bb2b
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
mov eax, dword [ecx + 4]
push dword [edx + eax]
push dword [ecx]
push str.NUMERIC_value_in__s._s
push ebp
call fcn.0056cc7e
push 0xfffffffffffffffa
push eax
push ebx
push 3
push ebx
push 0x75
push edi
call fcn.0057b7e0
add esp, 0x4c
jmp 0x571dfc
cmp byte [eax + 8], 0x43
jl 0x571dfc
push dword [esp + 0x64]
push dword [esp + 0x80]
push ecx
push dword [esp + 0x4c]
push 0x12
push edi
call fcn.0057b858
push 0x1b
push edi
call fcn.0057bb2b
add esp, 0x20
cmp dword [esp + 0x40], 0
jl 0x571d99
push 3
push dword [esp + 0x60]
push dword [esp + 0x40]
push dword [esp + 0x38]
push edi
call fcn.00562c0e
add esp, 0x14
push 0xffffffffffffffff
push 0x65dac0
push ebx
push 1
push 3
push 0x60
push edi
call fcn.0057b7e0
push dword [esp + 0x80]
push 3
push dword [esp + 0x60]
push 0xffffffffffffffff
push 0x12
push edi
call fcn.0057b858
push 0x1c
push edi
call fcn.0057bb2b
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x5c]
mov eax, dword [ecx + 4]
push dword [edx + eax]
push dword [ecx]
push str.TEXT_value_in__s._s
push ebp
call fcn.0056cc7e
add esp, 0x4c
push 0xfffffffffffffffa
push eax
push ebx
push 3
push ebx
push 0x75
push edi
call fcn.0057b7e0
add esp, 0x1c
push dword [esp + 0x68]
push edi
call fcn.00584970
push edi
call fcn.00545846
push dword [esp + 0x48]
push edi
call fcn.00584970
mov ecx, dword [esp + 0x40]
add esp, 0x14
mov eax, dword [esp + 0x20]
add eax, dword [esp + 0x54]
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
inc edx
movsx eax, word [ecx + 0x22]
cmp edx, eax
mov dword [esp + 0x5c], edx
mov eax, dword [esp + 0x20]
jl 0x571a32
mov edx, dword [ecx + 0x10]
test edx, edx
je 0x571f4b
mov eax, dword [ebp + 0x20]
and eax, 0x200
or eax, ebx
jne 0x571f4b
push ebx
push edx
push ebp
call fcn.0056565a
add esp, 0xc
mov edx, eax
cmp byte [ebp + 0x57], 0
mov dword [esp + 0x8c], edx
jne 0x571f3a
mov ecx, dword [esi + 0x38]
dec ecx
mov dword [esp + 0x68], ecx
lea eax, [ecx - 1]
mov dword [esp + 0x84], eax
mov dword [esi + 0x38], eax
mov eax, dword [esp + 0x38]
inc eax
mov dword [esi + 0x34], eax
mov eax, dword [edx]
dec eax
mov dword [esp + 0x94], eax
test eax, eax
jle 0x571ed9
imul ebp, eax, 0x14
mov edi, eax
add ebp, 8
add ebp, edx
push ebx
push ecx
push dword [ebp]
push esi
call fcn.00564a78
mov ecx, dword [esp + 0x78]
lea ebp, [ebp - 0x14]
add esp, 0x10
dec edi
test edi, edi
jg 0x571eb0
mov edi, dword [esp + 0x74]
mov ebp, dword [esp + 0x6c]
mov edx, dword [esp + 0x8c]
push dword [esp + 0x54]
push dword [esp + 0x88]
push dword [edx + 8]
push esi
call fcn.00564e05
push dword [esp + 0x78]
push edi
call fcn.00584970
mov eax, dword [esp + 0x44]
mov dword [esi + 0x34], ebx
push dword [eax]
push str.CHECK_constraint_failed_in__s
push ebp
call fcn.0056cc7e
push 0xfffffffffffffffa
push eax
push ebx
push 3
push ebx
push 0x75
push edi
call fcn.0057b7e0
add esp, 0x40
push edi
call fcn.00545846
push dword [esp + 0x88]
push edi
call fcn.00584970
mov edx, dword [esp + 0x98]
add esp, 0xc
test edx, edx
je 0x571f47
push edx
push ebp
call fcn.005408da
pop ecx
pop ecx
mov ecx, dword [esp + 0x2c]
cmp byte [esp + 0x5b], 0x71
je 0x5722c9
mov eax, dword [ecx + 8]
mov dword [esp + 0x20], eax
test eax, eax
je 0x5722c9
mov ecx, dword [esp + 0x70]
mov ebp, dword [esp + 0x20]
push 8
pop eax
sub eax, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x68], eax
mov eax, dword [esi + 0x38]
dec eax
mov dword [esp + 0x84], eax
mov dword [esi + 0x38], eax
cmp dword [esp + 0x60], ebp
je 0x5722b1
push dword [esp + 0x50]
lea eax, [esp + 0xa0]
push dword [esp + 0x7c]
push eax
push ebx
push ebx
push dword [esp + 0x4c]
push ebp
push esi
call fcn.0056904f
mov ecx, dword [esp + 0x88]
mov esi, dword [esp + 0x60]
add ecx, esi
push 1
push ecx
push 0x56
push edi
mov dword [esp + 0x80], eax
mov dword [esp + 0xa8], ebp
call fcn.0057b76b
movzx eax, word [ebp + 0x34]
push eax
push dword [esp + 0x84]
push dword [esp + 0xbc]
push esi
push 0x1d
push edi
call fcn.0057b858
add esp, 0x48
mov esi, eax
push str.row
push 3
push edi
call fcn.00582f5d
push 3
pop eax
push eax
push eax
push 7
push 0x6f
push edi
call fcn.0057b786
push str._missing_from_index
push 4
push edi
call fcn.00582f5d
push 3
pop eax
push eax
push eax
push 4
push 0x6f
push edi
call fcn.0057b786
add esp, 0x40
push dword [ebp]
push 4
push edi
call fcn.00582f5d
push 3
mov dword [esp + 0x4c], eax
pop eax
push eax
push eax
push 4
push 0x6f
push edi
call fcn.0057b786
push edi
call fcn.00545846
push esi
push edi
mov dword [esp + 0xb8], eax
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x2c
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x2c]
test byte [eax + 0x1c], 0x80
jne 0x5720e9
push 3
pop esi
push esi
push dword [esp + 0x44]
push 0x8e
push edi
call fcn.0057b76b
mov ecx, dword [esp + 0x60]
movzx eax, word [ebp + 0x34]
dec ecx
add eax, ecx
push eax
push ebx
push esi
push 0x35
push edi
call fcn.0057b786
push str.rowid_not_at_end_of_record_for_row
push 3
push edi
mov esi, eax
call fcn.00582f5d
push 3
pop eax
push eax
push eax
push 7
push 0x6f
push edi
call fcn.0057b786
add esp, 0x44
push str._of_index
push 4
push edi
call fcn.00582f5d
mov eax, dword [esp + 0x48]
dec eax
push eax
push edi
call fcn.00582757
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x1c
mov dword [eax + 8], ecx
xor eax, eax
mov dword [esp + 0x84], ebx
cmp ax, word [ebp + 0x32]
mov ecx, ebx
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
jae 0x5721ba
mov esi, dword [esp + 0x20]
mov eax, dword [esi + 0x20]
cmp dword [eax + ebx*4], 0x657310
je 0x57214f
test ecx, ecx
jne 0x572124
dec dword [ebp + 0x38]
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x10], eax
push 3
push ebx
push dword [esp + 0x48]
push 0x5e
push edi
call fcn.0057b786
mov eax, dword [esp + 0x64]
add eax, ebx
push eax
push dword [esp + 0x28]
push 3
push 0x34
push edi
call fcn.0057b786
mov ecx, dword [esp + 0x38]
add esp, 0x28
movzx eax, word [esi + 0x32]
inc ebx
cmp ebx, eax
jl 0x57210a
push 0
pop ebx
test ecx, ecx
je 0x5721ba
push 9
push edi
call fcn.0057b73c
push dword [esp + 0x18]
mov esi, eax
push edi
call fcn.00584970
push str.row
push 3
push edi
call fcn.00582f5d
push 3
pop eax
push eax
push eax
push 7
push 0x6f
push edi
call fcn.0057b786
push str._values_differ_from_index
push 4
push edi
call fcn.00582f5d
mov eax, dword [esp + 0x78]
dec eax
push eax
push edi
call fcn.00582757
add esp, 0x44
push esi
push edi
call fcn.0058273c
pop ecx
pop ecx
mov ecx, dword [edi + 0x6c]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x20]
cmp byte [eax + 0x36], 0
je 0x572282
dec dword [ebp + 0x38]
xor eax, eax
mov edx, dword [ebp + 0x38]
mov esi, ebx
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x10], edx
cmp ax, word [ebp + 0x32]
jae 0x57221d
mov ebx, dword [esp + 0x2c]
mov eax, dword [ebp + 4]
movsx ecx, word [eax + esi*2]
test ecx, ecx
js 0x5721fb
mov eax, dword [ebx + 4]
add ecx, ecx
test byte [eax + ecx*8 + 4], 0xf
jne 0x572212
mov eax, dword [esp + 0x50]
push edx
add eax, esi
push eax
push 0x32
push edi
call fcn.0057b76b
mov edx, dword [esp + 0x20]
add esp, 0x10
movzx eax, word [ebp + 0x32]
inc esi
cmp esi, eax
jl 0x5721e4
xor ebx, ebx
push dword [esp + 0x40]
push 0x27
push edi
call fcn.0057b752
push dword [esp + 0x1c]
mov esi, eax
push edi
call fcn.00582757
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
mov esi, dword [esp + 0x2c]
mov dword [eax + 8], ecx
movzx eax, word [ebp + 0x32]
push eax
push dword [esp + 0x70]
push esi
push dword [esp + 0x68]
push 0x29
push edi
call fcn.0057b858
push str.non_unique_entry_in_index
push 3
push edi
call fcn.00582f5d
add esp, 0x40
push dword [esp + 0x3c]
push edi
call fcn.00582757
push esi
push edi
call fcn.00584970
add esp, 0x10
jmp 0x572286
mov ebp, dword [esp + 0x20]
push dword [esp + 0x8c]
push edi
call fcn.0058273c
push dword [esp + 0xa4]
mov ecx, dword [edi + 0x6c]
mov esi, dword [esp + 0x20]
push esi
mov dword [eax + 8], ecx
call fcn.005742f7
mov ecx, dword [esp + 0x50]
add esp, 0x10
mov ebp, dword [ebp + 0x14]
inc ecx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x40], ecx
test ebp, ebp
jne 0x571f7a
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x44]
push esi
push dword [esp + 0x3c]
push 0x27
push edi
call fcn.0057b76b
lea eax, [esi - 1]
push eax
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0x18
cmp byte [esp + 0x5b], 0x71
mov dword [eax + 8], ecx
je 0x5723be
push str.wrong__of_entries_in_index
push 2
push edi
call fcn.00582f5d
mov eax, dword [esp + 0x38]
add esp, 0xc
mov eax, dword [eax + 8]
mov dword [esp + 0x10], eax
test eax, eax
je 0x5723a1
mov ecx, dword [esp + 0x60]
push 8
pop ebp
cmp ecx, eax
je 0x572391
mov eax, dword [esp + 0x70]
push 3
pop esi
add eax, 0xfffffff8
push esi
add eax, ebp
push eax
push 0x62
push edi
call fcn.0057b76b
push esi
push ebx
push ebp
push 0x35
push edi
call fcn.0057b786
push 0x90
push edi
mov esi, eax
call fcn.0057bb2b
mov eax, dword [esp + 0x3c]
push dword [eax]
push 4
push edi
call fcn.00582f5d
push 3
push 2
push 4
push 0x6f
push edi
call fcn.0057b786
add esp, 0x4c
push edi
call fcn.00545846
push esi
push edi
call fcn.0058273c
mov ecx, dword [edi + 0x6c]
add esp, 0xc
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x60]
mov eax, dword [eax + 0x14]
inc ebp
mov dword [esp + 0x10], eax
test eax, eax
jne 0x572322
mov ebp, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
test eax, eax
je 0x5723be
movzx eax, word [eax + 0x32]
push eax
push dword [esp + 0x34]
push dword [esp + 0x1c]
call fcn.00573dd7
add esp, 0xc
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov esi, dword [esi]
mov dword [esp + 0x1c], esi
test esi, esi
jne 0x57171a
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x34], ecx
cmp ecx, dword [ebp + 0x14]
jl 0x571536
push ebx
push 0x657f1c
push 7
push edi
call fcn.0057b8b9
mov esi, eax
add esp, 0x10
test esi, esi
je 0x57242a
xor eax, eax
inc eax
sub eax, dword [esp + 0x18]
mov dword [esi + 8], eax
or eax, 0xffffffff
push 0xb
mov byte [esi + 0x29], al
mov dword [esi + 0x38], 0x65dba0
mov byte [esi + 0x65], al
call fcn.00561e8a
pop ecx
mov dword [esi + 0x74], eax
mov edx, dword [edi + 0x6c]
push ebx
push edi
sub edx, 2
call fcn.0058273c
pop ecx
pop ecx
mov dword [eax + 0xc], edx
jmp 0x572957
test esi, esi
jne 0x57246a
mov ebx, dword [esp + 0x14]
push ebx
call fcn.005735fc
pop ecx
test eax, eax
jne 0x572957
mov eax, dword [ebx]
movzx eax, byte [eax + 0x54]
push dword [eax*8 + 0x657f38]
jmp 0x570039
test byte [ebp + 0x18], 0x40
jne 0x572957
mov eax, dword [str.UTF8]
mov edi, 0x657f38
jmp 0x572492
push eax
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
je 0x572498
add edi, 8
mov eax, dword [edi]
test eax, eax
jne 0x572480
jmp 0x5724bf
mov cl, byte [edi + 4]
movzx eax, cl
test cl, cl
push 2
pop ecx
cmovne ecx, eax
mov eax, dword [ebp + 0x10]
mov byte [esp + 0x44], cl
push dword [esp + 0x44]
mov eax, dword [eax + 0xc]
push ebp
mov byte [eax + 0x4d], cl
call fcn.00577314
pop ecx
pop ecx
cmp dword [edi], ebx
jne 0x572957
push esi
push str.unsupported_encoding:__s
push dword [esp + 0x1c]
call fcn.00561f37
jmp 0x572954
push dword [esp + 0x28]
mov eax, dword [ecx + 8]
push edi
mov dword [esp + 0x18], eax
call fcn.00585486
pop ecx
pop ecx
test esi, esi
je 0x572553
mov edx, dword [esp + 0x34]
test byte [edx + 5], 8
jne 0x572553
push ebx
push 0x657f80
push 2
push edi
call fcn.0057b8b9
mov edi, eax
mov eax, dword [esp + 0x38]
push esi
mov dword [edi + 4], eax
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x24]
mov dword [edi + 0x1c], eax
call fcn.00559afb
mov dword [edi + 0x20], eax
add esp, 0x14
xor eax, eax
inc eax
mov word [edi + 0x16], ax
cmp dword [esp + 0x10], eax
jne 0x572957
mov eax, dword [ebp + 0x20]
and eax, 0x10000000
or eax, ebx
je 0x572957
mov byte [edi + 0x14], 0xbb
jmp 0x572957
push ebx
push 0x657f88
push 3
push edi
call fcn.0057b8b9
mov ecx, dword [esp + 0x38]
push edi
mov dword [eax + 4], ecx
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x20], ecx
call fcn.0058499e
jmp 0x56feb6
mov eax, dword [esp + 0x14]
mov esi, ebx
push ebx
mov dword [eax + 0x2c], 1
call fcn.00530e82
pop ecx
jmp 0x5725b4
push eax
push 1
push edi
inc esi
call fcn.00582f5d
push ebx
xor eax, eax
inc eax
push eax
push eax
push 0x54
push edi
call fcn.0057b786
push esi
call fcn.00530e82
add esp, 0x24
test eax, eax
jne 0x572593
push edi
call fcn.0058499e
jmp 0x56fc4b
mov eax, dword [esp + 0x38]
mov ecx, ebx
push 0xc
cmp dword [eax], ebx
pop eax
cmovne eax, dword [esp + 0x28]
mov dword [esp + 0x44], eax
test esi, esi
je 0x57261e
push str.full
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x5725f1
xor ecx, ecx
inc ecx
jmp 0x57261e
push str.restart
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x572607
push 2
pop ecx
jmp 0x57261e
push str.truncate
push esi
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
mov ecx, ebx
push 3
pop eax
cmove ecx, eax
mov eax, dword [esp + 0x14]
push 3
pop edx
push 1
push ecx
mov dword [eax + 0x2c], edx
mov eax, dword [esp + 0x4c]
push eax
push edx
push edi
call fcn.0057b786
push ebx
push 3
push 1
push 0x54
push edi
call fcn.0057b786
add esp, 0x28
jmp 0x572957
test esi, esi
je 0x572660
push esi
call fcn.00559afb
push eax
push ebp
call fcn.00528890
add esp, 0xc
cmp dword [ebp + 0x110], 0x5862ce
jne 0x56fdf3
mov ebx, dword [ebp + 0x114]
jmp 0x56fdf3
push ebp
call fcn.00524cdd
jmp 0x56fc4b
test esi, esi
je 0x5726a2
push esi
call fcn.00559afb
pop ecx
mov ecx, eax
mov dword [esp + 0x10], ecx
test cl, 2
je 0x572957
jmp 0x5726aa
mov dword [esp + 0x10], 0xfffe
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x28]
mov dword [esp + 0x70], eax
inc eax
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x28]
cmp dword [esp + 0x24], ebx
je 0x5726cb
mov edx, eax
mov dword [esp + 0x30], edx
jmp 0x5726db
mov edx, dword [ebp + 0x14]
dec edx
mov dword [esp + 0x30], edx
cmp eax, edx
jg 0x572815
mov ecx, eax
shl ecx, 4
mov dword [esp + 0x18], ecx
cmp eax, 1
je 0x572801
push eax
push esi
call fcn.0055e161
mov eax, dword [ebp + 0x10]
pop ecx
pop ecx
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx + 0xc]
mov edx, dword [eax + 0x10]
mov dword [esp + 0x78], edx
test edx, edx
je 0x5727f9
mov edx, dword [edx + 8]
mov dword [esp + 0x44], edx
test dword [edx + 0x1c], 0x100
je 0x5727ee
mov ax, word [edx + 0x26]
add ax, 0x2e
movzx eax, ax
mov dword [esp + 0x1c], eax
mov eax, dword [edx + 8]
jmp 0x572741
test byte [eax + 0x38], 0x80
je 0x57278d
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x572738
cmp word [esp + 0x1c], bx
je 0x57278d
push 0x70
push edx
push dword [esp + 0x30]
push dword [esp + 0x7c]
push esi
call fcn.0056d55f
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
cwde
and ecx, 1
push eax
mov eax, dword [edi + 0x6c]
add ecx, 2
add eax, ecx
push eax
push dword [esp + 0x8c]
push 0x21
push edi
call fcn.0057b786
mov ecx, dword [esp + 0x40]
add esp, 0x28
mov edx, dword [esp + 0x44]
push dword [edx]
mov eax, dword [ebp + 0x10]
push dword [eax + ecx]
push str.ANALYZE___w_.__w_
push ebp
call fcn.0056cc7e
add esp, 0x10
mov edx, eax
test byte [esp + 0x10], 1
je 0x5727d6
push esi
call fcn.00569765
push 0xfffffffffffffffa
push edx
push ebx
mov esi, eax
push esi
push ebx
push 0x75
push edi
call fcn.0057b7e0
push 1
push esi
push 0x54
push edi
call fcn.0057b76b
mov esi, dword [esp + 0x44]
add esp, 0x30
jmp 0x5727ea
push 0xfffffffffffffffa
push edx
push ebx
push ebx
push ebx
push 0x94
push edi
call fcn.0057b7e0
add esp, 0x1c
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x78]
mov edx, dword [edx]
jmp 0x572704
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
inc eax
add ecx, 0x10
mov dword [esp + 0x28], eax
mov dword [esp + 0x18], ecx
cmp eax, edx
jle 0x5726e4
push 0xa6
push edi
call fcn.0057b73c
jmp 0x57003f
test esi, esi
je 0x572849
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
pop ecx
pop ecx
test eax, eax
jne 0x572849
push dword [esp + 0x48]
push dword [esp + 0x48]
call fcn.00524d4a
pop ecx
pop ecx
or eax, 0xffffffff
push eax
push eax
call fcn.00524d4a
jmp 0x56feae
test esi, esi
je 0x5728ac
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
pop ecx
pop ecx
test eax, eax
jne 0x5728ac
or eax, 0xffffffff
push eax
push eax
call fcn.00524e2b
pop ecx
pop ecx
mov ecx, eax
cmp dword [esp + 0x48], ebx
jl 0x5728ac
jg 0x572889
cmp dword [esp + 0x44], ebx
jbe 0x5728ac
mov eax, ecx
or eax, edx
je 0x57289d
cmp edx, dword [esp + 0x48]
jl 0x5728ac
jg 0x57289d
cmp ecx, dword [esp + 0x44]
jbe 0x5728ac
push dword [esp + 0x48]
push dword [esp + 0x48]
call fcn.00524e2b
pop ecx
pop ecx
or ebx, 0xffffffff
push ebx
push ebx
call fcn.00524e2b
jmp 0x56feae
test esi, esi
je 0x5728f1
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
pop ecx
pop ecx
test eax, eax
jne 0x5728f1
cmp dword [esp + 0x48], ebx
jl 0x5728f1
mov eax, dword [esp + 0x44]
jg 0x5728e0
cmp eax, ebx
jb 0x5728f1
and eax, 0x7fffffff
push eax
push 0xb
push ebp
call fcn.00532291
add esp, 0xc
mov eax, dword [ebp + 0xa4]
jmp 0x57294b
test esi, esi
je 0x572929
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00560667
pop ecx
pop ecx
test eax, eax
jne 0x572929
cmp dword [esp + 0x48], ebx
jl 0x572929
mov eax, dword [esp + 0x44]
jg 0x57291e
cmp eax, ebx
jb 0x572929
and eax, 0x7fffffff
mov dword [ebp + 0x1f0], eax
mov eax, dword [ebp + 0x1f0]
jmp 0x57294b
test esi, esi
je 0x572945
push esi
call fcn.00559afb
push eax
push ebp
call fcn.005315b8
add esp, 0xc
mov eax, dword [ebp + 0x1f4]
cdq
push edx
push eax
push edi
call fcn.005557d7
add esp, 0xc
push dword [esp + 0x90]
push ebp
call fcn.00560283
mov eax, dword [esp + 0x90]
pop ecx
pop ecx
test eax, eax
je 0x57297a
push eax
push ebp
call fcn.00560283
pop ecx
pop ecx
pop ebx
mov ecx, dword [esp + 0xac]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.0059d866
add esp, 0xa4
ret