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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x54], ecx
mov edx, dword [ebp + 8]
mov eax, dword [0x72a00c]
xor eax, ebp
mov dword [esp + 0xb8], eax
mov ebx, dword [edx + 0x18]
mov eax, dword [ebx]
mov dword [esp + 4], eax
movzx eax, byte [ecx]
cmp eax, 0x7f
jg 0x5eeedb
lea ecx, [eax - 0x2e]
cmp ecx, 0x1d
ja case.default.0x5eee94
jmp dword [ecx*4 + 0x720ed8]
mov eax, dword [esp + 4]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
jne case.0x5eee94.56
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
mov cl, byte [eax]
cmp cl, 0xa3
jne 0x5eeebb
mov cl, byte [eax + 2]
cmp cl, 0x80
je 0x5ef187
movzx ecx, cl
cmp ecx, 0xa4
jne 0x5ef193
add eax, 0x14
jmp 0x5ef18d
cmp eax, 0x91
jle 0x5eef5b
cmp eax, 0x92
je 0x5ef232
cmp eax, 0x9e
je 0x5eef2a
cmp eax, 0x9f
jne case.0x5eee94.56
mov dword [esp + 0x28], ebx
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + 0x14]
test edi, edi
je 0x5ef39e
mov esi, dword [edi]
jmp 0x5ef3a0
cmp eax, 0x11
je case.0x5eee94.47
cmp eax, 0x2b
jne case.0x5eee94.56
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + 0x10]
test edi, edi
je case.0x5eee94.46
mov eax, dword [edi + 4]
test eax, 0x82000
je 0x5ef2b0
bt eax, 0x13
jb 0x5eef51
add edi, 0xc
jmp 0x5eef57
mov edi, dword [edi + 0x14]
add edi, 8
mov edi, dword [edi]
jmp 0x5eef30
cmp eax, 0x80
je case.0x5eee94.47
cmp eax, 0x83
jne case.0x5eee94.56
mov eax, dword [ebp + 0xc]
mov esi, dword [eax + 0xc]
mov dword [esp + 0x28], ebx
mov eax, dword [ebx + 0x18]
test al, 0x28
mov edi, dword [esp + 4]
je 0x5ef501
mov ecx, str.index_expressions
test al, 0x20
jne 0x5eefab
mov ecx, str.CHECK_constraints
test al, 4
jne 0x5eefab
test al, 8
mov eax, str.partial_index_WHERE_clauses
mov ecx, str.generated_columns
cmove ecx, eax
push ecx
push str.the__.__operator
push str._s_prohibited_in__s
push edi
call fcn.0057bd30
add esp, 0x10
cmp dword [ebp + 0xc], 0
je 0x5ef501
mov eax, dword [edi]
mov ecx, dword [ebp + 0xc]
test byte [ecx + 4], 3
jne 0x5eefdf
mov edx, dword [ecx + 0x24]
test edx, edx
jg 0x5ef4fe
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x5eefce
jmp 0x5ef501
mov eax, dword [ebp + 0xc]
test byte [eax + 5], 0x10
je case.0x5eee94.56
mov edi, dword [ebx + 0x10]
mov esi, ebx
mov eax, dword [ebx + 0x18]
test al, 0x2e
je 0x5ef2f6
mov ecx, str.index_expressions
test al, 0x20
jne 0x5ef029
mov ecx, str.CHECK_constraints
test al, 4
jne 0x5ef029
test al, 8
mov eax, str.partial_index_WHERE_clauses
mov ecx, str.generated_columns
cmove ecx, eax
push ecx
push str.subqueries
push str._s_prohibited_in__s
push dword [esp + 0x10]
call fcn.0057bd30
add esp, 0x10
cmp dword [ebp + 0xc], 0
je 0x5ef4c5
mov ecx, dword [ebp + 0xc]
mov byte [ecx], 0x6f
mov eax, dword [esp + 4]
mov eax, dword [eax]
test byte [ecx + 4], 3
jne 0x5ef067
mov edx, dword [ecx + 0x24]
test edx, edx
jg 0x5ef4c2
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x5ef056
jmp 0x5ef4c5
mov ecx, edx
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0xa0], xmm0
movdqa xmmword [esp + 0x90], xmm0
test ebx, ebx
je 0x5ef0ae
xor eax, eax
mov esi, ebx
mov edx, dword [esi + 0x10]
mov dword [esp + eax*4 + 0x90], edx
mov esi, dword [esi + 0xc]
test esi, esi
je 0x5ef0ae
lea edx, [eax + 1]
cmp eax, 7
mov eax, edx
jb 0x5ef093
mov esi, dword [ebp + 0xc]
mov edx, dword [esi + 0xc]
test edx, edx
je 0x5ef0bd
call fcn.005eb0a0
add esi, 0xc
mov eax, esi
mov eax, dword [eax]
mov cl, byte [eax]
movzx edx, cl
lea edi, [edx - 0xa0]
cmp edi, 2
jae 0x5ef0d9
add eax, 0xc
jmp 0x5ef0c2
cmp edx, 0xa3
jne 0x5ef0e4
mov cl, byte [eax + 2]
mov edi, dword [esp + 4]
movzx ecx, cl
lea edx, [ecx - 0x8f]
cmp edx, 3
jb 0x5ef129
cmp ecx, 0x6b
je 0x5ef129
cmp ecx, 0x9a
jne 0x5ef17f
test byte [eax + 6], 0x20
jne 0x5ef17f
mov ecx, dword [eax + 0x2c]
test ecx, ecx
je 0x5ef17f
movsx eax, word [eax + 0x20]
test eax, eax
js 0x5ef129
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x5ef129
shl eax, 4
test byte [ecx + eax + 4], 0xf
je 0x5ef17f
cmp byte [edi + 0xcc], 1
ja 0x5ef17f
xor eax, eax
mov ecx, dword [ebp + 0xc]
cmp byte [ecx], 0x31
sete al
or byte [ecx + 5], 8
mov dword [ecx + 8], eax
mov byte [ecx], 0x91
test ebx, ebx
je 0x5ef16c
xor eax, eax
mov ecx, dword [esp + eax*4 + 0x90]
mov edx, ebx
mov dword [ebx + 0x10], ecx
mov edx, dword [ebx + 0xc]
test edx, edx
je 0x5ef16c
mov ebx, edx
lea ecx, [eax + 1]
cmp eax, 7
mov eax, ecx
jb 0x5ef14d
mov edx, dword [esi]
test edx, edx
je 0x5ef179
mov ecx, dword [edi]
call fcn.005a8230
mov dword [esi], 0
xor ebx, ebx
inc ebx
jmp 0x5ef4e6
mov eax, dword [eax + 0x14]
add eax, 0x1c
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x5ef196
xor eax, eax
inc eax
cmp byte [edx], 0x2e
jne 0x5ef1cb
mov ecx, dword [edx + 0x14]
mov edx, dword [ecx + 8]
mov bl, byte [edx]
cmp bl, 0xa3
jne 0x5ef1ab
mov bl, byte [edx + 2]
cmp bl, 0x80
je 0x5ef308
movzx esi, bl
cmp esi, 0xa4
jne 0x5ef314
add edx, 0x14
jmp 0x5ef30e
mov ecx, dword [edx + 0x10]
jmp 0x5ef31e
mov eax, dword [ebx + 4]
mov edx, dword [ebp + 0xc]
mov byte [edx], 0x9a
mov ecx, dword [eax + 0x18]
mov dword [edx + 0x2c], ecx
mov eax, dword [eax + 0x34]
mov dword [edx + 0x1c], eax
dec word [edx + 0x20]
mov byte [edx + 1], 0x44
jmp case.0x5eee94.56
mov dword [esp + 0x28], ebx
mov eax, dword [ebp + 0xc]
mov esi, dword [eax + 8]
mov edi, dword [esp + 4]
mov edx, dword [edi]
lea ecx, [eax + 0x1c]
mov dword [esp + 0x44], ecx
mov ecx, edx
mov dword [eax + 0x1c], 0xffffffff
mov dword [esp + 0x24], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x30], 0
jmp 0x5ef695
mov eax, dword [ebx + 0x18]
test al, 0x2e
je case.0x5eee94.56
mov ecx, str.index_expressions
test al, 0x20
jne 0x5ef25e
mov ecx, str.CHECK_constraints
test al, 4
jne 0x5ef25e
test al, 8
mov eax, str.partial_index_WHERE_clauses
mov ecx, str.generated_columns
cmove ecx, eax
push ecx
push str.parameters
push str._s_prohibited_in__s
push dword [esp + 0x10]
call fcn.0057bd30
add esp, 0x10
cmp dword [ebp + 0xc], 0
je case.0x5eee94.56
mov eax, dword [ebp + 0xc]
mov byte [eax], 0x6f
mov eax, dword [esp + 4]
mov eax, dword [eax]
mov edx, dword [esp + 0x54]
test byte [edx + 4], 3
jne 0x5ef2a0
mov ecx, dword [edx + 0x24]
test ecx, ecx
jg 0x5ef396
mov edx, dword [edx + 0xc]
mov dword [esp + 0x54], edx
test edx, edx
jne 0x5ef28b
jmp case.0x5eee94.56
movzx eax, byte [edi]
cmp eax, 0x9d
je 0x5ef2c3
cmp eax, 0x39
jne case.0x5eee94.46
push edi
push edx
call fcn.005eee50
add esp, 8
mov ebx, 2
cmp eax, 2
je 0x5ef4e6
cmp byte [edi], 0x9d
jne case.0x5eee94.46
mov ecx, dword [ebp + 0xc]
mov al, byte [ecx]
mov byte [ecx + 2], al
mov byte [ecx], 0xa2
xor ebx, ebx
jmp 0x5ef4e6
mov ecx, edx
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x14]
call fcn.005eb140
jmp 0x5ef4c5
mov edx, dword [edx + 0x14]
add edx, 0x1c
mov edx, dword [edx]
mov edx, dword [edx]
jmp 0x5ef317
xor edx, edx
inc edx
cmp edx, eax
jne 0x5ef34c
mov ecx, dword [ecx + 0x1c]
mov dl, byte [ecx]
cmp dl, 0xa3
jne 0x5ef328
mov dl, byte [ecx + 2]
cmp dl, 0x80
je 0x5ef33d
movzx edx, dl
cmp edx, 0xa4
jne 0x5ef349
add ecx, 0x14
jmp 0x5ef343
mov ecx, dword [ecx + 0x14]
add ecx, 0x1c
mov ecx, dword [ecx]
mov edx, dword [ecx]
jmp 0x5ef34c
xor edx, edx
inc edx
cmp eax, edx
je case.0x5eee94.56
push str.row_value_misused
push dword [esp + 8]
call fcn.0057bd30
add esp, 8
cmp dword [ebp + 0xc], 0
je case.0x5eee94.56
mov eax, dword [esp + 4]
mov eax, dword [eax]
mov edx, dword [esp + 0x54]
test byte [edx + 4], 3
jne 0x5ef386
mov ecx, dword [edx + 0x24]
test ecx, ecx
jg 0x5ef396
mov edx, dword [edx + 0xc]
mov dword [esp + 0x54], edx
test edx, edx
jne 0x5ef375
jmp case.0x5eee94.56
mov dword [eax + 0x44], ecx
jmp case.0x5eee94.56
xor esi, esi
mov eax, dword [esp + 4]
mov ecx, dword [eax]
movzx ebx, byte [ecx + 0x54]
mov edx, 0x4001
mov eax, dword [esp + 0x28]
and edx, dword [eax + 0x18]
mov dword [esp + 0x24], edx
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 8]
mov dword [esp + 8], edx
push 0
mov dword [esp + 0x10], ebx
push ebx
mov dword [esp + 0x28], esi
push esi
call fcn.0057ec30
add esp, 0xc
test eax, eax
je 0x5ef445
mov edx, eax
mov ebx, dword [eax + 0x14]
test byte [eax + 5], 4
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
je 0x5f05d6
mov edx, dword [ebp + 0xc]
or byte [edx + 6], 8
cmp dword [esp + 0x20], 2
jne 0x5ef4a1
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x94], 0xbff00000
mov dword [esp + 0x90], 0
cmp byte [eax], 0x8f
jne 0x5f05ad
mov esi, dword [eax + 8]
test esi, esi
je 0x5f0583
push esi
call fcn.00687040
add esp, 4
and eax, 0x3fffffff
jmp 0x5f0585
mov esi, dword [esp + 4]
mov ecx, dword [esi]
movzx eax, byte [esp + 0xc]
mov edx, dword [esp + 8]
push 0
push eax
push 0xfffffffffffffffe
call fcn.0057ec30
add esp, 0xc
xor ebx, ebx
cmp byte [esi + 0xcc], 1
ja 0x5ef498
test eax, eax
je 0x5f03ba
mov dword [esp + 8], eax
push dword [ebp + 0xc]
push str.wrong_number_of_arguments_to_function__T__
push dword [esp + 0xc]
call fcn.0057bd30
add esp, 0xc
mov eax, dword [esp + 0x28]
inc dword [eax + 0x14]
jmp 0x5f07a8
mov dword [esp + 8], eax
jmp 0x5f07aa
mov ebx, dword [esp + 0xc]
mov eax, dword [ebx + 0x20]
cmp byte [eax], 0x75
mov eax, 0x800000
mov ecx, 0x7800000
cmove ecx, eax
mov dword [edx + 0x1c], ecx
mov edx, ebx
jmp 0x5f05d6
mov dword [eax + 0x44], edx
cmp edi, dword [esi + 0x10]
mov ecx, esi
je 0x5ef4d3
mov eax, dword [ebp + 0xc]
or byte [eax + 4], 0x40
or byte [ecx + 0x18], 0x40
xor ebx, ebx
mov eax, dword [esp + 4]
cmp dword [eax + 0x24], 0
setne bl
add ebx, ebx
mov ecx, dword [esp + 0xb8]
xor ecx, ebp
call fcn.0066e1f1
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [eax + 0x44], edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
xor eax, eax
cmp byte [ecx], 0x39
je 0x5ef517
mov eax, dword [esi + 8]
mov esi, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esi + 8]
mov dword [esp + 0x24], edx
mov edx, dword [ecx + 8]
mov dword [esp + 0xc], edx
cmp byte [edi + 0xcc], 2
jb 0x5ef573
mov edx, dword [edi + 0x104]
test edx, edx
je 0x5ef573
mov edi, edx
cmp dword [edi], ecx
je 0x5ef54b
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x5ef53a
mov edi, dword [esp + 4]
jmp 0x5ef55a
mov ecx, dword [ebp + 0xc]
mov dword [edi], ecx
mov edi, dword [esp + 4]
mov edx, dword [edi + 0x104]
test edx, edx
je 0x5ef573
mov ecx, dword [ebp + 0xc]
add ecx, 0x2c
cmp dword [edx], esi
je 0x5ef571
mov edx, dword [edx + 0xc]
test edx, edx
jne 0x5ef564
jmp 0x5ef573
mov dword [edx], ecx
mov ecx, dword [edi]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp + 0xc]
lea edx, [ecx + 0x1c]
mov dword [esp + 0x44], edx
mov dword [ecx + 0x1c], 0xffffffff
mov dword [esp + 0x38], 0
test eax, eax
je 0x5ef5b1
mov ecx, dword [esp + 0x28]
test byte [ecx + 0x18], 6
mov esi, dword [esp + 0xc]
je 0x5ef5c9
mov dword [esp + 0x30], 0
jmp 0x5ef68e
mov dword [esp + 0x30], 0
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0xc]
jmp 0x5ef695
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x14]
test edx, edx
jle 0x5ef651
mov ecx, dword [ecx + 0x10]
xor edi, edi
mov dword [esp + 0x20], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 8], edi
shl edi, 4
mov ebx, dword [ecx + edi]
xor esi, esi
movzx ecx, byte [ebx + esi]
movzx edx, byte [eax + esi]
cmp cl, dl
jne 0x5ef5ff
test ecx, ecx
jne 0x5ef60d
jmp 0x5ef633
mov cl, byte [ecx + 0x717d00]
cmp cl, byte [edx + 0x717d00]
jne 0x5ef610
inc esi
jmp 0x5ef5ed
mov edi, dword [esp + 8]
inc edi
mov edx, dword [esp + 0x20]
cmp edi, edx
mov ecx, dword [esp + 0x10]
jne 0x5ef5e1
mov dword [esp + 0x30], 0
mov edi, dword [esp + 4]
mov esi, dword [esp + 0xc]
jmp 0x5ef65f
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + edi + 0xc]
mov dword [esp + 0x30], ecx
mov edi, dword [esp + 4]
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 8]
jmp 0x5ef65b
xor ecx, ecx
mov dword [esp + 0x30], 0
cmp ecx, edx
jne 0x5ef68a
xor ecx, ecx
movzx edx, byte [ecx + str.main]
movzx ebx, byte [eax + ecx]
cmp dl, bl
jne 0x5ef679
test edx, edx
jne 0x5ef687
jmp 0x5f040a
mov dl, byte [edx + 0x717d00]
cmp dl, byte [ebx + 0x717d00]
jne 0x5ef68a
inc ecx
jmp 0x5ef661
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x24], 0
sete dl
mov dword [esp + 0x48], edx
add eax, 0x2c
mov dword [esp + 0x50], eax
lea eax, [edi + 0x74]
mov dword [esp + 0x4c], eax
lea eax, [esi + 1]
mov dword [esp + 0x68], eax
xor edx, edx
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x2c], eax
mov eax, dword [eax + 4]
test eax, eax
je 0x5efd9b
mov dword [esp + 0x10], edx
cmp dword [eax], 0
jle 0x5efda5
mov dword [esp + 0x70], eax
add eax, 8
mov dword [esp + 0x14], 0
mov dword [esp + 0x6c], 0
mov edi, dword [eax + 0x10]
test byte [eax + 0x29], 0x20
mov dword [esp + 8], eax
jne 0x5ef730
cmp dword [esp + 0x24], 0
mov edx, dword [esp + 0x10]
jne 0x5ef964
jmp 0x5efa69
mov dword [esp + 0x34], edi
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
mov edx, dword [esp + 0x10]
jle 0x5ef947
mov dword [esp + 0x20], eax
xor ebx, ebx
xor esi, esi
mov edi, edx
mov dword [esp + 0x40], ecx
lea ecx, [esi + esi*4]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x10], ecx
lea ecx, [eax + ecx*4]
add ecx, 8
mov edx, dword [esp + 0xc]
push dword [esp + 0x38]
push dword [esp + 0x28]
call fcn.005f1a30
add esp, 8
test eax, eax
je 0x5ef814
cmp dword [esp + 0x14], 0
jle 0x5ef851
mov eax, dword [esp + 8]
test byte [eax + 0x29], 4
je 0x5ef7ef
mov eax, dword [eax + 0x30]
mov ecx, dword [eax]
mov dword [esp + 0x5c], ecx
test ecx, ecx
jle 0x5ef7ef
xor ecx, ecx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x74], eax
mov dword [esp + 0x60], ecx
mov ecx, dword [eax + ecx*8 + 8]
xor eax, eax
movzx ebx, byte [ecx + eax]
mov edx, dword [esp + 0xc]
movzx edx, byte [edx + eax]
cmp bl, dl
jne 0x5ef7cf
test ebx, ebx
jne 0x5ef7dd
jmp 0x5ef804
mov bl, byte [ebx + 0x717d00]
cmp bl, byte [edx + 0x717d00]
jne 0x5ef7e0
inc eax
jmp 0x5ef7b9
mov ecx, dword [esp + 0x60]
inc ecx
cmp ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x74]
jne 0x5ef7af
xor edx, edx
test edi, edi
je 0x5ef853
mov ecx, dword [esp + 0x18]
mov edx, edi
call fcn.005b4580
xor edx, edx
jmp 0x5ef853
mov eax, dword [esp + 8]
movzx eax, byte [eax + 0x24]
test al, 0x10
mov ebx, dword [esp + 0x58]
jne 0x5ef81c
mov edx, edi
mov ecx, dword [esp + 0x40]
jmp 0x5ef890
test al, 8
jne 0x5ef845
xor edx, edx
mov dword [esp + 0x14], 0
test edi, edi
je 0x5ef853
mov ecx, dword [esp + 0x18]
mov edx, edi
call fcn.005b4580
xor edx, edx
mov dword [esp + 0x14], 0
jmp 0x5ef853
mov eax, dword [esp + 4]
mov ecx, dword [eax]
cmp byte [ecx + 0x57], 0
je 0x5ef8a0
mov edx, edi
mov eax, dword [ebp + 0xc]
mov word [eax + 0x20], si
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov eax, dword [edi + ebx*4 + 0x14]
mov ecx, eax
or ecx, 0x40
mov dword [edi + ebx*4 + 0x14], ecx
inc dword [esp + 0x14]
test al, al
js 0x5ef9b8
mov ecx, dword [edi]
mov dword [esp + 0x3c], 2
mov eax, dword [esp + 8]
mov dword [esp + 0x1c], eax
xor ebx, ebx
inc ebx
inc esi
mov edi, edx
cmp esi, ecx
jl 0x5ef752
jmp 0x5ef949
mov eax, dword [ebp + 0xc]
movzx ebx, word [eax + 0x20]
mov edx, 0x34
push 0
call fcn.00580000
add esp, 4
test eax, eax
je 0x5ef851
xorps xmm1, xmm1
movups xmmword [eax], xmm1
movups xmmword [eax + 0x20], xmm1
pxor xmm0, xmm0
movups xmmword [eax + 0x10], xmm1
mov dword [eax + 0x30], 0
mov byte [eax], 0x9a
mov word [eax + 0x22], 0xffff
mov dword [eax + 0x18], 1
mov edx, dword [esp + 0x1c]
mov ecx, dword [edx + 0x2c]
mov dword [eax + 0x1c], ecx
mov word [eax + 0x20], bx
mov ecx, dword [edx + 0x10]
mov dword [eax + 0x2c], ecx
mov dword [eax + 4], 0x200000
test edi, edi
je 0x5ef920
mov ecx, dword [edi]
cmp dword [edi + 4], ecx
jle 0x5ef92f
lea edx, [ecx + 1]
mov dword [edi], edx
lea ecx, [ecx + ecx*4]
movdqu xmmword [edi + ecx*4 + 0xc], xmm0
mov dword [edi + ecx*4 + 8], eax
jmp 0x5ef851
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
mov edx, eax
call fcn.006104b0
jmp 0x5ef940
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
mov edx, edi
push eax
call fcn.00610510
add esp, 4
mov edx, eax
jmp 0x5ef853
xor ebx, ebx
cmp dword [esp + 0x24], 0
mov eax, dword [esp + 8]
je 0x5ef9c8
test ebx, ebx
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x34]
jne 0x5efd52
cmp dword [esp + 0x38], 0
je 0x5ef980
mov ecx, dword [esp + 0x30]
cmp dword [edi + 0x3c], ecx
jne 0x5efd52
test ecx, ecx
je 0x5efbbb
mov dword [esp + 0x10], edx
mov esi, dword [eax + 0xc]
test esi, esi
je 0x5ef9d1
xor eax, eax
mov ecx, dword [esp + 0x24]
movzx ecx, byte [ecx + eax]
movzx edx, byte [esi + eax]
cmp cl, dl
jne 0x5ef9a3
test ecx, ecx
jne 0x5ef9b5
jmp 0x5efa18
mov cl, byte [ecx + 0x717d00]
cmp cl, byte [edx + 0x717d00]
jne 0x5efa54
inc eax
jmp 0x5ef98d
mov dword [esp + 0x3c], 2
mov eax, dword [esp + 8]
mov dword [esp + 0x1c], eax
mov esi, dword [esp + 0xc]
jmp 0x5efd52
mov eax, dword [edi]
xor ecx, ecx
mov edx, dword [esp + 0x24]
movzx edx, byte [edx + ecx]
movzx ebx, byte [eax + ecx]
cmp dl, bl
jne 0x5ef9eb
test edx, edx
jne 0x5ef9f9
jmp 0x5efa18
mov dl, byte [edx + 0x717d00]
cmp dl, byte [ebx + 0x717d00]
jne 0x5ef9fc
inc ecx
jmp 0x5ef9d5
cmp dword [edi + 0x14], 1
jne 0x5efa54
mov ecx, dword [esp + 0x24]
mov edx, edi
push dword [esp + 0x30]
call fcn.005f1ba0
add esp, 4
test eax, eax
je 0x5efa54
mov eax, dword [esp + 4]
cmp byte [eax + 0xcc], 2
mov edx, dword [esp + 0x10]
jb 0x5efa65
test esi, esi
je 0x5efa65
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x104]
test eax, eax
mov esi, dword [esp + 0xc]
je 0x5efa69
mov ecx, dword [esp + 0x50]
cmp dword [eax], ecx
je 0x5efc1f
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x5efa43
jmp 0x5efa69
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 8]
jmp 0x5efd52
mov esi, dword [esp + 0xc]
mov dword [esp + 0x10], edx
test esi, esi
je 0x5efa8f
mov cl, byte [esi]
test cl, cl
je 0x5efa8f
xor ebx, ebx
mov edx, dword [esp + 0x68]
movzx eax, cl
add bl, byte [eax + 0x717d00]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x5efa7d
jmp 0x5efa91
xor ebx, ebx
movsx eax, word [edi + 0x22]
mov dword [esp + 0x40], eax
test eax, eax
jle 0x5efb8e
mov dword [esp + 0x34], edi
mov edx, dword [edi + 4]
xor eax, eax
mov dword [esp + 0x60], ebx
mov dword [esp + 0x20], eax
cmp byte [edx + 0xa], bl
jne 0x5efb63
mov ecx, dword [edx]
xor edi, edi
movzx ebx, byte [ecx + edi]
movzx eax, byte [esi + edi]
cmp bl, al
jne 0x5efad1
test ebx, ebx
jne 0x5efae3
jmp 0x5efae6
mov bl, byte [ebx + 0x717d00]
cmp bl, byte [eax + 0x717d00]
jne 0x5efb63
inc edi
jmp 0x5efabf
cmp dword [esp + 0x14], 0
jle 0x5efcc7
mov eax, dword [esp + 8]
test byte [eax + 0x29], 4
je 0x5efb9f
mov eax, dword [eax + 0x30]
mov ecx, dword [eax]
mov dword [esp + 0x5c], ecx
test ecx, ecx
jle 0x5efb9f
xor esi, esi
mov dword [esp + 0x58], eax
mov ebx, dword [eax + esi*8 + 8]
xor edi, edi
movzx ecx, byte [ebx + edi]
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + edi]
cmp cl, al
jne 0x5efb32
test ecx, ecx
jne 0x5efb40
jmp 0x5efb50
mov cl, byte [ecx + 0x717d00]
cmp cl, byte [eax + 0x717d00]
jne 0x5efb43
inc edi
jmp 0x5efb1c
inc esi
cmp esi, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
jne 0x5efb16
jmp 0x5efb9f
mov eax, dword [esp + 8]
mov al, byte [eax + 0x24]
test al, 0x10
mov esi, dword [esp + 0xc]
jne 0x5efbe9
mov eax, dword [esp + 0x20]
inc eax
add edx, 0x10
cmp eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x60]
jne 0x5efaae
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 8]
mov edi, dword [esp + 0x34]
jmp 0x5efd17
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 8]
jmp 0x5efd17
xor ebx, ebx
mov edx, dword [esp + 0x10]
test edx, edx
je 0x5efbb2
mov ecx, dword [esp + 0x18]
call fcn.005b4580
mov esi, dword [esp + 0xc]
jmp 0x5efccb
push 0x705076
push dword [esp + 0x3c]
mov dword [esp + 0x3c], edi
mov edi, edx
call fcn.00686dc0
mov edx, edi
mov edi, dword [esp + 0x3c]
add esp, 8
test eax, eax
mov eax, dword [esp + 8]
jne 0x5efd52
jmp 0x5ef980
test al, 8
jne 0x5efc2a
xor ebx, ebx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x10]
test edx, edx
mov edi, dword [esp + 0x34]
je 0x5efccf
mov ecx, dword [esp + 0x18]
call fcn.005b4580
xor ebx, ebx
mov dword [esp + 0x14], 0
jmp 0x5efccf
mov dword [eax], 0
jmp 0x5efa69
mov eax, dword [esp + 4]
mov ecx, dword [eax]
cmp byte [ecx + 0x57], 0
mov ebx, dword [esp + 0x10]
jne 0x5efccb
mov eax, dword [ebp + 0xc]
movzx edi, word [eax + 0x20]
mov edx, 0x34
push 0
call fcn.00580000
add esp, 4
test eax, eax
je 0x5efcc7
xorps xmm1, xmm1
movups xmmword [eax], xmm1
movups xmmword [eax + 0x20], xmm1
pxor xmm0, xmm0
movups xmmword [eax + 0x10], xmm1
mov dword [eax + 0x30], 0
mov byte [eax], 0x9a
mov word [eax + 0x22], 0xffff
mov dword [eax + 0x18], 1
mov edx, dword [esp + 0x1c]
mov ecx, dword [edx + 0x2c]
mov dword [eax + 0x1c], ecx
mov word [eax + 0x20], di
mov ecx, dword [edx + 0x10]
mov dword [eax + 0x2c], ecx
mov dword [eax + 4], 0x200000
mov ebx, dword [esp + 0x10]
test ebx, ebx
je 0x5efd74
mov ecx, dword [ebx]
cmp dword [ebx + 4], ecx
jle 0x5efd83
lea edx, [ecx + 1]
mov dword [ebx], edx
lea ecx, [ecx + ecx*4]
movdqu xmmword [ebx + ecx*4 + 0xc], xmm0
mov dword [ebx + ecx*4 + 8], eax
jmp 0x5efccb
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x14]
inc edx
movsx eax, word [edi + 0x20]
mov ecx, dword [esp + 0x20]
cmp ecx, eax
mov eax, ecx
mov ecx, 0xffff
cmove eax, ecx
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x20], ax
mov eax, dword [esp + 8]
test byte [eax + 0x29], 0x20
je 0x5efd13
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
mov ecx, dword [esp + 0x20]
lea ecx, [ecx + ecx*4]
or dword [eax + ecx*4 + 0x14], 0x40
mov eax, dword [esp + 8]
mov dword [esp + 0x1c], eax
test edx, edx
je 0x5efd21
mov dword [esp + 0x14], edx
jmp 0x5efd50
mov eax, dword [edi + 0x1c]
mov ecx, 0x200
and eax, ecx
mov ecx, eax
shr ecx, 9
xor ecx, 1
add dword [esp + 0x3c], ecx
test eax, eax
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x1c]
cmove edx, eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], 0
mov edx, ebx
mov dword [esp + 0x10], edx
mov ebx, dword [esp + 0x6c]
inc ebx
add eax, 0x48
mov edi, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x6c], ebx
cmp ebx, dword [eax]
mov eax, edi
jl 0x5ef70f
jmp 0x5efdad
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
mov edx, eax
call fcn.006104b0
jmp 0x5efd94
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
mov edx, ebx
push eax
call fcn.00610510
add esp, 4
mov ebx, eax
jmp 0x5efccb
mov esi, edi
xor eax, eax
mov edi, dword [esp + 0x1c]
jmp 0x5efdff
mov dword [esp + 0x14], 0
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x5efded
mov esi, dword [esp + 4]
mov eax, dword [edi + 0x2c]
mov ecx, dword [esp + 0x44]
mov dword [ecx], eax
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x50]
mov dword [ecx], eax
test byte [edi + 0x24], 0x48
mov edx, dword [esp + 0x10]
je 0x5efddc
mov ecx, dword [ebp + 0xc]
or byte [ecx + 6], 0x20
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
jmp 0x5efdff
mov esi, dword [esp + 4]
xor edi, edi
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], edi
jne 0x5efe56
cmp dword [esp + 0x38], 0
mov eax, dword [esp + 0x30]
jne 0x5f00f7
mov ecx, dword [esp + 0x4c]
mov ecx, dword [ecx]
mov dword [esp + 0x14], 0
test ecx, ecx
je 0x5f00f3
mov bl, byte [esi + 0x90]
cmp byte [esi + 0x91], 0
je 0x5efe5f
mov edx, dword [esp + 0x2c]
test byte [edx + 0x19], 4
jne 0x5efe9c
mov ecx, dword [esp + 0x18]
jmp 0x5eff2a
mov eax, dword [esp + 0x30]
jmp 0x5f00f7
mov edi, eax
cmp dword [esp + 0x24], 0
je 0x5efed4
cmp bl, 0x76
je 0x5efed4
xor ecx, ecx
movzx edx, byte [ecx + 0x705069]
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + ecx]
cmp dl, al
jne 0x5efe8b
test edx, edx
jne 0x5efe99
jmp 0x5eff33
mov dl, byte [edx + 0x717d00]
cmp dl, byte [eax + 0x717d00]
jne 0x5efed4
inc ecx
jmp 0x5efe6f
mov byte [esp + 8], bl
mov edi, eax
cmp dword [esp + 0x24], 0
je 0x5eff0c
mov ecx, dword [ecx]
xor edx, edx
mov eax, dword [esp + 0x24]
movzx ebx, byte [eax + edx]
movzx eax, byte [ecx + edx]
cmp bl, al
jne 0x5efec3
test ebx, ebx
jne 0x5efed1
jmp 0x5eff0c
mov bl, byte [ebx + 0x717d00]
cmp bl, byte [eax + 0x717d00]
jne 0x5eff18
inc edx
jmp 0x5efead
cmp dword [esp + 0x24], 0
je 0x5eff20
cmp bl, 0x75
je 0x5eff20
xor eax, eax
movzx ecx, byte [eax + 0x71d1ff]
mov edx, dword [esp + 0x24]
movzx edx, byte [edx + eax]
cmp cl, dl
jne 0x5efefb
test ecx, ecx
jne 0x5eff09
jmp 0x5eff38
mov cl, byte [ecx + 0x717d00]
cmp cl, byte [edx + 0x717d00]
jne 0x5eff18
inc eax
jmp 0x5efee2
xor ecx, ecx
cmp byte [esp + 8], 0x76
setne cl
jmp 0x5eff3a
mov dword [esp + 0x14], 0
mov eax, edi
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
jmp 0x5f00f7
xor ecx, ecx
inc ecx
jmp 0x5eff3a
xor ecx, ecx
mov eax, dword [esp + 0x44]
mov dword [esp + 0x40], ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
test eax, eax
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
je 0x5efffa
mov eax, dword [esp + 0xc]
xor edi, edi
test eax, eax
je 0x5eff86
mov al, byte [eax]
test al, al
je 0x5eff86
xor ecx, ecx
mov edx, dword [esp + 0x68]
movzx eax, al
add cl, byte [eax + 0x717d00]
mov al, byte [edx]
inc edx
test al, al
jne 0x5eff74
jmp 0x5eff88
xor ecx, ecx
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 0x3c]
movsx ebx, word [eax + 0x22]
test ebx, ebx
mov dword [esp + 0x30], edx
jle 0x5f0027
mov edi, dword [eax + 4]
mov dword [esp + 8], 0
mov dword [esp + 0x14], ebx
cmp byte [edi + 0xa], cl
jne 0x5effde
mov esi, dword [edi]
xor eax, eax
movzx edx, byte [esi + eax]
mov ebx, dword [esp + 0xc]
movzx ebx, byte [ebx + eax]
cmp dl, bl
jne 0x5effcd
test edx, edx
jne 0x5effdb
jmp 0x5f0005
mov dl, byte [edx + 0x717d00]
cmp dl, byte [ebx + 0x717d00]
jne 0x5effde
inc eax
jmp 0x5effb7
mov eax, dword [esp + 8]
inc eax
add edi, 0x10
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x14]
cmp eax, ebx
jne 0x5effae
mov ecx, ebx
mov esi, dword [esp + 4]
jmp 0x5f0033
mov eax, edi
mov edi, dword [esp + 0x1c]
jmp 0x5f00f7
mov eax, dword [esp + 0x20]
movsx eax, word [eax + 0x20]
mov edi, dword [esp + 8]
cmp edi, eax
mov eax, 0xffffffff
cmove edi, eax
mov esi, dword [esp + 4]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x14]
mov ecx, edi
cmp edi, ebx
mov eax, edx
jl 0x5f00d7
mov edi, ecx
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [ecx + eax]
movzx ecx, byte [eax + str._ROWID_]
cmp dl, cl
jne 0x5f0050
test edx, edx
jne 0x5f005e
jmp 0x5f00bd
mov dl, byte [edx + 0x717d00]
cmp dl, byte [ecx + 0x717d00]
jne 0x5f0061
inc eax
jmp 0x5f0037
xor edx, edx
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + edx]
movzx ecx, byte [edx + str.ROWID]
cmp al, cl
jne 0x5f007c
test eax, eax
jne 0x5f008a
jmp 0x5f00bd
mov al, byte [eax + 0x717d00]
cmp al, byte [ecx + 0x717d00]
jne 0x5f008d
inc edx
jmp 0x5f0063
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [ecx + eax]
movzx ecx, byte [eax + 0x71fde2]
cmp dl, cl
jne 0x5f00a8
test edx, edx
jne 0x5f00ba
jmp 0x5f00bd
mov dl, byte [edx + 0x717d00]
cmp dl, byte [ecx + 0x717d00]
jne 0x5f028b
inc eax
jmp 0x5f008f
mov eax, dword [esp + 0x20]
mov al, byte [eax + 0x1d]
and al, 2
cmp al, 1
mov eax, 0
sbb eax, eax
mov ecx, edi
or ecx, eax
mov eax, dword [esp + 0x30]
cmp ecx, ebx
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
jl 0x5f0b8b
inc dword [esp + 0x3c]
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x14], 0
jne 0x5f0128
cmp dword [esp + 0x3c], 1
jne 0x5f0128
test edi, edi
je 0x5f0128
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x14], eax
test al, 0x28
je 0x5f0144
xor eax, eax
inc eax
mov dword [esp + 0x3c], eax
jmp 0x5f01de
mov edi, dword [esp + 0x14]
test edi, edi
mov eax, dword [esp + 0x2c]
jne 0x5f03a3
mov eax, dword [eax + 0x18]
mov dword [esp + 0x14], eax
jmp 0x5f01de
xor ecx, ecx
mov esi, dword [esp + 0xc]
movzx eax, byte [esi + ecx]
movzx edx, byte [ecx + str._ROWID_]
cmp al, dl
jne 0x5f015f
test eax, eax
jne 0x5f016d
jmp 0x5f01c4
mov al, byte [eax + 0x717d00]
cmp al, byte [edx + 0x717d00]
jne 0x5f0170
inc ecx
jmp 0x5f014a
xor ecx, ecx
movzx eax, byte [esi + ecx]
movzx edx, byte [ecx + str.ROWID]
cmp al, dl
jne 0x5f0187
test eax, eax
jne 0x5f0195
jmp 0x5f01c4
mov al, byte [eax + 0x717d00]
cmp al, byte [edx + 0x717d00]
jne 0x5f0198
inc ecx
jmp 0x5f0172
xor ecx, ecx
movzx eax, byte [esi + ecx]
movzx edx, byte [ecx + 0x71fde2]
cmp al, dl
jne 0x5f01af
test eax, eax
jne 0x5f01c1
jmp 0x5f01c4
mov al, byte [eax + 0x717d00]
cmp al, byte [edx + 0x717d00]
jne 0x5f011c
inc ecx
jmp 0x5f019a
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x10]
test byte [eax + 0x1d], 2
mov eax, 1
mov dword [esp + 0x3c], eax
je 0x5f04e1
cmp dword [esp + 0x24], 0
jne 0x5f0263
mov eax, dword [esp + 0x14]
and eax, 0x80
je 0x5f0263
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 8]
mov dword [esp + 8], eax
mov eax, dword [eax]
mov dword [esp + 0x20], eax
test eax, eax
jle 0x5f0263
xor esi, esi
lea edi, [esi + esi*4]
mov eax, dword [esp + 8]
test byte [eax + edi*4 + 0x14], 3
je 0x5f021e
inc esi
cmp esi, dword [esp + 0x20]
jne 0x5f0207
jmp 0x5f0263
mov eax, dword [esp + 8]
mov ecx, dword [eax + edi*4 + 0xc]
test ecx, ecx
je 0x5f025a
cmp dword [esp + 0xc], 0
je 0x5f0215
xor eax, eax
movzx ebx, byte [ecx + eax]
mov edx, dword [esp + 0xc]
movzx edx, byte [edx + eax]
cmp bl, dl
jne 0x5f0249
test ebx, ebx
jne 0x5f0257
jmp 0x5f0296
mov bl, byte [ebx + 0x717d00]
cmp bl, byte [edx + 0x717d00]
jne 0x5f0215
inc eax
jmp 0x5f0233
cmp dword [esp + 0xc], 0
jne 0x5f0215
jmp 0x5f0296
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
inc dword [esp + 0x64]
test eax, eax
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
jne 0x5ef6dc
jmp 0x5f0380
mov eax, dword [esp + 0x30]
mov ecx, edi
jmp 0x5f00d7
mov eax, dword [esp + 8]
mov edi, dword [eax + edi*4 + 8]
mov eax, dword [edi + 4]
test byte [esp + 0x14], 1
jne 0x5f02cb
mov edx, eax
and edx, 0x10
je 0x5f02cb
push ecx
push str.misuse_of_aliased_aggregate__s
push dword [esp + 0xc]
call fcn.0057bd30
add esp, 0xc
mov ebx, 2
jmp 0x5ef4e6
test ax, ax
jns 0x5f02ea
bt dword [esp + 0x14], 0xe
jae 0x5f0375
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x28]
jne 0x5f0375
mov al, byte [edi]
cmp al, 0xa3
jne 0x5f02f3
mov al, byte [edi + 2]
cmp al, 0x80
je 0x5f0306
movzx eax, al
cmp eax, 0xa4
jne 0x5f0313
add edi, 0x14
jmp 0x5f030c
mov edi, dword [edi + 0x14]
add edi, 0x1c
mov eax, dword [edi]
cmp dword [eax], 1
jne 0x5f035f
mov edi, dword [esp + 4]
mov ecx, edi
mov edx, dword [esp + 8]
push dword [esp + 0x64]
push dword [ebp + 0xc]
push esi
call fcn.005f1d50
add esp, 0xc
cmp byte [edi + 0xcc], 2
jb 0x5f0e70
mov eax, dword [edi + 0x104]
test eax, eax
je 0x5f0e70
mov ecx, dword [ebp + 0xc]
cmp dword [eax], ecx
je 0x5f03ff
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x5f034b
jmp 0x5f0e70
push str.row_value_misused
push dword [esp + 8]
call fcn.0057bd30
add esp, 8
jmp 0x5f02c1
push ecx
push str.misuse_of_aliased_window_function__s
jmp 0x5f02b5
mov ebx, str.no_such_column
cmp dword [esp + 0x24], 0
je 0x5f03c9
mov dword [esp + 0x14], 0
xor eax, eax
mov dword [esp + 0x48], 0
jmp 0x5f0428
mov ebx, str.ambiguous_column_name
cmp edi, 1
jne 0x5f0426
xor edx, edx
inc edx
mov bl, 0x9a
mov edi, dword [ebp + 0xc]
jmp 0x5f0d7c
xor esi, esi
mov dword [esp + 8], 0
jmp 0x5f0770
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
mov dword [esp + 8], eax
test al, al
js 0x5f04f8
test dword [esp + 8], 0x4000800
je 0x5f0c13
mov dword [esp + 0x14], 0
mov al, 1
mov dword [esp + 0x48], eax
xor eax, eax
mov edx, dword [esp + 0x10]
jmp 0x5f0428
mov dword [eax], 0
jmp 0x5f0e70
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x10]
mov edx, dword [eax]
mov dword [esp + 0x38], edx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0xc]
jmp 0x5ef695
mov edi, esi
test edx, edx
mov ecx, dword [esp + 0x38]
je 0x5f049b
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x14]
dec eax
cmp dword [edx], eax
jne 0x5f048a
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 4]
bt eax, 0x17
jb 0x5f055a
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x5f045d
mov ecx, dword [esp + 0x18]
call fcn.005a8230
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0
mov edx, dword [eax + 0x10]
test edx, edx
mov ecx, dword [esp + 0x18]
je 0x5f0477
call fcn.005a8230
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x10], 0
mov edx, dword [esp + 0x10]
jmp 0x5f0562
mov ecx, dword [esp + 0x18]
call fcn.005b4580
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
mov esi, eax
test ecx, ecx
je 0x5f04be
push dword [esp + 0xc]
push dword [esp + 0x28]
push ecx
push ebx
push str._s:__s._s._s
push edi
call fcn.0057bd30
add esp, 0x18
jmp 0x5f0ab8
cmp byte [esp + 0x48], 0
je 0x5f0aa1
push dword [esp + 0xc]
push ebx
push str._s:__s
push edi
call fcn.0057bd30
add esp, 0x10
jmp 0x5f0ab8
mov edi, dword [ebp + 0xc]
mov word [edi + 0x20], 0xffff
mov byte [edi + 1], 0x44
xor edx, edx
inc edx
mov bl, 0x9a
jmp 0x5f0d74
mov eax, dword [esp + 0x18]
cmp byte [eax + 0xb1], 0
jne 0x5f0537
mov eax, dword [esp + 0x28]
test byte [eax + 0x1a], 1
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x20]
mov edx, 0x1e
je 0x5f052e
mov eax, ecx
and eax, 0x50000001
mov edx, 0x1d
cmp eax, 0x40000001
je 0x5f0537
bt ecx, edx
jae 0x5f03db
push esi
push str.double_quoted_string_literal:___w_
push 0x1c
call fcn.00576b00
add esp, 0xc
mov ecx, dword [ebp + 0xc]
mov byte [ecx], 0x6b
xor eax, eax
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x2c], eax
jmp 0x5ef17f
and eax, 0xff7fffff
mov dword [ecx + 4], eax
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
je 0x5f0afb
mov eax, dword [ebp + 0xc]
mov byte [eax], 0x9f
mov dword [eax + 8], str.coalesce
mov dword [eax + 0x14], edx
jmp 0x5f0e70
xor eax, eax
lea ebx, [esp + 0x90]
mov ecx, esi
mov edx, ebx
push 1
push eax
call fcn.00593800
add esp, 8
movsd xmm0, qword [ebx]
ucomisd xmm0, qword [0x6f3d20]
jbe 0x5f0a31
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x1c], 0xffffffff
push dword [ebp + 0xc]
push str.second_argument_to__T___must_be_a_constant_between_0.0_and_1.0
push dword [esp + 0xc]
call fcn.0057bd30
mov edx, dword [esp + 0x18]
add esp, 0xc
mov eax, dword [esp + 0x28]
inc dword [eax + 0x14]
mov eax, dword [esp + 4]
mov eax, dword [eax]
mov ecx, dword [eax + 0x164]
test ecx, ecx
je 0x5f0604
cmp byte [eax + 0xb1], 0
jne 0x5f0604
mov edx, dword [esp + 4]
cmp byte [edx + 0xcc], 0
mov edx, dword [esp + 0xc]
je 0x5f09f2
mov eax, dword [edx + 4]
test eax, 0x2800
je 0x5f0618
mov eax, dword [ebp + 0xc]
or byte [eax + 6], 0x10
mov eax, dword [edx + 4]
bt eax, 0xb
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 0x18]
jb 0x5f068a
test al, 0x2a
je 0x5f069f
mov ecx, str.index_expressions
test al, 0x20
jne 0x5f064a
mov ecx, str.CHECK_constraints
test al, 4
jne 0x5f064a
test al, 8
mov eax, str.partial_index_WHERE_clauses
mov ecx, str.generated_columns
cmove ecx, eax
push ecx
push str.non_deterministic_functions
push str._s_prohibited_in__s
push dword [esp + 0x10]
call fcn.0057bd30
add esp, 0x10
cmp dword [ebp + 0xc], 0
je 0x5f069f
mov eax, dword [esp + 4]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
test byte [ecx + 4], 3
jne 0x5f0681
mov edx, dword [ecx + 0x24]
test edx, edx
jg 0x5f0a54
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x5f0670
jmp 0x5f069f
and al, 0x2e
mov ecx, dword [ebp + 0xc]
mov byte [ecx + 2], al
test byte [edx + 0x1a], 4
je 0x5f069f
mov eax, dword [ebp + 0xc]
or byte [eax + 7], 0x40
mov ebx, dword [esp + 0xc]
mov eax, dword [ebx + 4]
bt eax, 0x12
jae 0x5f06d2
mov ecx, dword [esp + 4]
cmp byte [ecx + 0x12], 0
jne 0x5f06d2
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
mov dword [esp + 0x20], 0
test byte [ecx + 0x18], 0x20
mov dword [esp + 8], 0
je 0x5f071f
mov cl, 1
mov dword [esp + 0x20], ecx
test eax, 0x280000
je 0x5f071b
mov ecx, dword [esp + 4]
cmp byte [ecx + 0xcc], 1
ja 0x5f071b
mov ecx, dword [ebp + 0xc]
test byte [ecx + 7], 0x40
je 0x5f071b
bt eax, 0x13
jb 0x5f0707
mov eax, dword [esp + 4]
mov eax, dword [eax]
test byte [eax + 0x20], 0x80
jne 0x5f071b
push dword [ebp + 0xc]
push str.unsafe_use_of__T__
push dword [esp + 0xc]
call fcn.0057bd30
add esp, 0xc
mov dword [esp + 8], ebx
xor ebx, ebx
mov edx, dword [esp + 0x10]
test edx, edx
setne al
mov ecx, dword [esp + 4]
cmp byte [ecx + 0xcc], 2
jae 0x5f075e
test edx, edx
je 0x5f0762
mov esi, dword [esp + 0x28]
test byte [esi + 0x18], 1
jne 0x5f0766
push dword [ebp + 0xc]
push str.misuse_of_aggregate_function__T__
push dword [esp + 0xc]
call fcn.0057bd30
add esp, 0xc
inc dword [esi + 0x14]
jmp 0x5f07a8
mov bl, al
jmp 0x5f07aa
xor esi, esi
jmp 0x5f0769
xor esi, esi
inc esi
cmp byte [esp + 0x20], 0
jne 0x5f0797
mov ecx, dword [esp + 4]
mov eax, dword [ecx]
cmp byte [eax + 0xb1], 0
jne 0x5f0797
push dword [ebp + 0xc]
push str.no_such_function:__T
push ecx
call fcn.0057bd30
add esp, 0xc
mov eax, dword [esp + 0x28]
inc dword [eax + 0x14]
test esi, esi
je 0x5f07a8
mov eax, dword [esp + 0x28]
and byte [eax + 0x18], 0xfe
xor ebx, ebx
inc ebx
jmp 0x5f07aa
xor ebx, ebx
mov esi, ebx
test edi, edi
je 0x5f07dd
mov ebx, dword [edi]
test ebx, ebx
jle 0x5f07dd
add edi, 8
mov edx, dword [edi]
test edx, edx
je 0x5f07d2
mov ecx, dword [ebp + 8]
call fcn.005eb0a0
test eax, eax
jne 0x5f07dd
cmp ebx, 1
jg 0x5f07d7
jmp 0x5f07dd
cmp ebx, 2
jl 0x5f07dd
dec ebx
add edi, 0x14
jmp 0x5f07b9
xor ebx, ebx
inc ebx
test esi, esi
je 0x5ef4e6
mov edx, dword [ebp + 0xc]
mov byte [edx], 0x9b
mov byte [edx + 2], 0
cmp dword [esp + 0x28], 0
je 0x5f09e2
mov eax, dword [esp + 0x28]
mov dword [esp + 0xc], eax
mov eax, dword [eax + 4]
xorpd xmm0, xmm0
movapd xmmword [esp + 0x90], xmm0
xor ecx, ecx
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa0], ecx
lea ecx, [esp + 0x80]
movupd xmmword [ecx], xmm0
mov dword [esp + 0x94], 0x5f2080
mov dword [esp + 0x98], 0x5f2110
mov dword [esp + 0x9c], 0x5f2250
lea ecx, [esp + 0x78]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov esi, dword [edx + 0x14]
test esi, esi
je 0x5f0988
mov edi, dword [esi]
test edi, edi
jle 0x5f0988
add esi, 8
mov edx, dword [esi]
test edx, edx
je 0x5f089f
lea ecx, [esp + 0x90]
call fcn.005eb0a0
test eax, eax
jne 0x5f08aa
cmp edi, 1
jg 0x5f08a4
jmp 0x5f08aa
cmp edi, 2
jl 0x5f08aa
dec edi
add esi, 0x14
jmp 0x5f0882
mov edi, dword [esp + 0x88]
test edi, edi
je 0x5f0988
mov eax, dword [esp + 4]
mov ecx, dword [eax]
cmp dword [ecx + 0x15c], edi
jbe 0x5f08db
cmp dword [ecx + 0x154], edi
jbe 0x5f08f0
cmp dword [ecx + 0x158], edi
jbe 0x5f097a
cmp dword [ecx + 0x200], 0
je 0x5f0903
mov edx, edi
call fcn.0057ff00
jmp 0x5f0988
mov eax, dword [ecx + 0x150]
mov dword [edi], eax
mov dword [ecx + 0x150], edi
jmp 0x5f0988
cmp dword [0x72dce0], 0
je 0x5f09b4
mov esi, dword [0x73ee00]
test esi, esi
je 0x5f092c
mov ecx, dword [0x72dd30]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ecx, dword [0x72dd0c]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
sub dword [0x73eda8], eax
dec dword [0x73edcc]
mov ecx, dword [0x72dd04]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
mov esi, dword [0x73ee00]
test esi, esi
je 0x5f0988
mov ecx, dword [0x72dd38]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
jmp 0x5f0988
mov eax, dword [ecx + 0x148]
mov dword [edi], eax
mov dword [ecx + 0x148], edi
movzx eax, word [esp + 0xa4]
test ax, ax
je 0x5f09c3
and eax, 1
test ax, ax
jne 0x5f09c3
mov edx, dword [ebp + 0xc]
inc byte [edx + 2]
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x5f0801
jmp 0x5f09e2
mov ecx, dword [0x72dd04]
call dword [section..00cfg]
push edi
jmp 0x5f0973
cmp dword [esp + 8], 0
mov edx, dword [esp + 0xc]
je 0x5f09e2
mov eax, 0x8001000
mov ecx, dword [esp + 8]
and eax, dword [ecx + 4]
xor eax, 0x8000010
or dword [edx + 0x18], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
or dword [eax + 0x18], ecx
jmp 0x5ef4e6
mov esi, dword [edx + 0x20]
mov edx, dword [esp + 4]
mov ebx, dword [edx + 0xf0]
mov eax, dword [eax + 0x168]
mov dword [esp + 8], eax
call dword [section..00cfg]
xor eax, eax
push ebx
push eax
push esi
push eax
push 0x1f
push dword [esp + 0x1c]
call ecx
add esp, 0x18
cmp eax, 1
jne 0x5f0a5c
mov esi, 0x17
mov eax, str.not_authorized
jmp 0x5f0a6f
mulsd xmm0, qword [0x717af0]
cvttsd2si eax, xmm0
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x1c], eax
test eax, eax
mov edx, dword [esp + 0xc]
jns 0x5f05d6
jmp 0x5f05b7
mov dword [eax + 0x44], edx
jmp 0x5f069f
test eax, 0xfffffffd
je 0x5f0c47
xor esi, esi
inc esi
mov eax, str.authorizer_malfunction
push eax
mov edi, dword [esp + 8]
push edi
call fcn.0057bd30
add esp, 8
mov dword [edi + 0xc], esi
mov esi, dword [ebp + 0xc]
push esi
push str.not_authorized_to_use_function:__T
push edi
call fcn.0057bd30
add esp, 0xc
mov eax, dword [esp + 0x28]
inc dword [eax + 0x14]
mov byte [esi], 0x6f
jmp 0x5ef17f
push dword [esp + 0xc]
push dword [esp + 0x28]
push ebx
push str._s:__s._s
push edi
call fcn.0057bd30
add esp, 0x14
cmp dword [ebp + 0xc], 0
je 0x5f0adc
mov eax, dword [edi]
mov ecx, dword [ebp + 0xc]
test byte [ecx + 4], 3
jne 0x5f0ad0
mov edx, dword [ecx + 0x24]
test edx, edx
jg 0x5f0ad9
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x5f0ac3
jmp 0x5f0adc
mov dword [eax + 0x44], edx
mov byte [edi + 0x11], 1
mov eax, dword [esp + 0x28]
inc dword [eax + 0x14]
mov bl, 0x9a
mov edi, dword [ebp + 0xc]
mov eax, esi
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
jmp 0x5f0d7c
mov ebx, dword [esp + 0x1c]
mov eax, dword [ebp + 0xc]
movzx esi, word [eax + 0x20]
mov edx, 0x34
push 0
call fcn.00580000
add esp, 4
test eax, eax
je 0x5f0c68
pxor xmm0, xmm0
movdqu xmmword [eax], xmm0
movdqu xmmword [eax + 0x20], xmm0
movdqu xmmword [eax + 0x10], xmm0
mov dword [eax + 0x30], 0
mov byte [eax], 0x9a
mov word [eax + 0x22], 0xffff
mov dword [eax + 0x18], 1
mov ecx, dword [ebx + 0x2c]
mov dword [eax + 0x1c], ecx
mov word [eax + 0x20], si
mov ecx, dword [ebx + 0x10]
mov dword [eax + 0x2c], ecx
mov dword [eax + 4], 0x200000
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
cmp dword [edx + 4], ecx
jle 0x5f0c71
lea edx, [ecx + 1]
mov esi, dword [esp + 0x10]
mov dword [esi], edx
mov edx, dword [esp + 0x10]
lea ecx, [ecx + ecx*4]
movdqu xmmword [edx + ecx*4 + 0xc], xmm0
mov dword [edx + ecx*4 + 8], eax
jmp 0x5f056e
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x20]
mov dword [ecx], edx
cmp byte [esi + 0x91], 0
mov ecx, dword [esp + 0x18]
je 0x5f0cb2
mov edi, dword [ebp + 0xc]
mov byte [edi + 2], 0x9a
mov ecx, dword [esp + 8]
mov word [edi + 0x20], cx
movsx esi, word [edx + 0x22]
inc esi
imul esi, dword [esp + 0x40]
mov eax, dword [esp + 0x2c]
mov ebx, edx
mov edx, dword [eax + 8]
test cx, cx
js 0x5f0d59
mov eax, dword [ebx + 0x1c]
and eax, 0x20
je 0x5f0d59
movsx edi, cx
mov eax, dword [ebx + 4]
test cx, cx
mov dword [esp + 0xc], edi
mov dword [esp + 0x24], eax
je 0x5f0d30
add eax, 0xe
xor ebx, ebx
movzx ecx, word [eax]
bt ecx, 5
sbb bx, 0xffff
add eax, 0x10
dec edi
jne 0x5f0bfd
jmp 0x5f0d32
mov al, 1
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
xor edx, edx
movzx ebx, byte [ecx + edx]
movzx eax, byte [edx + 0x704a76]
cmp bl, al
jne 0x5f0c36
test ebx, ebx
jne 0x5f0c44
jmp 0x5f0c83
mov bl, byte [ebx + 0x717d00]
cmp bl, byte [eax + 0x717d00]
jne 0x5f0c8a
inc edx
jmp 0x5f0c21
test eax, eax
mov edx, dword [esp + 0xc]
je 0x5f0604
cmp eax, 1
mov edi, dword [esp + 4]
mov esi, dword [ebp + 0xc]
je 0x5f0a83
jmp 0x5f0a99
mov edx, dword [esp + 0x10]
jmp 0x5f056e
mov ecx, dword [edi]
push eax
call fcn.00610510
add esp, 4
mov edx, eax
jmp 0x5f056e
mov ecx, 0x10000000
jmp 0x5f0cec
xor edx, edx
movzx ebx, byte [ecx + edx]
movzx eax, byte [edx + 0x704a7d]
cmp bl, al
jne 0x5f0ca1
test ebx, ebx
jne 0x5f0caf
jmp 0x5f0ce7
mov bl, byte [ebx + 0x717d00]
cmp bl, byte [eax + 0x717d00]
jne 0x5f0cfe
inc edx
jmp 0x5f0c8c
mov eax, dword [ebp + 0xc]
mov ebx, dword [esp + 8]
mov word [eax + 0x20], bx
test ebx, ebx
js 0x5f0d16
xor edx, edx
inc edx
mov ecx, ebx
shl edx, cl
xor eax, eax
dec eax
cmp ebx, 0x20
cmovb eax, edx
cmp dword [esp + 0x40], 0
je 0x5f0f5e
or dword [esi + 0x8c], eax
jmp 0x5f0f64
mov ecx, 0x20000000
mov eax, dword [ebp + 0xc]
mov byte [eax], 0x9d
or ecx, dword [esp + 8]
mov dword [eax + 4], ecx
jmp 0x5ef17f
mov dword [esp + 0x14], 0
xor eax, eax
mov edx, dword [esp + 0x10]
mov ebx, str.no_such_column
jmp 0x5f0428
mov edi, dword [ebp + 0xc]
mov byte [edi + 1], 0x44
xor edx, edx
inc edx
mov bl, 0x4d
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x2c]
jmp 0x5f0d7c
xor ebx, ebx
mov eax, dword [esp + 0xc]
shl eax, 4
mov ecx, dword [esp + 0x24]
test byte [ecx + eax + 0xe], 0x20
mov edi, dword [ebp + 0xc]
jne 0x5f0d4b
mov ecx, ebx
jmp 0x5f0d59
mov ecx, dword [esp + 8]
sub ecx, ebx
mov eax, dword [esp + 0x20]
add cx, word [eax + 0x24]
movsx eax, cx
add edx, esi
add eax, edx
inc eax
mov ecx, dword [esp + 0x44]
mov dword [ecx], eax
xor edx, edx
inc edx
mov bl, 0xa3
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
test byte [edi + 6], 0x81
jne 0x5f0dc4
mov dword [esp + 0x14], edx
mov edx, dword [edi + 0xc]
test edx, edx
je 0x5f0d9e
mov ecx, dword [esp + 0x18]
mov esi, eax
call fcn.005a8230
mov ecx, dword [esp + 0x18]
mov eax, esi
mov dword [edi + 0xc], 0
mov edx, dword [edi + 0x10]
test edx, edx
je 0x5f0db5
mov esi, eax
call fcn.005a8230
mov eax, esi
mov dword [edi + 0x10], 0
or byte [edi + 6], 0x80
mov edx, dword [esp + 0x14]
mov dword [esp + 0x2c], eax
movzx eax, word [edi + 0x20]
test ax, ax
js 0x5f0e60
cmp dword [esp + 0x1c], 0
je 0x5f0e60
mov byte [esp + 0xc], bl
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx]
test byte [ecx + 0x1c], 0x60
je 0x5f0e32
mov edx, dword [ecx + 4]
mov esi, eax
shl esi, 4
test byte [edx + esi + 0xe], 0x60
je 0x5f0e32
movzx ecx, word [ecx + 0x22]
xor esi, esi
dec esi
mov edi, esi
shl edi, cl
xor eax, eax
test cl, 0x20
mov edx, esi
cmovne edx, edi
cmove eax, edi
mov edi, dword [ebp + 0xc]
xor eax, esi
xor edx, esi
cmp cx, 0x40
cmovge edx, esi
cmovge eax, esi
jmp 0x5f0e52
cmp eax, 0x3f
mov ecx, 0x3f
cmovl ecx, eax
xor eax, eax
inc eax
xor edx, edx
shld edx, eax, cl
xor esi, esi
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, esi
or dword [ebx + 0x38], eax
or dword [ebx + 0x3c], edx
mov edx, dword [esp + 0x14]
mov bl, byte [esp + 0xc]
mov byte [edi], bl
mov ebx, 2
cmp edx, 1
jne 0x5ef4e6
mov eax, dword [esp + 4]
mov edx, dword [eax]
cmp dword [edx + 0x164], 0
mov edi, dword [ebp + 0xc]
je 0x5f0f30
movzx ecx, byte [edi]
cmp ecx, 0x9a
je 0x5f0e9a
cmp ecx, 0x4d
jne 0x5f0f30
cmp dword [esp + 0x30], 0
je 0x5f0f30
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
mov edx, dword [edx + 0x10]
add edx, 0xc
xor edi, edi
dec edi
mov ebx, dword [esp + 0x30]
inc edi
lea esi, [edx + 0x10]
cmp dword [edx], ebx
mov edx, esi
jne 0x5f0eb9
mov dword [esp + 0xc], edi
cmp cl, 0x4d
mov edi, dword [ebp + 0xc]
mov ecx, dword [esp + 4]
je 0x5f0ef5
mov esi, dword [eax]
test esi, esi
jle 0x5f0f30
mov edx, dword [esp + 0x44]
mov edx, dword [edx]
add eax, 0x34
cmp edx, dword [eax]
je 0x5f0eee
add eax, 0x48
dec esi
jne 0x5f0ee2
jmp 0x5f0f30
add eax, 0xffffffe4
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
test eax, eax
je 0x5f0f30
movsx esi, word [edi + 0x20]
test esi, esi
jns 0x5f0f10
movzx esi, word [eax + 0x20]
test si, si
js 0x5f0f57
mov edx, dword [eax + 4]
shl esi, 4
mov esi, dword [edx + esi]
mov edx, dword [eax]
push dword [esp + 0xc]
push esi
call fcn.005f1fa0
add esp, 8
cmp eax, 2
jne 0x5f0f30
mov byte [edi], 0x6f
mov eax, dword [esp + 0x28]
inc dword [eax + 0x10]
xor ebx, ebx
inc ebx
cmp eax, dword [esp + 0x2c]
je 0x5ef4e6
mov ecx, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
inc dword [eax + 0x10]
cmp eax, ecx
jne 0x5f0f48
jmp 0x5ef4e6
mov esi, str.ROWID
jmp 0x5f0f19
or dword [esi + 0x88], eax
mov bl, 0x4d
mov dword [esp + 0x1c], 0
mov edi, dword [ebp + 0xc]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
xor edx, edx
inc edx
jmp 0x5f0d7c