Function at 0x4340e0
Capabilities:
Reference sql statements

Disassembly:
mov eax, 0x1c54
call fcn.0045ec70
mov eax, dword [0x476ecf4]
push ebx
push ebp
xor ebp, ebp
push esi
cmp eax, ebp
push edi
je 0x434106
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c54
ret
mov esi, dword [esp + 0x1c68]
mov ebx, dword [esp + 0x1c6c]
lea eax, [esi + esi*2]
lea eax, [eax + eax*8]
lea eax, [esi + eax*8]
lea ecx, [eax + eax*2]
lea eax, [esi + ecx*2]
lea ecx, [esp + 0x54]
lea edx, [eax + eax*4]
lea edi, [ebx + edx*8]
lea edx, [esp + 0x44]
shl edi, 2
mov eax, dword [edi + 0x65937c]
push eax
push ecx
lea eax, [esp + 0x54]
push edx
lea ecx, [esp + 0x54]
push eax
lea edx, [esp + 0x30]
push ecx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0x3c]
push eax
lea edx, [esp + 0x38]
push ecx
push edx
call fcn.004265e0
add esp, 0x24
test eax, eax
jne 0x434172
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c54
ret
push 0x46054d8
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [esi + esi*2]
mov dword [esp + 0x30], ebp
lea eax, [eax + eax*8]
lea eax, [esi + eax*8]
lea ecx, [eax + eax*2]
lea eax, [esi + ecx*2]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c70]
push eax
lea eax, [esi + esi*2]
lea ebx, [ebx + edx*4]
push 0x476ed38
lea edx, [eax + eax*8]
push 0x476ed38
shl ebx, 3
lea eax, [esi + edx*8]
push 0x476ed38
mov dword [ebx + 0x6753c8], ebp
mov dword [ebx + 0x6753cc], ebp
lea eax, [eax + eax*2]
mov dword [ebx + 0x6754c8], ebp
mov dword [ebx + 0x6754cc], ebp
mov ecx, dword [edi + 0x643948]
lea eax, [esi + eax*2]
push ecx
push 0x476ed38
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [eax + eax*4]
mov eax, dword [0x476edd0]
shl ecx, 5
mov dword [esp + 0x2c], ebx
mov edx, dword [ecx + 0x643944]
lea ecx, [esp + 0x164]
push edx
push 0x476ed38
push eax
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
push 0x476ed38
push 0x476ed38
push str.SELECT_GATC__sSERVIZI.idservizio_GATC__sSERVIZI.cproword_GATC__sSERVIZI.consumo_GATC__sSERVIZI.tipo_GATC__sSERVIZI.nrule_GATC__sSERVIZI.rulevalue_FROM__codd__ssubject15_LEFT_OUTER_JOIN_GATC__sBADGE_ON_codd__ssubject15.idcompanyGATC__sBADGE.idcompany_AND_codd__ssubject15.idsubjectGATC__sBADGE.idsubject_AND_codd__ssubject15.dtactivatGATC__sBADGE.dtactivat_AND_codd__ssubject15.idsystemGATC__sBADGE.idsystem_AND_codd__ssubject15.idticketGATC__sBADGE.idticket___GATC__sSERVDEVICE__GATC__sSERVIZI__GATC__sSERVBADGE_WHERE_GATC__sSERVDEVICE.kcom_d_AND_GATC__sSERVDEVICE.channel_d_AND_GATC__sSERVDEVICE.device_d_AND_GATC__sSERVDEVICE.idservizioGATC__sSERVIZI.idservizio_AND_GATC__sBADGE.hextessera_s_AND
push ecx
call esi
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 + 0x10c]
push 0x476ed38
push edx
push 0x476ed38
lea eax, [esp + 0x118]
push eax
push 0x476ed38
lea ecx, [esp + 0xd30]
push str.codd__ssubject15.dtactivat__s_AND_codd__ssubject15.dtexpirat__s_AND_codd__ssubject15.idcompanyGATC__sSERVBADGE.idcompany_AND_codd__ssubject15.idsubjectGATC__sSERVBADGE.idsubject_AND_codd__ssubject15.idsystemGATC__sSERVBADGE.idsystem_AND_codd__ssubject15.idticketGATC__sSERVBADGE.idticket_AND_codd__ssubject15.dtactivatGATC__sSERVBADGE.dtactivat_AND_GATC__sSERVIZI.idservizioGATC__sSERVBADGE.idservizio_AND_GATC__sSERVIZI.cprowordGATC__sSERVBADGE.idconsumo
push ecx
call esi
lea edi, [esp + 0x220]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xd4
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0xc64]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov eax, ecx
xor ecx, ecx
cmp eax, ebp
jle 0x434341
mov ecx, eax
lea edi, [esp + edx + 0x14c]
mov ebp, ecx
lea esi, [esp + 0xc64]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
add ecx, edx
push 1
sub esp, 0x10
lea edx, [esp + 0x160]
mov byte [esp + ecx + 0x160], 0
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 ebp, eax
xor eax, eax
test ebp, ebp
sete al
test eax, eax
mov dword [0x476ecf4], eax
jne 0x43448b
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x24]
test al, al
jne 0x43448b
mov al, byte [ebp + 4]
mov dword [esp + 0x10], 0
test al, al
jne 0x434476
lea ebx, [esp + 0x950]
mov eax, dword [ebp]
push 1
mov ecx, ebp
call dword [eax + 0x10]
call fcn.0045f9d8
mov dword [ebx - 4], eax
mov edx, dword [ebp]
push 2
mov ecx, ebp
call dword [edx + 0x10]
call fcn.0045f9d8
mov dword [ebx], eax
mov eax, dword [ebp]
push 3
mov ecx, ebp
call dword [eax + 0x10]
fstp qword [ebx + 4]
mov edx, dword [ebp]
push 4
mov ecx, ebp
call dword [edx + 0x10]
call fcn.0045f9d8
mov dword [ebx + 0xc], eax
mov eax, dword [ebp]
push 5
mov ecx, ebp
call dword [eax + 0x10]
call fcn.0045f9d8
mov dword [ebx + 0x10], eax
mov edx, dword [ebp]
lea eax, [esp + 0x34]
push 6
push eax
mov ecx, ebp
call dword [edx + 0x14]
mov eax, dword [eax + 4]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebx + 0x14]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x34]
call fcn.00445280
lea eax, [ebx + 0x14]
push 0x46e08c
push eax
call dword [sym.imp.SHLWAPI.dll_StrTrimA]
mov eax, dword [esp + 0x10]
add ebx, 0x48
inc eax
cmp eax, 0xa
mov dword [esp + 0x10], eax
je 0x434472
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x20]
mov al, byte [ebp + 4]
test al, al
je 0x4343ae
mov ebx, dword [esp + 0x14]
mov eax, dword [ebp]
mov ecx, ebp
call dword [eax + 0x1c]
test ebp, ebp
je 0x43448b
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx]
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x434938
mov eax, dword [esp + 0x1c70]
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push eax
lea ecx, [esp + 0x68]
push 0x476ed38
push ecx
lea edx, [esp + 0x70]
push 0x476ed38
push edx
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
mov ebp, dword [sym.imp.USER32.dll_wsprintfA]
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
lea eax, [esp + 0x14c4]
push str.SELECT_GATC__sSERVBADGE_m.credit_FROM__codd__ssubject15_LEFT_OUTER_JOIN_GATC__sBADGE_ON_codd__ssubject15.idcompanyGATC__sBADGE.idcompany_AND_codd__ssubject15.idsubjectGATC__sBADGE.idsubject_AND_codd__ssubject15.dtactivatGATC__sBADGE.dtactivat_AND_codd__ssubject15.idsystemGATC__sBADGE.idsystem_AND_codd__ssubject15.idticketGATC__sBADGE.idticket___GATC__sSERVBADGE_m_WHERE_codd__ssubject15.dtactivat___s_AND_codd__ssubject15.dtexpirat__s_AND_GATC__sBADGE.hextessera_s_AND_codd__ssubject15.idcompanyGATC__sSERVBADGE_m.idcompany_AND_codd__ssubject15.idsubjectGATC__sSERVBADGE_m.idsubject
push eax
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0xbff00000
call ebp
add esp, 0x68
lea edx, [esp + 0x1464]
push 1
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x28], 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 0x4345a7
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x24]
test al, al
jne 0x4345a7
mov al, byte [esi + 4]
test al, al
jne 0x434594
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x10]
fstp qword [esp + 0x34]
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
test esi, esi
je 0x4345a7
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
lea ecx, [esp + 0x24]
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x28]
push eax
push ecx
lea edx, [esp + 0xb0]
push str._s__s__s_s_00:00:00
push edx
call ebp
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x34]
push eax
lea edx, [esp + 0x34]
push ecx
lea eax, [esp + 0x40]
push edx
push eax
lea ecx, [esp + 0xb4]
push str._s__s__s_s_23:59:59
push ecx
call ebp
lea edx, [esp + 0xd0]
push edx
call fcn.0045dfb0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x154]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xc0]
push ecx
call fcn.0045dfb0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 0x38
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xf4]
mov eax, ecx
mov esi, edi
mov edi, edx
mov dword [esp + 0x28], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x10]
and ecx, 3
mov dword [esp + 0x2c], 0
test eax, eax
rep movsb byte es:[edi], byte [esi]
jle 0x434907
lea ecx, [esp + 0x954]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
jmp 0x434689
mov ebp, dword [sym.imp.USER32.dll_wsprintfA]
mov edi, 0x514f20
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0xb4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x476ed38
mov eax, ecx
mov esi, edi
mov edi, edx
push 0x476ed38
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x476ed38
push 0x476ed38
and ecx, 3
push 0x476ed38
push 0x476ed38
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c88]
push 0x476ed38
push 0x476ed38
push 0x476ed38
push 0x476ed38
push ecx
lea edx, [esp + 0x80]
push 0x476ed38
push edx
lea eax, [esp + 0x88]
push 0x476ed38
push eax
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 ecx, [esp + 0x1c4]
push str.SELECT_GATC__sSERVCONSUMI.fullnameclose_FROM__codd__ssubject15_LEFT_OUTER_JOIN_GATC__sBADGE_ON_codd__ssubject15.idcompanyGATC__sBADGE.idcompany_AND_codd__ssubject15.idsubjectGATC__sBADGE.idsubject_AND_codd__ssubject15.dtactivatGATC__sBADGE.dtactivat_AND_codd__ssubject15.idsystemGATC__sBADGE.idsystem_AND_codd__ssubject15.idticketGATC__sBADGE.idticket___GATC__sSERVCONSUMI_WHERE_codd__ssubject15.dtactivat__s_AND_codd__ssubject15.dtexpirat__s_AND_GATC__sBADGE.hextessera_s_AND_GATC__sSERVCONSUMI.idcompanycodd__ssubject15.idcompany_AND_GATC__sSERVCONSUMI.idsubjectcodd__ssubject15.idsubject_AND_GATC__sSERVCONSUMI.idsystemcodd__ssubject15.idsystem_AND_GATC__sSERVCONSUMI.idticketcodd__ssubject15.idticket_AND_GATC__sSERVCONSUMI.dtactivatcodd__ssubject15.dtactivat_AND
push ecx
call ebp
mov ecx, dword [esp + 0x90]
lea edx, [esp + 0x174]
push edx
lea eax, [esp + 0x1a4]
mov edx, dword [ecx - 8]
push 0x476ed38
push eax
push 0x476ed38
push edx
push 0x476ed38
lea eax, [esp + 0xcfc]
push str.GATC__sSERVCONSUMI.idservizio_d_AND_GATC__sSERVCONSUMI.dttransinit__s_AND_GATC__sSERVCONSUMI.dttransinit__s
push eax
call ebp
lea edi, [esp + 0x1ec]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xa0
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0xc64]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov eax, ecx
xor ecx, ecx
test eax, eax
jle 0x4347e9
mov ecx, eax
lea edi, [esp + edx + 0x14c]
mov ebp, ecx
lea esi, [esp + 0xc64]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
add ecx, edx
push 1
sub esp, 0x10
lea edx, [esp + 0x160]
mov byte [esp + ecx + 0x160], 0
mov ecx, esp
mov dword [esp + 0x64], esp
push edx
call fcn.00445210
mov ecx, dword [0x516f90]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ebp, eax
xor eax, eax
test ebp, ebp
sete al
test eax, eax
mov dword [0x476ecf4], eax
jne 0x4348a2
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x24]
test al, al
jne 0x4348a2
mov al, byte [ebp + 4]
test al, al
jne 0x43488d
mov eax, dword [ebp]
lea ecx, [esp + 0x7c]
push 1
push ecx
mov ecx, ebp
call dword [eax + 0x14]
mov edi, dword [eax + 4]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0xb4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x7c]
call fcn.00445280
lea ecx, [esp + 0xb4]
push 0x46e08c
push ecx
call dword [sym.imp.SHLWAPI.dll_StrTrimA]
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x1c]
test ebp, ebp
je 0x4348a2
mov eax, dword [ebp]
push 1
mov ecx, ebp
call dword [eax]
mov edi, 0x514f20
lea esi, [esp + 0xb4]
mov cl, byte [esi]
mov dl, byte [edi]
mov al, cl
cmp cl, dl
jne 0x4348d6
test al, al
je 0x4348d2
mov dl, byte [esi + 1]
mov cl, byte [edi + 1]
mov al, dl
cmp dl, cl
jne 0x4348d6
add esi, 2
add edi, 2
test al, al
jne 0x4348ae
xor eax, eax
jmp 0x4348db
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4348ed
mov eax, dword [esp + 0x10]
fld qword [esp + 0x28]
fadd qword [eax]
fstp qword [esp + 0x28]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
add ecx, 0x48
dec eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
jne 0x434683
fld qword [esp + 0x34]
fcom qword [esp + 0x28]
fnstsw ax
test ah, 1
jne 0x43491e
mov dword [esp + 0x30], 1
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
fstp qword [ebx + 0x6753c8]
mov dword [ebx + 0x6754c8], ecx
mov dword [ebx + 0x6754cc], edx
push 0x46054d8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x30]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c54
ret