Function at 0x679380
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x3c
push ebx
mov ebx, dword [esp + 0x54]
xor eax, eax
push ebp
mov ebp, dword [esp + 0x48]
xor ecx, ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x5c]
push esi
mov ebp, dword [ebp]
xor esi, esi
push edi
xor edi, edi
mov dword [eax + 0x1c], 0xffffffff
mov eax, dword [esp + 0x54]
mov dword [esp + 0x18], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x14], edi
mov dword [esp + 0x38], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x30], 0xa7
test eax, eax
je 0x679457
test byte [ebx + 0x18], 6
je 0x6793e1
mov dword [esp + 0x54], ecx
jmp 0x679457
mov ebx, dword [ebp + 0x14]
xor esi, esi
test ebx, ebx
jle 0x679423
mov ebp, dword [ebp + 0x10]
mov edi, ebp
nop
push eax
push dword [edi]
call fcn.006bb120
add esp, 8
test eax, eax
je 0x67940d
mov eax, dword [esp + 0x54]
inc esi
add edi, 0x10
cmp esi, ebx
jl 0x6793f0
jmp 0x67941d
mov eax, esi
add eax, eax
mov ecx, dword [ebp + eax*8 + 0xc]
mov eax, dword [esp + 0x54]
mov dword [esp + 0x28], ecx
mov ebp, dword [esp + 0x2c]
xor edi, edi
cmp esi, ebx
jne 0x679451
push eax
push str.main
call fcn.006bb120
mov ebx, dword [esp + 0x68]
add esp, 8
xor esi, esi
test eax, eax
jne 0x679457
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x54], eax
jmp 0x679457
mov ebx, dword [esp + 0x60]
xor esi, esi
mov edx, dword [esp + 0x58]
jmp 0x679460
mov eax, dword [ebx + 4]
mov dword [esp + 0x40], eax
test eax, eax
je 0x679737
xor ecx, ecx
lea ebp, [eax + 8]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], ebp
cmp dword [eax], ecx
jle 0x679707
mov eax, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x34], ebx
test eax, eax
je 0x67950f
test dword [eax + 4], 0x800
je 0x67950f
mov ebx, dword [eax + 0x1c]
xor esi, esi
xor ebp, ebp
cmp dword [ebx], esi
jle 0x6794ff
lea edi, [ebx + 8]
lea esp, [esp]
push dword [esp + 0x54]
push edx
push dword [esp + 0x64]
push edi
call fcn.006ad090
add esp, 0x10
test eax, eax
je 0x6794e7
mov eax, dword [esp + 0x1c]
mov ebp, 1
inc dword [esp + 0x18]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x24], 2
mov word [eax + 0x20], si
mov edx, dword [esp + 0x58]
inc esi
add edi, 0x14
cmp esi, dword [ebx]
jl 0x6794b0
mov ecx, dword [esp + 0x20]
test ebp, ebp
jne 0x6796df
mov ebp, dword [esp + 0x1c]
test edx, edx
je 0x6796e3
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x54]
test eax, eax
je 0x679561
mov esi, dword [esp + 0x28]
cmp dword [ebx + 0x3c], esi
jne 0x6796e3
test esi, esi
jne 0x679561
mov ecx, 0x711054
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x679550
test dl, dl
je 0x67954c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x679550
add eax, 2
add ecx, 2
test dl, dl
jne 0x679530
xor eax, eax
jmp 0x679555
sbb eax, eax
or eax, 1
mov edx, dword [esp + 0x58]
test eax, eax
jne 0x6797cc
test edx, edx
je 0x6795d3
mov edi, dword [ebp + 0xc]
mov edx, edi
test edi, edi
jne 0x679570
mov edx, dword [ebx]
mov esi, dword [esp + 0x58]
sub esi, edx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x6795b4
test ecx, ecx
jne 0x6795ca
mov eax, dword [esp + 0x50]
cmp byte [eax + 0xd0], 2
jb 0x6795d3
test edi, edi
je 0x6795d3
mov eax, dword [eax + 0x10c]
test eax, eax
je 0x6795d3
mov ecx, dword [esp + 0x64]
add ecx, 0x2c
cmp dword [eax], ecx
je 0x6795cd
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x6795a7
jmp 0x6795d3
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x6797bf
inc edx
jmp 0x679576
mov dword [eax], 0
mov esi, dword [esp + 0x5c]
push esi
call fcn.006bb160
mov edx, dword [esp + 0x38]
add esp, 4
xor ebx, ebx
mov byte [esp + 0x13], al
movsx ebp, word [edx + 0x22]
mov edi, dword [edx + 4]
test ebp, ebp
jle 0x67969d
lea esp, [esp]
cmp byte [edi + 0xa], al
jne 0x67968d
mov edx, dword [edi]
sub esi, edx
lea ecx, [ecx]
movzx eax, byte [edx]
movzx ecx, byte [esi + edx]
cmp eax, ecx
jne 0x679670
test eax, eax
jne 0x679682
mov eax, dword [esp + 0x18]
cmp eax, 1
jne 0x67964a
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x5c]
test byte [eax + 0x24], 4
jne 0x679689
push esi
push dword [eax + 0x34]
call fcn.0067ccb0
add esp, 8
test eax, eax
jne 0x679689
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x34]
inc eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ecx
movsx eax, word [edx + 0x20]
cmp ebx, eax
jne 0x6796d2
mov ebx, dword [esp + 0x64]
or eax, 0xffffffff
mov word [ebx + 0x20], ax
jmp 0x6796a1
movzx ecx, byte [ecx + 0x71cce8]
movzx eax, byte [eax + 0x71cce8]
sub eax, ecx
jne 0x679685
inc edx
jmp 0x679610
mov esi, dword [esp + 0x5c]
mov al, byte [esp + 0x13]
inc ebx
add edi, 0x10
cmp ebx, ebp
jl 0x679600
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
test esi, esi
jne 0x6797b2
test dword [edx + 0x1c], 0x200
mov edx, dword [esp + 0x58]
jne 0x6797a9
inc dword [esp + 0x24]
mov edi, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], edi
jmp 0x6796eb
movsx eax, bx
mov ebx, dword [esp + 0x64]
mov word [ebx + 0x20], ax
jmp 0x6796a1
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x40]
inc ecx
add ebp, 0x48
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], ebp
cmp ecx, dword [eax]
jl 0x679484
mov ebx, dword [esp + 0x60]
test edi, edi
je 0x67972f
mov ecx, dword [esp + 0x64]
mov eax, dword [edi + 0x2c]
mov dword [ecx + 0x1c], eax
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x2c], eax
test byte [edi + 0x24], 8
je 0x679728
or dword [ecx + 4], 0x100000
mov ebp, dword [eax + 0x3c]
mov dword [esp + 0x28], ebp
test esi, esi
jne 0x679a94
cmp dword [esp + 0x54], 0
jne 0x67998e
mov esi, dword [esp + 0x50]
xor ebp, ebp
mov dword [esp + 0x1c], ebp
mov eax, dword [esi + 0x78]
test eax, eax
je 0x67986d
cmp byte [esi + 0x95], 0
movzx edi, byte [esi + 0x94]
je 0x6797dd
test dword [ebx + 0x18], 0x400
je 0x67986d
test edx, edx
je 0x67978b
push dword [eax]
push edx
call fcn.006bb120
add esp, 8
test eax, eax
jne 0x67986d
mov ebx, dword [esp + 0x64]
xor eax, eax
cmp edi, 0x80
setne al
mov dword [ebx + 0x1c], eax
mov ebp, dword [esi + 0x78]
mov dword [esp + 0x1c], ebp
jmp 0x679871
mov ecx, dword [esp + 0x20]
jmp 0x6796e7
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x58]
jmp 0x6796e7
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x58]
jmp 0x6796e3
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
jmp 0x6796eb
cmp edi, 0x80
je 0x679834
test edx, edx
je 0x679834
mov esi, dword [esp + 0x58]
mov edx, 0x7252e8
sub esi, edx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x67981b
test ecx, ecx
jne 0x67982d
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x50]
mov dword [ebx + 0x1c], 1
mov ebp, dword [ebp + 0x78]
mov dword [esp + 0x1c], ebp
jmp 0x679871
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x679830
inc edx
jmp 0x6797f4
mov esi, dword [esp + 0x50]
cmp edi, 0x7f
je 0x67986d
mov eax, dword [esp + 0x58]
test eax, eax
je 0x679867
push eax
push 0x7252ec
call fcn.006bb120
mov ebx, dword [esp + 0x6c]
add esp, 8
test eax, eax
mov eax, dword [esp + 0x58]
jne 0x679875
mov dword [ebx + 0x1c], ebp
mov ebp, dword [esi + 0x78]
mov dword [esp + 0x1c], ebp
jmp 0x679875
mov ebx, dword [esp + 0x64]
jmp 0x679875
mov ebx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x60]
test dword [ecx + 0x18], 0x200
je 0x6798ba
test eax, eax
je 0x6798ba
mov edi, dword [ecx + 8]
test edi, edi
je 0x6798ba
mov edx, str.excluded
mov esi, eax
sub esi, edx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x679920
test ecx, ecx
jne 0x679932
mov eax, dword [edi + 0x20]
mov ebp, dword [eax + 0x18]
mov dword [esp + 0x1c], ebp
mov dword [ebx + 0x1c], 2
test ebp, ebp
je 0x67998e
mov esi, dword [esp + 0x5c]
push esi
call fcn.006bb160
mov ecx, dword [ebp + 0x3c]
add esp, 4
mov edi, dword [ebp + 4]
xor ebx, ebx
movsx ebp, word [ebp + 0x22]
inc dword [esp + 0x24]
mov byte [esp + 0x13], al
mov dword [esp + 0x28], ecx
test ebp, ebp
jle 0x67995d
jmp 0x6798f0
cmp byte [edi + 0xa], al
jne 0x679955
mov edx, dword [edi]
sub esi, edx
lea esp, [esp]
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x679938
test ecx, ecx
jne 0x67994a
mov esi, dword [esp + 0x1c]
movsx eax, word [esi + 0x20]
cmp ebx, eax
jne 0x679961
or ebx, 0xffffffff
jmp 0x679961
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x6798ba
inc edx
jmp 0x679896
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x67994d
inc edx
jmp 0x679900
mov al, byte [esp + 0x13]
mov esi, dword [esp + 0x5c]
inc ebx
add edi, 0x10
cmp ebx, ebp
jl 0x6798f0
mov esi, dword [esp + 0x1c]
cmp ebx, ebp
jl 0x679aa7
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.006ab360
add esp, 4
test eax, eax
je 0x679986
test dword [esi + 0x1c], 0x200
jne 0x679986
or ebx, 0xffffffff
cmp ebx, ebp
jl 0x679aa7
cmp dword [esp + 0x24], 1
jne 0x6799e1
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x6799e1
mov esi, dword [esp + 0x60]
test byte [esi + 0x18], 0x28
mov esi, dword [esp + 0x5c]
jne 0x6799e5
push esi
call fcn.006ab360
add esp, 4
test eax, eax
je 0x6799e5
mov eax, dword [ebx + 0x10]
test dword [eax + 0x1c], 0x200
jne 0x6799e5
mov edx, dword [esp + 0x64]
or eax, 0xffffffff
mov edi, dword [esp + 0x50]
mov ebp, 1
mov word [edx + 0x20], ax
mov byte [edx + 1], 0x44
jmp 0x679f42
mov esi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x60]
mov edx, dword [esp + 0x58]
test byte [ebx + 0x18], 0x80
je 0x679a5f
test edx, edx
jne 0x679a5f
mov ecx, dword [ebx + 8]
xor ebp, ebp
mov eax, dword [ecx]
mov dword [esp + 0x40], eax
test eax, eax
jle 0x679a5f
lea ebx, [ecx + 0x14]
lea esp, [esp]
test byte [ebx], 3
mov edi, dword [ebx - 8]
jne 0x679a4f
test edi, edi
jne 0x679a24
mov ecx, esi
neg ecx
sbb ecx, ecx
jmp 0x679a47
test esi, esi
je 0x679a4f
mov edx, edi
sub esi, edi
lea esp, [esp]
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x679a7f
test ecx, ecx
jne 0x679a91
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x5c]
test ecx, ecx
je 0x679c73
inc ebp
add ebx, 0x14
cmp ebp, eax
jl 0x679a10
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x60]
mov ebx, dword [ebx + 0xc]
inc dword [esp + 0x3c]
mov dword [esp + 0x60], ebx
test ebx, ebx
je 0x679d6b
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
jmp 0x679460
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x679a3f
inc edx
jmp 0x679a30
cmp esi, 1
je 0x679f32
mov eax, str.ambiguous_column_name
jmp 0x679ea6
mov edx, dword [esp + 0x64]
mov ebp, 1
mov dword [esp + 0x14], 0
mov edi, dword [edx + 0x1c]
cmp edi, 2
jne 0x679b5d
mov edi, dword [esp + 0x50]
cmp byte [edi + 0xd0], 2
jb 0x679ae5
mov word [edx + 0x20], bx
mov dword [edx + 0x2c], esi
mov dword [esp + 0x30], 0xa7
jmp 0x679f3e
test byte [esi + 0x1c], 0x20
je 0x679b3d
test bx, bx
js 0x679b3d
movsx ecx, bx
xor esi, esi
mov ebx, dword [esp + 0x1c]
xor edx, edx
test ecx, ecx
jle 0x679b13
mov eax, dword [ebx + 4]
mov esi, ecx
add eax, 0xe
test byte [eax], 0x20
jne 0x679b0d
inc edx
add eax, 0x10
dec ecx
jne 0x679b07
mov eax, dword [ebx + 4]
mov ecx, esi
add ecx, ecx
test byte [eax + ecx*8 + 0xe], 0x20
je 0x679b34
mov ax, word [ebx + 0x24]
sub ax, dx
mov edx, dword [esp + 0x64]
add ax, si
movzx ecx, ax
jmp 0x679b40
movzx ecx, dx
mov edx, dword [esp + 0x64]
jmp 0x679b40
movzx ecx, bx
mov esi, dword [esp + 0x60]
movsx ecx, cx
mov dword [esp + 0x30], 0xb0
mov eax, dword [esi + 8]
add ecx, dword [eax + 0x24]
mov dword [edx + 0x1c], ecx
jmp 0x679f3e
mov eax, dword [esp + 0x50]
mov dword [edx + 0x2c], esi
cmp byte [eax + 0x95], 0
je 0x679bfc
mov byte [edx + 2], 0xa7
test byte [esi + 0x1c], 0x20
mov dword [esp + 0x30], 0xb0
je 0x679bde
test bx, bx
js 0x679bde
movsx ecx, bx
xor esi, esi
mov ebx, dword [esp + 0x1c]
xor edx, edx
test ecx, ecx
jle 0x679bac
mov eax, dword [ebx + 4]
mov esi, ecx
add eax, 0xe
nop
test byte [eax], 0x20
jne 0x679ba6
inc edx
add eax, 0x10
dec ecx
jne 0x679ba0
mov eax, dword [ebx + 4]
mov ecx, esi
add ecx, ecx
test byte [eax + ecx*8 + 0xe], 0x20
je 0x679bd1
mov ax, word [ebx + 0x24]
sub ax, dx
mov edx, dword [esp + 0x64]
add ax, si
mov esi, dword [esp + 0x1c]
movzx eax, ax
jmp 0x679be1
mov esi, dword [esp + 0x1c]
movzx eax, dx
mov edx, dword [esp + 0x64]
jmp 0x679be1
movzx eax, bx
movsx ecx, word [esi + 0x22]
mov esi, dword [esp + 0x60]
inc ecx
imul ecx, edi
cwde
inc eax
add ecx, dword [esi + 8]
add eax, ecx
mov dword [edx + 0x1c], eax
jmp 0x679f3a
mov word [edx + 0x20], bx
mov dword [esp + 0x30], 0x4d
test ebx, ebx
jns 0x679c17
mov byte [edx + 1], 0x44
mov edi, eax
jmp 0x679f3e
test edi, edi
jne 0x679c47
cmp ebx, 0x20
jl 0x679c32
mov edi, dword [esp + 0x50]
or eax, 0xffffffff
or dword [edi + 0x8c], eax
jmp 0x679f3e
mov edi, dword [esp + 0x50]
mov eax, ebp
mov ecx, ebx
shl eax, cl
or dword [edi + 0x8c], eax
jmp 0x679f3e
cmp ebx, 0x20
jl 0x679c5e
mov edi, dword [esp + 0x50]
or eax, 0xffffffff
or dword [edi + 0x90], eax
jmp 0x679f3e
mov edi, dword [esp + 0x50]
mov eax, ebp
mov ecx, ebx
shl eax, cl
or dword [edi + 0x90], eax
jmp 0x679f3e
mov ebx, dword [esp + 0x60]
lea eax, [ebp*4]
add eax, ebp
mov edx, dword [ebx + 8]
mov ecx, dword [ebx + 0x18]
mov eax, dword [edx + eax*4 + 8]
test cl, 1
jne 0x679cb4
test byte [eax + 4], 0x10
je 0x679cb4
push edi
push str.misuse_of_aliased_aggregate__s
push dword [esp + 0x58]
call fcn.00698870
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x3c
ret
test dword [eax + 4], 0x8000
je 0x679cd5
test ecx, 0x4000
je 0x679ccd
mov ecx, dword [esp + 0x38]
cmp ebx, ecx
je 0x679cd5
push edi
push str.misuse_of_aliased_window_function__s
jmp 0x679c9b
mov cl, byte [eax]
cmp cl, 0xb0
jne 0x679cdf
mov cl, byte [eax + 2]
cmp cl, 0xb1
jne 0x679ce9
mov eax, dword [eax + 0x14]
jmp 0x679cf4
cmp cl, 0x8a
jne 0x679d19
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
cmp eax, 1
je 0x679d19
push str.row_value_misused
push dword [esp + 0x54]
call fcn.00698870
add esp, 8
mov eax, 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
mov eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x50]
push eax
push dword [esp + 0x68]
push ebp
push edx
push edi
call fcn.00686630
mov edx, dword [esp + 0x78]
add esp, 0x14
cmp byte [edi + 0xd0], 2
jb 0x67a013
mov eax, dword [edi + 0x10c]
test eax, eax
je 0x67a013
cmp dword [eax], edx
je 0x679d60
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x679d50
jmp 0x67a013
mov dword [eax], 0
jmp 0x67a013
test edx, edx
jne 0x679ea1
mov ebp, dword [esp + 0x64]
mov ebx, dword [ebp + 4]
test bl, 0x40
je 0x679dcd
mov eax, dword [esp + 0x2c]
cmp byte [eax + 0xb1], dl
jne 0x679e1a
mov ecx, dword [esp + 0x38]
test dword [ecx + 0x18], 0x10000
je 0x679e0d
mov ecx, dword [eax + 0x20]
xor edi, edi
mov eax, dword [eax + 0x24]
mov dword [esp + 0x48], eax
mov eax, ecx
and eax, 0x10000001
cmp eax, 1
jne 0x679dc3
test edi, edi
jne 0x679dc3
mov eax, ecx
and eax, 0x40000000
or eax, edi
jne 0x679e1a
and ecx, 0x20000000
or ecx, edi
jne 0x679e1a
test ebx, 0x4000400
jne 0x679ea1
mov edx, dword [ebp + 8]
mov edi, str.true
mov esi, edx
sub edi, edx
movzx ecx, byte [esi]
movzx eax, byte [edi + esi]
cmp ecx, eax
jne 0x679e43
test ecx, ecx
jne 0x679e55
mov eax, 0x10000000
mov byte [ebp], 0xaa
pop edi
or ebx, eax
lea eax, [ecx + 1]
pop esi
mov dword [ebp + 4], ebx
pop ebp
pop ebx
add esp, 0x3c
ret
mov eax, dword [eax + 0x20]
and eax, 0x40000000
or eax, 0
je 0x679dcd
push esi
push str.double_quoted_string_literal:___w_
push 0x1c
call fcn.00648ac0
add esp, 0xc
mov byte [ebp], 0x75
xor eax, eax
mov dword [ebp + 0x2c], eax
mov dword [ebp + 0x30], eax
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x679e58
inc esi
jmp 0x679de5
mov esi, str.false
sub esi, edx
nop
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x679e88
test ecx, ecx
jne 0x679e9a
mov eax, 0x20000000
mov byte [ebp], 0xaa
pop edi
or ebx, eax
lea eax, [ecx + 1]
pop esi
mov dword [ebp + 4], ebx
pop ebp
pop ebx
add esp, 0x3c
ret
movzx eax, byte [eax + 0x71cce8]
movzx ecx, byte [ecx + 0x71cce8]
sub ecx, eax
jne 0x679e9d
inc edx
jmp 0x679e60
mov edx, dword [esp + 0x58]
mov eax, str.no_such_column
mov ebx, dword [esp + 0x54]
mov ecx, dword [esp + 0x5c]
mov edi, dword [esp + 0x50]
push ecx
test ebx, ebx
je 0x679eca
push edx
push ebx
push eax
push str._s:__s._s._s
push edi
call fcn.00698870
add esp, 0x18
jmp 0x679eef
test edx, edx
je 0x679ee0
push edx
push eax
push str._s:__s._s
push edi
call fcn.00698870
add esp, 0x14
jmp 0x679eef
push eax
push str._s:__s
push edi
call fcn.00698870
add esp, 0x10
mov edx, dword [esp + 0x64]
mov eax, edx
mov ecx, dword [edi]
test byte [eax + 4], 1
jne 0x679f03
cmp dword [eax + 0x24], 0
jg 0x679f1b
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x679ef7
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x18]
mov byte [edi + 0x11], 1
inc dword [eax + 0x14]
jmp 0x679f3e
mov eax, dword [eax + 0x24]
mov ebp, dword [esp + 0x18]
mov dword [ecx + 0x44], eax
mov eax, dword [esp + 0x38]
mov byte [edi + 0x11], 1
inc dword [eax + 0x14]
jmp 0x679f3e
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x64]
mov edi, dword [esp + 0x50]
mov ebx, dword [esp + 0x14]
movzx eax, word [edx + 0x20]
test ax, ax
js 0x679fb4
test ebx, ebx
je 0x679fb4
mov edx, dword [edx + 0x2c]
movsx esi, ax
test byte [edx + 0x1c], 0x60
je 0x679f92
mov eax, dword [edx + 4]
mov ecx, esi
add ecx, ecx
test byte [eax + ecx*8 + 0xe], 0x60
je 0x679f92
movzx eax, word [edx + 0x22]
cmp ax, 0x40
jl 0x679f7b
or eax, 0xffffffff
or edx, 0xffffffff
jmp 0x679faa
movsx ecx, ax
xor edx, edx
mov eax, 1
call fcn.0054dc20
add eax, 0xffffffff
adc edx, 0xffffffff
jmp 0x679faa
cmp esi, 0x40
jl 0x679f9c
mov esi, 0x3f
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.0054dc20
or dword [ebx + 0x38], eax
or dword [ebx + 0x3c], edx
mov edx, dword [esp + 0x64]
test dword [edx + 4], 0x804000
jne 0x679ff9
mov eax, dword [edx + 0xc]
mov esi, dword [esp + 0x2c]
test eax, eax
je 0x679fd6
push eax
push esi
call fcn.0069c2c0
mov edx, dword [esp + 0x6c]
add esp, 8
mov eax, dword [edx + 0x10]
mov dword [edx + 0xc], 0
test eax, eax
je 0x679ff2
push eax
push esi
call fcn.0069c2c0
mov edx, dword [esp + 0x6c]
add esp, 8
mov dword [edx + 0x10], 0
or dword [edx + 4], 0x800000
mov eax, dword [esp + 0x30]
mov byte [edx], al
cmp ebp, 1
jne 0x679ca7
mov ebx, dword [esp + 0x60]
mov eax, dword [edi]
cmp dword [eax + 0x168], 0
je 0x67a03a
mov al, byte [edx]
cmp al, 0xa7
je 0x67a028
cmp al, 0x4d
jne 0x67a03a
push dword [ebx + 4]
mov ecx, dword [esp + 0x2c]
push ecx
push edx
push edi
call fcn.0068d160
add esp, 0x10
mov eax, dword [esp + 0x38]
inc dword [eax + 0x10]
cmp eax, ebx
je 0x67a04f
mov eax, dword [eax + 0xc]
inc dword [eax + 0x10]
cmp eax, ebx
jne 0x67a045
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3c
ret