Function at 0x4cc6a0
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 0x4cc777
test byte [ebx + 0x18], 6
je 0x4cc701
mov dword [esp + 0x54], ecx
jmp 0x4cc777
mov ebx, dword [ebp + 0x14]
xor esi, esi
test ebx, ebx
jle 0x4cc743
mov ebp, dword [ebp + 0x10]
mov edi, ebp
nop
push eax
push dword [edi]
call fcn.0050e440
add esp, 8
test eax, eax
je 0x4cc72d
mov eax, dword [esp + 0x54]
inc esi
add edi, 0x10
cmp esi, ebx
jl 0x4cc710
jmp 0x4cc73d
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 0x4cc771
push eax
push str.main
call fcn.0050e440
mov ebx, dword [esp + 0x68]
add esp, 8
xor esi, esi
test eax, eax
jne 0x4cc777
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 0x4cc777
mov ebx, dword [esp + 0x60]
xor esi, esi
mov edx, dword [esp + 0x58]
jmp 0x4cc780
mov eax, dword [ebx + 4]
mov dword [esp + 0x40], eax
test eax, eax
je 0x4cca57
xor ecx, ecx
lea ebp, [eax + 8]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], ebp
cmp dword [eax], ecx
jle 0x4cca27
mov eax, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x34], ebx
test eax, eax
je 0x4cc82f
test dword [eax + 4], 0x800
je 0x4cc82f
mov ebx, dword [eax + 0x1c]
xor esi, esi
xor ebp, ebp
cmp dword [ebx], esi
jle 0x4cc81f
lea edi, [ebx + 8]
lea esp, [esp]
push dword [esp + 0x54]
push edx
push dword [esp + 0x64]
push edi
call fcn.005003b0
add esp, 0x10
test eax, eax
je 0x4cc807
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 0x4cc7d0
mov ecx, dword [esp + 0x20]
test ebp, ebp
jne 0x4cc9ff
mov ebp, dword [esp + 0x1c]
test edx, edx
je 0x4cca03
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x54]
test eax, eax
je 0x4cc881
mov esi, dword [esp + 0x28]
cmp dword [ebx + 0x3c], esi
jne 0x4cca03
test esi, esi
jne 0x4cc881
mov ecx, 0x5735fc
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4cc870
test dl, dl
je 0x4cc86c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4cc870
add eax, 2
add ecx, 2
test dl, dl
jne 0x4cc850
xor eax, eax
jmp 0x4cc875
sbb eax, eax
or eax, 1
mov edx, dword [esp + 0x58]
test eax, eax
jne 0x4ccaec
test edx, edx
je 0x4cc8f3
mov edi, dword [ebp + 0xc]
mov edx, edi
test edi, edi
jne 0x4cc890
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 0x4cc8d4
test ecx, ecx
jne 0x4cc8ea
mov eax, dword [esp + 0x50]
cmp byte [eax + 0xd0], 2
jb 0x4cc8f3
test edi, edi
je 0x4cc8f3
mov eax, dword [eax + 0x10c]
test eax, eax
je 0x4cc8f3
mov ecx, dword [esp + 0x64]
add ecx, 0x2c
cmp dword [eax], ecx
je 0x4cc8ed
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4cc8c7
jmp 0x4cc8f3
movzx eax, byte [eax + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4ccadf
inc edx
jmp 0x4cc896
mov dword [eax], 0
mov esi, dword [esp + 0x5c]
push esi
call fcn.0050e480
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 0x4cc9bd
lea esp, [esp]
cmp byte [edi + 0xa], al
jne 0x4cc9ad
mov edx, dword [edi]
sub esi, edx
lea ecx, [ecx]
movzx eax, byte [edx]
movzx ecx, byte [esi + edx]
cmp eax, ecx
jne 0x4cc990
test eax, eax
jne 0x4cc9a2
mov eax, dword [esp + 0x18]
cmp eax, 1
jne 0x4cc96a
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x5c]
test byte [eax + 0x24], 4
jne 0x4cc9a9
push esi
push dword [eax + 0x34]
call fcn.004cffd0
add esp, 8
test eax, eax
jne 0x4cc9a9
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 0x4cc9f2
mov ebx, dword [esp + 0x64]
or eax, 0xffffffff
mov word [ebx + 0x20], ax
jmp 0x4cc9c1
movzx ecx, byte [ecx + 0x56afc0]
movzx eax, byte [eax + 0x56afc0]
sub eax, ecx
jne 0x4cc9a5
inc edx
jmp 0x4cc930
mov esi, dword [esp + 0x5c]
mov al, byte [esp + 0x13]
inc ebx
add edi, 0x10
cmp ebx, ebp
jl 0x4cc920
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
test esi, esi
jne 0x4ccad2
test dword [edx + 0x1c], 0x200
mov edx, dword [esp + 0x58]
jne 0x4ccac9
inc dword [esp + 0x24]
mov edi, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], edi
jmp 0x4cca0b
movsx eax, bx
mov ebx, dword [esp + 0x64]
mov word [ebx + 0x20], ax
jmp 0x4cc9c1
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 0x4cc7a4
mov ebx, dword [esp + 0x60]
test edi, edi
je 0x4cca4f
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 0x4cca48
or dword [ecx + 4], 0x100000
mov ebp, dword [eax + 0x3c]
mov dword [esp + 0x28], ebp
test esi, esi
jne 0x4ccdb4
cmp dword [esp + 0x54], 0
jne 0x4cccae
mov esi, dword [esp + 0x50]
xor ebp, ebp
mov dword [esp + 0x1c], ebp
mov eax, dword [esi + 0x78]
test eax, eax
je 0x4ccb8d
cmp byte [esi + 0x95], 0
movzx edi, byte [esi + 0x94]
je 0x4ccafd
test dword [ebx + 0x18], 0x400
je 0x4ccb8d
test edx, edx
je 0x4ccaab
push dword [eax]
push edx
call fcn.0050e440
add esp, 8
test eax, eax
jne 0x4ccb8d
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 0x4ccb91
mov ecx, dword [esp + 0x20]
jmp 0x4cca07
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x58]
jmp 0x4cca07
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x58]
jmp 0x4cca03
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
jmp 0x4cca0b
cmp edi, 0x80
je 0x4ccb54
test edx, edx
je 0x4ccb54
mov esi, dword [esp + 0x58]
mov edx, 0x573600
sub esi, edx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x4ccb3b
test ecx, ecx
jne 0x4ccb4d
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 0x4ccb91
movzx eax, byte [eax + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4ccb50
inc edx
jmp 0x4ccb14
mov esi, dword [esp + 0x50]
cmp edi, 0x7f
je 0x4ccb8d
mov eax, dword [esp + 0x58]
test eax, eax
je 0x4ccb87
push eax
push 0x573604
call fcn.0050e440
mov ebx, dword [esp + 0x6c]
add esp, 8
test eax, eax
mov eax, dword [esp + 0x58]
jne 0x4ccb95
mov dword [ebx + 0x1c], ebp
mov ebp, dword [esi + 0x78]
mov dword [esp + 0x1c], ebp
jmp 0x4ccb95
mov ebx, dword [esp + 0x64]
jmp 0x4ccb95
mov ebx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x60]
test dword [ecx + 0x18], 0x200
je 0x4ccbda
test eax, eax
je 0x4ccbda
mov edi, dword [ecx + 8]
test edi, edi
je 0x4ccbda
mov edx, str.excluded
mov esi, eax
sub esi, edx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x4ccc40
test ecx, ecx
jne 0x4ccc52
mov eax, dword [edi + 0x20]
mov ebp, dword [eax + 0x18]
mov dword [esp + 0x1c], ebp
mov dword [ebx + 0x1c], 2
test ebp, ebp
je 0x4cccae
mov esi, dword [esp + 0x5c]
push esi
call fcn.0050e480
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 0x4ccc7d
jmp 0x4ccc10
cmp byte [edi + 0xa], al
jne 0x4ccc75
mov edx, dword [edi]
sub esi, edx
lea esp, [esp]
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x4ccc58
test ecx, ecx
jne 0x4ccc6a
mov esi, dword [esp + 0x1c]
movsx eax, word [esi + 0x20]
cmp ebx, eax
jne 0x4ccc81
or ebx, 0xffffffff
jmp 0x4ccc81
movzx eax, byte [eax + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4ccbda
inc edx
jmp 0x4ccbb6
movzx eax, byte [eax + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4ccc6d
inc edx
jmp 0x4ccc20
mov al, byte [esp + 0x13]
mov esi, dword [esp + 0x5c]
inc ebx
add edi, 0x10
cmp ebx, ebp
jl 0x4ccc10
mov esi, dword [esp + 0x1c]
cmp ebx, ebp
jl 0x4ccdc7
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.004fe680
add esp, 4
test eax, eax
je 0x4ccca6
test dword [esi + 0x1c], 0x200
jne 0x4ccca6
or ebx, 0xffffffff
cmp ebx, ebp
jl 0x4ccdc7
cmp dword [esp + 0x24], 1
jne 0x4ccd01
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x4ccd01
mov esi, dword [esp + 0x60]
test byte [esi + 0x18], 0x28
mov esi, dword [esp + 0x5c]
jne 0x4ccd05
push esi
call fcn.004fe680
add esp, 4
test eax, eax
je 0x4ccd05
mov eax, dword [ebx + 0x10]
test dword [eax + 0x1c], 0x200
jne 0x4ccd05
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 0x4cd262
mov esi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x60]
mov edx, dword [esp + 0x58]
test byte [ebx + 0x18], 0x80
je 0x4ccd7f
test edx, edx
jne 0x4ccd7f
mov ecx, dword [ebx + 8]
xor ebp, ebp
mov eax, dword [ecx]
mov dword [esp + 0x40], eax
test eax, eax
jle 0x4ccd7f
lea ebx, [ecx + 0x14]
lea esp, [esp]
test byte [ebx], 3
mov edi, dword [ebx - 8]
jne 0x4ccd6f
test edi, edi
jne 0x4ccd44
mov ecx, esi
neg ecx
sbb ecx, ecx
jmp 0x4ccd67
test esi, esi
je 0x4ccd6f
mov edx, edi
sub esi, edi
lea esp, [esp]
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x4ccd9f
test ecx, ecx
jne 0x4ccdb1
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x5c]
test ecx, ecx
je 0x4ccf93
inc ebp
add ebx, 0x14
cmp ebp, eax
jl 0x4ccd30
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 0x4cd08b
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
jmp 0x4cc780
movzx eax, byte [eax + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4ccd5f
inc edx
jmp 0x4ccd50
cmp esi, 1
je 0x4cd252
mov eax, str.ambiguous_column_name
jmp 0x4cd1c6
mov edx, dword [esp + 0x64]
mov ebp, 1
mov dword [esp + 0x14], 0
mov edi, dword [edx + 0x1c]
cmp edi, 2
jne 0x4cce7d
mov edi, dword [esp + 0x50]
cmp byte [edi + 0xd0], 2
jb 0x4cce05
mov word [edx + 0x20], bx
mov dword [edx + 0x2c], esi
mov dword [esp + 0x30], 0xa7
jmp 0x4cd25e
test byte [esi + 0x1c], 0x20
je 0x4cce5d
test bx, bx
js 0x4cce5d
movsx ecx, bx
xor esi, esi
mov ebx, dword [esp + 0x1c]
xor edx, edx
test ecx, ecx
jle 0x4cce33
mov eax, dword [ebx + 4]
mov esi, ecx
add eax, 0xe
test byte [eax], 0x20
jne 0x4cce2d
inc edx
add eax, 0x10
dec ecx
jne 0x4cce27
mov eax, dword [ebx + 4]
mov ecx, esi
add ecx, ecx
test byte [eax + ecx*8 + 0xe], 0x20
je 0x4cce54
mov ax, word [ebx + 0x24]
sub ax, dx
mov edx, dword [esp + 0x64]
add ax, si
movzx ecx, ax
jmp 0x4cce60
movzx ecx, dx
mov edx, dword [esp + 0x64]
jmp 0x4cce60
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 0x4cd25e
mov eax, dword [esp + 0x50]
mov dword [edx + 0x2c], esi
cmp byte [eax + 0x95], 0
je 0x4ccf1c
mov byte [edx + 2], 0xa7
test byte [esi + 0x1c], 0x20
mov dword [esp + 0x30], 0xb0
je 0x4ccefe
test bx, bx
js 0x4ccefe
movsx ecx, bx
xor esi, esi
mov ebx, dword [esp + 0x1c]
xor edx, edx
test ecx, ecx
jle 0x4ccecc
mov eax, dword [ebx + 4]
mov esi, ecx
add eax, 0xe
nop
test byte [eax], 0x20
jne 0x4ccec6
inc edx
add eax, 0x10
dec ecx
jne 0x4ccec0
mov eax, dword [ebx + 4]
mov ecx, esi
add ecx, ecx
test byte [eax + ecx*8 + 0xe], 0x20
je 0x4ccef1
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 0x4ccf01
mov esi, dword [esp + 0x1c]
movzx eax, dx
mov edx, dword [esp + 0x64]
jmp 0x4ccf01
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 0x4cd25a
mov word [edx + 0x20], bx
mov dword [esp + 0x30], 0x4d
test ebx, ebx
jns 0x4ccf37
mov byte [edx + 1], 0x44
mov edi, eax
jmp 0x4cd25e
test edi, edi
jne 0x4ccf67
cmp ebx, 0x20
jl 0x4ccf52
mov edi, dword [esp + 0x50]
or eax, 0xffffffff
or dword [edi + 0x8c], eax
jmp 0x4cd25e
mov edi, dword [esp + 0x50]
mov eax, ebp
mov ecx, ebx
shl eax, cl
or dword [edi + 0x8c], eax
jmp 0x4cd25e
cmp ebx, 0x20
jl 0x4ccf7e
mov edi, dword [esp + 0x50]
or eax, 0xffffffff
or dword [edi + 0x90], eax
jmp 0x4cd25e
mov edi, dword [esp + 0x50]
mov eax, ebp
mov ecx, ebx
shl eax, cl
or dword [edi + 0x90], eax
jmp 0x4cd25e
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 0x4ccfd4
test byte [eax + 4], 0x10
je 0x4ccfd4
push edi
push str.misuse_of_aliased_aggregate__s
push dword [esp + 0x58]
call fcn.004ebb90
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x3c
ret
test dword [eax + 4], 0x8000
je 0x4ccff5
test ecx, 0x4000
je 0x4ccfed
mov ecx, dword [esp + 0x38]
cmp ebx, ecx
je 0x4ccff5
push edi
push str.misuse_of_aliased_window_function__s
jmp 0x4ccfbb
mov cl, byte [eax]
cmp cl, 0xb0
jne 0x4ccfff
mov cl, byte [eax + 2]
cmp cl, 0xb1
jne 0x4cd009
mov eax, dword [eax + 0x14]
jmp 0x4cd014
cmp cl, 0x8a
jne 0x4cd039
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
cmp eax, 1
je 0x4cd039
push str.row_value_misused
push dword [esp + 0x54]
call fcn.004ebb90
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.004d9950
mov edx, dword [esp + 0x78]
add esp, 0x14
cmp byte [edi + 0xd0], 2
jb 0x4cd333
mov eax, dword [edi + 0x10c]
test eax, eax
je 0x4cd333
cmp dword [eax], edx
je 0x4cd080
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4cd070
jmp 0x4cd333
mov dword [eax], 0
jmp 0x4cd333
test edx, edx
jne 0x4cd1c1
mov ebp, dword [esp + 0x64]
mov ebx, dword [ebp + 4]
test bl, 0x40
je 0x4cd0ed
mov eax, dword [esp + 0x2c]
cmp byte [eax + 0xb1], dl
jne 0x4cd13a
mov ecx, dword [esp + 0x38]
test dword [ecx + 0x18], 0x10000
je 0x4cd12d
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 0x4cd0e3
test edi, edi
jne 0x4cd0e3
mov eax, ecx
and eax, 0x40000000
or eax, edi
jne 0x4cd13a
and ecx, 0x20000000
or ecx, edi
jne 0x4cd13a
test ebx, 0x4000400
jne 0x4cd1c1
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 0x4cd163
test ecx, ecx
jne 0x4cd175
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 0x4cd0ed
push esi
push str.double_quoted_string_literal:___w_
push 0x1c
call fcn.0049bde0
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 + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4cd178
inc esi
jmp 0x4cd105
mov esi, str.false
sub esi, edx
nop
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x4cd1a8
test ecx, ecx
jne 0x4cd1ba
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 + 0x56afc0]
movzx ecx, byte [ecx + 0x56afc0]
sub ecx, eax
jne 0x4cd1bd
inc edx
jmp 0x4cd180
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 0x4cd1ea
push edx
push ebx
push eax
push str._s:__s._s._s
push edi
call fcn.004ebb90
add esp, 0x18
jmp 0x4cd20f
test edx, edx
je 0x4cd200
push edx
push eax
push str._s:__s._s
push edi
call fcn.004ebb90
add esp, 0x14
jmp 0x4cd20f
push eax
push str._s:__s
push edi
call fcn.004ebb90
add esp, 0x10
mov edx, dword [esp + 0x64]
mov eax, edx
mov ecx, dword [edi]
test byte [eax + 4], 1
jne 0x4cd223
cmp dword [eax + 0x24], 0
jg 0x4cd23b
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4cd217
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x18]
mov byte [edi + 0x11], 1
inc dword [eax + 0x14]
jmp 0x4cd25e
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 0x4cd25e
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 0x4cd2d4
test ebx, ebx
je 0x4cd2d4
mov edx, dword [edx + 0x2c]
movsx esi, ax
test byte [edx + 0x1c], 0x60
je 0x4cd2b2
mov eax, dword [edx + 4]
mov ecx, esi
add ecx, ecx
test byte [eax + ecx*8 + 0xe], 0x60
je 0x4cd2b2
movzx eax, word [edx + 0x22]
cmp ax, 0x40
jl 0x4cd29b
or eax, 0xffffffff
or edx, 0xffffffff
jmp 0x4cd2ca
movsx ecx, ax
xor edx, edx
mov eax, 1
call fcn.0041ee30
add eax, 0xffffffff
adc edx, 0xffffffff
jmp 0x4cd2ca
cmp esi, 0x40
jl 0x4cd2bc
mov esi, 0x3f
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.0041ee30
or dword [ebx + 0x38], eax
or dword [ebx + 0x3c], edx
mov edx, dword [esp + 0x64]
test dword [edx + 4], 0x804000
jne 0x4cd319
mov eax, dword [edx + 0xc]
mov esi, dword [esp + 0x2c]
test eax, eax
je 0x4cd2f6
push eax
push esi
call fcn.004ef5e0
mov edx, dword [esp + 0x6c]
add esp, 8
mov eax, dword [edx + 0x10]
mov dword [edx + 0xc], 0
test eax, eax
je 0x4cd312
push eax
push esi
call fcn.004ef5e0
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 0x4ccfc7
mov ebx, dword [esp + 0x60]
mov eax, dword [edi]
cmp dword [eax + 0x168], 0
je 0x4cd35a
mov al, byte [edx]
cmp al, 0xa7
je 0x4cd348
cmp al, 0x4d
jne 0x4cd35a
push dword [ebx + 4]
mov ecx, dword [esp + 0x2c]
push ecx
push edx
push edi
call fcn.004e0480
add esp, 0x10
mov eax, dword [esp + 0x38]
inc dword [eax + 0x10]
cmp eax, ebx
je 0x4cd36f
mov eax, dword [eax + 0xc]
inc dword [eax + 0x10]
cmp eax, ebx
jne 0x4cd365
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3c
ret