Function at 0x42bcb0
Capabilities:
Reference sql statements

Disassembly:
sub esp, 0x84c
or ecx, 0xffffffff
xor eax, eax
push ebx
push ebp
push esi
push edi
mov edi, str.0000
mov ebp, dword [esp + 0x86c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x476ecf4]
test eax, eax
jne 0x42c323
mov esi, dword [esp + 0x860]
lea eax, [esi + esi*2]
lea ecx, [eax + eax*8]
lea eax, [esi + ecx*8]
mov ecx, dword [esp + 0x864]
lea edx, [eax + eax*2]
lea eax, [esi + edx*2]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*8]
lea eax, [esp + 0x34]
shl edi, 2
lea ecx, [esp + 0x30]
mov dword [esp + 0x14], edi
mov edx, dword [edi + 0x65937c]
push edx
push eax
lea edx, [esp + 0x28]
push ecx
lea eax, [esp + 0x34]
push edx
lea ecx, [esp + 0x3c]
push eax
lea edx, [esp + 0x38]
push ecx
lea eax, [esp + 0x30]
push edx
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.004265e0
add esp, 0x24
test eax, eax
je 0x42c323
push 0x46054d8
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x65661c]
test eax, eax
je 0x42bff9
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
mov ecx, dword [esp + 0x884]
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
lea edx, [esp + 0x60]
push 0x476ed38
push edx
lea eax, [esp + 0x68]
push 0x476ed38
push eax
push 0x476ed38
push ecx
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
lea edx, [esp + 0xf0]
push str.SELECT_GATC__sOUTPUT.out01_GATC__sOUTPUT.out02_GATC__sOUTPUT.out03_GATC__sOUTPUT.out04_GATC__sOUTPUT.out05_GATC__sOUTPUT.out06_GATC__sOUTPUT.out07_GATC__sOUTPUT.out08_GATC__sOUTPUT.out09_GATC__sOUTPUT.out10_GATC__sOUTPUT.out11_GATC__sOUTPUT.out12_GATC__sOUTPUT.out13_GATC__sOUTPUT.out14_GATC__sOUTPUT.out15_GATC__sOUTPUT.out16_FROM_GATC__sOUTPUT_GATC__sBADGE_codd__ssubject15_WHERE_GATC__sBADGE.hextessera_s_AND_codd__ssubject15.dtactivat__s_AND_codd__ssubject15.dtexpirat__s_AND_codd__ssubject15.idcompanyGATC__sBADGE.idcompany_AND_codd__ssubject15.idsubjectGATC__sBADGE.idsubject_AND_codd__ssubject15.idsystemGATC__sBADGE.idsystem_AND_codd__ssubject15.idticketGATC__sBADGE.idticket_AND_codd__ssubject15.dtactivatGATC__sBADGE.dtactivat_AND_GATC__sOUTPUT.idoutputGATC__sBADGE.modout
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x9c
lea eax, [esp + 0x5c]
push 1
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x24], esp
push eax
call fcn.00445210
mov ecx, dword [0x516f90]
mov edx, dword [ecx]
call dword [edx + 0xc]
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
test eax, eax
mov dword [0x476ecf4], eax
jne 0x42bff9
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
test al, al
jne 0x42bff9
mov al, byte [ebx + 4]
test al, al
jne 0x42bfe6
mov edx, dword [ebx]
push 4
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 3
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 2
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
lea ecx, [eax + esi*2]
push ecx
push 8
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 7
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 6
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 5
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
lea ecx, [eax + esi*2]
push ecx
push 0xc
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 0xb
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 0xa
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 9
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
lea ecx, [eax + esi*2]
push ecx
push 0x10
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 0xf
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 0xe
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 0xd
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
lea ecx, [eax + esi*2]
push ecx
push str._X_X_X_X
push ebp
call dword [sym.imp.USER32.dll_wsprintfA]
push ebp
call fcn.0045f750
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 0x1c
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x860]
mov edi, dword [esp + 0x14]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x1c]
test ebx, ebx
je 0x42bff9
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx]
mov eax, dword [edi + 0x65679c]
test eax, eax
je 0x42c318
mov eax, dword [edi + 0x676660]
xor ebx, ebx
test eax, eax
jle 0x42c024
mov ebx, dword [edi + 0x6766e0]
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
jmp 0x42c158
mov eax, dword [edi + 0x643948]
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
push eax
lea eax, [esi + esi*2]
push 0x476ed38
lea ecx, [eax + eax*8]
lea eax, [esi + ecx*8]
lea edx, [eax + eax*2]
lea eax, [esi + edx*2]
mov edx, dword [0x476edd0]
lea eax, [eax + eax*4]
shl eax, 5
mov ecx, dword [eax + 0x643944]
lea eax, [esp + 0x3c]
push ecx
push 0x476ed38
push edx
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
mov edx, dword [esp + 0x89c]
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push eax
lea ecx, [esp + 0x80]
push 0x476ed38
push ecx
push 0x476ed38
push edx
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
lea eax, [esp + 0xcc]
push str.SELECT_GATC__sMODE.idmodout_FROM_GATC__sMODE_GATC__sBADGE_codd__ssubject15_WHERE_GATC__sBADGE.hextessera_s_AND_codd__ssubject15.dtactivat__s_AND_codd__ssubject15.dtexpirat__s_AND_codd__ssubject15.idcompanyGATC__sBADGE.idcompany_AND_codd__ssubject15.idsubjectGATC__sBADGE.idsubject_AND_codd__ssubject15.idsystemGATC__sBADGE.idsystem_AND_codd__ssubject15.idticketGATC__sBADGE.idticket_AND_codd__ssubject15.dtactivatGATC__sBADGE.dtactivat_AND_GATC__sMODE.idmodeGATC__sBADGE.modacc_AND_GATC__sMODE.kcom_d_AND_GATC__sMODE.channel_d_AND_GATC__sMODE.device_d
push eax
call edi
add esp, 0x78
lea edx, [esp + 0x5c]
push 1
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00445210
mov ecx, dword [0x516f90]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov esi, eax
xor eax, eax
test esi, esi
sete al
test eax, eax
mov dword [0x476ecf4], eax
jne 0x42c318
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x24]
test al, al
jne 0x42c318
mov al, byte [esi + 4]
test al, al
jne 0x42c145
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x10]
call fcn.0045f9d8
mov ebx, eax
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
test esi, esi
je 0x42c158
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
test ebx, ebx
jle 0x42c318
push ebx
push 0x476ed38
lea ecx, [esp + 0x64]
push str.SELECT_out01_out02_out03_out04_out05_out06_out07_out08_out09_out10_out11_out12_out13_out14_out15_out16_FROM_GATC__sOUTPUT_WHERE_idoutput_d
push ecx
call edi
add esp, 0x10
lea edx, [esp + 0x5c]
push 1
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00445210
mov ecx, dword [0x516f90]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
test eax, eax
mov dword [0x476ecf4], eax
jne 0x42c318
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x24]
test al, al
jne 0x42c318
mov al, byte [ebx + 4]
test al, al
jne 0x42c305
mov eax, dword [ebx]
push 4
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 3
mov ecx, ebx
mov esi, eax
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 2
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 1
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
lea eax, [eax + esi*2]
push eax
push 8
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 7
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 6
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 5
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
lea ecx, [eax + esi*2]
push ecx
push 0xc
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 0xb
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 0xa
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 9
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
lea ecx, [eax + esi*2]
push ecx
push 0x10
mov ecx, ebx
call dword [edx + 0x10]
call fcn.0045f9d8
mov esi, eax
mov eax, dword [ebx]
push 0xf
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
mov edx, dword [ebx]
push 0xe
mov ecx, ebx
lea esi, [eax + esi*2]
call dword [edx + 0x10]
call fcn.0045f9d8
lea esi, [eax + esi*2]
mov eax, dword [ebx]
push 0xd
mov ecx, ebx
call dword [eax + 0x10]
call fcn.0045f9d8
lea ecx, [eax + esi*2]
push ecx
push str._X_X_X_X
push ebp
call edi
push ebp
call fcn.0045f750
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 0x1c
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x1c]
test ebx, ebx
je 0x42c318
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx]
push 0x46054d8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84c
ret