Function at 0x419d70
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x535ff5
mov eax, dword fs:[0]
push eax
mov eax, 0x14f4
call fcn.0051f200
mov eax, dword [0x5a6a30]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
lea ecx, [ebp - 0x14b0]
mov dword [ebp - 0x14b4], esi
call fcn.00429620
xor edi, edi
mov eax, 7
xor ecx, ecx
mov dword [ebp - 4], edi
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x24c], edi
mov word [ebp - 0x25c], cx
xor edx, edx
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x220], edi
mov word [ebp - 0x230], dx
mov dword [ebp - 0x264], eax
xor eax, eax
mov dword [ebp - 0x268], edi
mov word [ebp - 0x278], ax
push str.CModels::GetList__________________________IN._n
push 5
mov byte [ebp - 4], 3
call fcn.00403750
add esp, 8
cmp dword [esi + 0x60], edi
jne 0x419e26
push 0x3e9
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x41a4a9
cmp dword [esi + 0x38], 8
lea ebx, [esi + 0x24]
jb 0x419e33
mov eax, dword [ebx]
jmp 0x419e35
mov eax, ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x419e4e
push 2
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x41a4a9
push str.CModels::GetList_clear_m_vstrKeys_and_m_vstrValues._n
push 4
call fcn.00403750
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
add esp, 8
push eax
push ecx
lea ecx, [ebp - 0x14bc]
push ecx
lea ecx, [esi + 4]
call fcn.004088a0
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x14]
push eax
push ecx
lea eax, [ebp - 0x14bc]
push eax
lea ecx, [esi + 0x14]
call fcn.004088a0
cmp dword [ebp - 0x14ac], edi
jne 0x41a2f6
cmp dword [ebp + 8], edi
jne 0x41a2f6
push str.CModels::GetList_Windows_2000_XP_n
push 4
call fcn.00403750
add esp, 8
push 4
push 0
push 0
push 0
call dword [0x5a80fc]
mov edi, eax
cmp edi, 0xffffffff
jne 0x419ed8
push str.SetupDiGetClassDevs_failed._n
push 2
call fcn.00403750
add esp, 8
jmp 0x41a4a7
push str.CModels::GetList_SetupDiGetClassDevs_succeeded._n
push 4
call fcn.00403750
push 0x22c
lea ecx, [ebp - 0x59c]
push 0
push ecx
call fcn.0051eb70
add esp, 0x14
cmp dword [ebx + 0x14], 8
mov dword [ebp - 0x59c], 0x22c
jb 0x419f0e
mov eax, dword [ebx]
jmp 0x419f10
mov eax, ebx
push 0xffffffffffffffff
push eax
lea edx, [ebp - 0x578]
push 0x104
push edx
call fcn.0051fddc
or dword [ebp - 0x598], 0x10000
or dword [ebp - 0x594], 0x800
add esp, 0x10
lea eax, [ebp - 0x59c]
push eax
push 0
push edi
call dword [0x5a80cc]
test eax, eax
jne 0x419f6a
push str.SetupDiSetDeviceInstallParams_failed._n
push 2
call fcn.00403750
add esp, 8
push edi
call dword [0x5a80a4]
jmp 0x41a4a7
push str.CModels::GetList_SetupDiSetDeviceInstallParams_succeeded._n
push 4
call fcn.00403750
add esp, 8
push 1
push 0
push edi
call dword [0x5a80c8]
test eax, eax
jne 0x419f8f
push str.SetupDiBuildDriverInfoList_failed._n
jmp 0x419f54
push str.CModels::GetList_SetupDiBuildDriverInfoList_succeeded._n
push 4
call fcn.00403750
add esp, 8
lea ecx, [ebp - 0xbb8]
push ecx
push 0
push 1
push 0
push edi
mov dword [ebp - 0xbb8], 0x61c
mov dword [ebp - 0x14b8], 0
call dword [0x5a80c4]
test eax, eax
je 0x41a2de
cmp dword [ebp - 0x14b8], 0
mov dword [ebp - 0x11dc], 0x622
jne 0x41a005
mov edx, dword [ebp - 0x5ac]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [ebp - 0x5a4]
mov dword [esi + 0x64], edx
mov edx, dword [ebp - 0x5a0]
mov dword [esi + 0x68], eax
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
lea eax, [ebp - 0x9ac]
push eax
push str.CModels::GetList_SetupDiEnumDriverInfo_DriverInfoData.MfgName__1_s__._n
push 4
call fcn.00403750
add esp, 0xc
cmp dword [esi + 0x88], 0
je 0x41a048
cmp dword [esi + 0x8c], 8
lea eax, [esi + 0x78]
jb 0x41a032
mov eax, dword [eax]
lea ecx, [ebp - 0x9ac]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x41a2b6
push str.CModels::GetList_SetupDiEnumDriverInfo_DriverInfoData.MfgName_is_same_as_m_strMfgName._n
push 4
call fcn.00403750
xor eax, eax
add esp, 8
mov dword [ebp - 0x2a8], eax
lea edx, [ebp - 0x2a8]
push edx
mov dword [ebp - 0x2a4], eax
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x29c], eax
mov dword [ebp - 0x298], eax
lea eax, [ebp - 0xbb8]
push eax
push 0
push edi
mov dword [ebp - 0x2a8], 0x14
call dword [0x5a80b0]
test eax, eax
jne 0x41a0b7
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupDiGetDriverInstallParams_failed.__0x_1_lX___n
push 2
call fcn.00403750
add esp, 0xc
jmp 0x41a2b6
mov ecx, dword [ebp - 0x2a0]
push ecx
push str.DriverInstallParams.Flags__0x_1_lX__n
push 4
call fcn.00403750
add esp, 0xc
test byte [ebp - 0x2a0], 4
je 0x41a0f2
push str.This_driver_is_listed_in_ExcludeFromSelect._n
push 4
call fcn.00403750
add esp, 8
cmp dword [esi + 0x94], 0
je 0x41a2b6
push 0
push 0x622
lea edx, [ebp - 0x11dc]
push edx
lea eax, [ebp - 0xbb8]
push eax
push 0
push edi
call dword [0x5a80c0]
test eax, eax
jne 0x41a123
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x41a2b6
lea ecx, [ebp - 0xdbc]
push ecx
push str.DrvDescription___1_s__n
push 4
call fcn.00403750
lea edx, [ebp - 0x11c4]
push edx
push str.SectionName___1_s__n
push 4
call fcn.00403750
mov eax, dword [ebp - 0x11d0]
push eax
push str.CompatIDsOffset___1_lu__n
push 4
call fcn.00403750
mov ecx, dword [ebp - 0x11cc]
push ecx
push str.CompatIDsLength___1_lu__n
push 4
call fcn.00403750
lea edx, [ebp - 0xbbc]
push edx
push 0x54fd64
push 4
call fcn.00403750
add esp, 0x3c
lea eax, [ebp - 0xdbc]
push eax
lea ecx, [ebp - 0x294]
call fcn.00401f70
lea ecx, [ebp - 0x294]
push ecx
lea ecx, [esi + 4]
mov byte [ebp - 4], 4
call fcn.00402610
lea ecx, [ebp - 0x294]
mov byte [ebp - 4], 3
call fcn.00401880
push 0x202
lea edx, [ebp - 0x214]
push 0
push edx
call fcn.0051eb70
add esp, 0xc
cmp dword [ebx + 0x14], 8
jb 0x41a1d9
mov eax, dword [ebx]
jmp 0x41a1db
mov eax, ebx
push 0
push 0x20
lea ecx, [ebp - 0x2ec]
push ecx
lea edx, [ebp - 0x240]
push edx
push eax
call dword [0x5a80a0]
test eax, eax
je 0x41a248
cmp dword [ebx + 0x14], 8
jb 0x41a202
mov eax, dword [ebx]
jmp 0x41a204
mov eax, ebx
push 0
push 2
lea ecx, [ebp - 0x2ec]
push ecx
push eax
call dword [0x5a80bc]
mov esi, eax
cmp esi, 0xffffffff
je 0x41a242
push 0
push 0
push 0x100
lea edx, [ebp - 0x214]
push edx
lea eax, [ebp - 0x11c4]
push eax
push esi
call dword [0x5a80b8]
push esi
call dword [0x5a80b4]
mov esi, dword [ebp - 0x14b4]
lea ecx, [ebp - 0x214]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ecx, [ebp - 0x278]
test eax, eax
je 0x41a268
lea edx, [ebp - 0x214]
push edx
jmp 0x41a26f
lea eax, [ebp - 0x11c4]
push eax
call fcn.004036f0
lea ecx, [ebp - 0xbbc]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x41a2a7
push 0x54fd60
lea ecx, [ebp - 0x278]
call fcn.00403720
lea edx, [ebp - 0xbbc]
push edx
lea ecx, [ebp - 0x278]
call fcn.00403720
lea eax, [ebp - 0x278]
push eax
lea ecx, [esi + 0x14]
call fcn.00402610
mov eax, dword [ebp - 0x14b8]
lea ecx, [ebp - 0xbb8]
push ecx
inc eax
push eax
push 1
push 0
push edi
mov dword [ebp - 0x14b8], eax
call dword [0x5a80c4]
test eax, eax
jne 0x419fce
push 1
xor ebx, ebx
push ebx
push edi
call dword [0x5a80ac]
push edi
call dword [0x5a80a4]
jmp 0x41ad49
lea ecx, [ebp - 0x370]
call sym.DelDrv.exe_public:_void___thiscall_CDeviceInfSection::constructor_void_
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_void___thiscall_CDeviceInfSection::constructor_void_
lea ecx, [ebp - 0x1500]
mov byte [ebp - 4], 6
call fcn.00428600
push 0x2c
mov byte [ebp - 4], 7
mov dword [ebp - 0x14b8], edi
mov dword [ebp - 0x238], edi
call fcn.00429e40
add esp, 4
cmp eax, edi
je 0x41ae02
mov dword [ebp - 0x23c], eax
mov dword [eax], eax
mov eax, dword [ebp - 0x23c]
mov dword [eax + 4], eax
mov eax, dword [ebp - 0x23c]
mov dword [eax + 8], eax
mov edx, dword [ebp - 0x23c]
mov byte [edx + 0x28], 1
mov eax, dword [ebp - 0x23c]
mov byte [eax + 0x29], 1
push str.CModels::GetList_Windows_98_Me_n
push 4
mov byte [ebp - 4], 8
call fcn.00403750
mov esi, dword [ebp - 0x14b4]
add esi, 0x40
mov edi, 8
add esp, 8
cmp dword [esi + 0x14], edi
jb 0x41a395
mov eax, dword [esi]
jmp 0x41a397
mov eax, esi
push eax
push str.CModels::GetList_m_strSection____1_s___n
push 4
call fcn.00403750
add esp, 0xc
cmp dword [esi + 0x14], edi
jb 0x41a3ae
mov esi, dword [esi]
cmp dword [ebx + 0x14], edi
jb 0x41a3b7
mov eax, dword [ebx]
jmp 0x41a3b9
mov eax, ebx
mov ecx, dword [ebp - 0x14b4]
mov edx, dword [ecx + 0x5c]
push esi
push edx
push eax
lea ecx, [ebp - 0x370]
call sym.DelDrv.exe_public:_int___thiscall_CDeviceInfSection::Init_wchar_t_const___class_CInfStringTable___wchar_t_const__
test eax, eax
jne 0x41a414
push str.CModels::GetList_disModels_Initialize_failed._n
push 2
call fcn.00403750
add esp, 8
mov eax, dword [ebp - 0x23c]
mov ecx, dword [eax]
push eax
push ecx
lea eax, [ebp - 0x14bc]
push eax
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 9
call fcn.00415b50
mov ecx, dword [ebp - 0x23c]
push ecx
call fcn.00429e6f
add esp, 4
jmp 0x41a47e
lea ecx, [ebp - 0x370]
call sym.DelDrv.exe_public:_int___thiscall_CDeviceInfSection::GetList_void_
test eax, eax
jne 0x41a432
push str.CModels::GetList_disModels_GetList_failed._n
push 2
call fcn.00403750
add esp, 8
cmp dword [ebx + 0x14], edi
jb 0x41a43b
mov eax, dword [ebx]
jmp 0x41a43d
mov eax, ebx
mov edx, dword [ebp - 0x14b4]
mov ecx, dword [edx + 0x5c]
push str.ControlFlags
push ecx
push eax
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_int___thiscall_CDeviceInfSection::Init_wchar_t_const___class_CInfStringTable___wchar_t_const__
test eax, eax
jne 0x41a578
push str.CModels::GetList_disControlFlags_Initialize_failed._n
push 4
call fcn.00403750
add esp, 8
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 7
call fcn.00417380
lea ecx, [ebp - 0x1500]
mov byte [ebp - 4], 6
call fcn.00428610
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public_virtual:_void___thiscall_CDeviceInfSection::destructor_void_
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 3
call sym.DelDrv.exe_public_virtual:_void___thiscall_CDeviceInfSection::destructor_void_
xor edi, edi
push str.CModels::GetList__________________________Error_OUT._n
push 5
call fcn.00403750
mov ebx, 8
add esp, 8
cmp dword [ebp - 0x264], ebx
jb 0x41a4d4
mov edx, dword [ebp - 0x278]
push edx
call fcn.00429e6f
add esp, 4
xor eax, eax
mov esi, 7
mov dword [ebp - 0x264], esi
mov dword [ebp - 0x268], edi
mov word [ebp - 0x278], ax
cmp dword [ebp - 0x21c], ebx
jb 0x41a505
mov ecx, dword [ebp - 0x230]
push ecx
call fcn.00429e6f
add esp, 4
xor edx, edx
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x220], edi
mov word [ebp - 0x230], dx
cmp dword [ebp - 0x248], ebx
jb 0x41a531
mov eax, dword [ebp - 0x25c]
push eax
call fcn.00429e6f
add esp, 4
xor ecx, ecx
mov word [ebp - 0x25c], cx
lea ecx, [ebp - 0x14b0]
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], edi
mov dword [ebp - 4], 0xffffffff
call fcn.00429500
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051e701
mov esp, ebp
pop ebp
ret 4
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_int___thiscall_CDeviceInfSection::GetList_void_
test eax, eax
jne 0x41a596
push str.CModels::GetList_disControlFlags_GetList_failed._n
push 2
call fcn.00403750
add esp, 8
lea ecx, [ebp - 0x30c]
xor esi, esi
call sym.DelDrv.exe_public:_unsigned_long_int___thiscall_CDeviceInfSection::Count_void_
test eax, eax
je 0x41a6f6
mov ebx, dword [sym.imp.KERNEL32.dll_CompareStringW]
push esi
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_wchar_t_const____thiscall_CDeviceInfSection::GetKey_unsigned_long_int_
test eax, eax
je 0x41a5ff
push esi
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_wchar_t_const____thiscall_CDeviceInfSection::GetKey_unsigned_long_int_
push eax
push esi
push str.CModels::GetList_disControlFlags.GetKey__1_ld______2_s__._n
push 5
call fcn.00403750
add esp, 0x10
push 0xffffffffffffffff
push 0x54fa10
push 0xffffffffffffffff
push esi
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_wchar_t_const____thiscall_CDeviceInfSection::GetKey_unsigned_long_int_
push eax
push 1
push 0x7f
call ebx
cmp eax, 2
je 0x41a614
lea ecx, [ebp - 0x30c]
inc esi
call sym.DelDrv.exe_public:_unsigned_long_int___thiscall_CDeviceInfSection::Count_void_
cmp esi, eax
jb 0x41a5b1
jmp 0x41a6f6
push esi
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public:_wchar_t_const____thiscall_CDeviceInfSection::GetValue_unsigned_long_int_
mov ecx, eax
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41a625
sub ecx, esi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x230]
call fcn.00401dd0
push 0x54fa0c
lea ecx, [ebp - 0x230]
call fcn.00404120
test eax, eax
jne 0x41a673
push str.CModels::GetList_ExcludeFromSelect_n
push 5
call fcn.00403750
add esp, 8
mov dword [ebp - 0x14b8], 1
jmp 0x41a6f6
push str.CModels::GetList_ExcludeFromSelect_is_some_of_the_drivers._n
push 5
call fcn.00403750
mov eax, dword [ebp - 0x21c]
mov esi, dword [ebp - 0x230]
add esp, 8
mov ebx, esi
cmp eax, edi
jae 0x41a69c
lea ebx, [ebp - 0x230]
mov esi, ebx
lea edx, [ebp - 0x14e4]
push edx
lea ecx, [ebp - 0x230]
call fcn.00412780
mov eax, dword [eax]
push fcn.005200a7
push ebx
push eax
lea ecx, [ebp - 0x14c4]
push esi
push ecx
call fcn.00412c10
mov eax, dword [ebp - 0x230]
add esp, 0x14
cmp dword [ebp - 0x21c], edi
jae 0x41a6db
lea eax, [ebp - 0x230]
push 0x2c
push eax
lea ecx, [ebp - 0x1500]
call fcn.004289f0
push 0x20
lea ecx, [ebp - 0x1500]
call fcn.00428040
lea ecx, [ebp - 0x1500]
xor esi, esi
call fcn.00426dd0
test eax, eax
je 0x41a775
jmp 0x41a710
push esi
lea ecx, [ebp - 0x1500]
call fcn.00427000
push eax
push str.CModels::GetList_ExcludeFromSelect__1_s__._n
push 5
call fcn.00403750
add esp, 0xc
push esi
lea ecx, [ebp - 0x1500]
call fcn.00427000
push 0
lea edx, [ebp - 0x14c0]
push edx
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x14c0], eax
call fcn.00416080
push eax
lea eax, [ebp - 0x14e8]
push eax
lea ecx, [ebp - 0x240]
call fcn.00413810
lea ecx, [ebp - 0x1500]
inc esi
call fcn.00426dd0
cmp esi, eax
jb 0x41a710
lea ecx, [ebp - 0x1500]
call fcn.00428440
xor ebx, ebx
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x14c0], ebx
call sym.DelDrv.exe_public:_unsigned_long_int___thiscall_CDeviceInfSection::Count_void_
test eax, eax
je 0x41acef
lea ecx, [ebp - 0x14dc]
call fcn.00428600
push ebx
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 0xa
call sym.DelDrv.exe_public:_wchar_t_const____thiscall_CDeviceInfSection::GetKey_unsigned_long_int_
mov ecx, eax
lea esi, [ecx + 2]
jmp 0x41a7c0
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41a7c0
sub ecx, esi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x25c]
call fcn.00401dd0
push ebx
lea ecx, [ebp - 0x370]
call sym.DelDrv.exe_public:_wchar_t_const____thiscall_CDeviceInfSection::GetValue_unsigned_long_int_
mov ecx, eax
lea esi, [ecx + 2]
lea ecx, [ecx]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41a7f0
sub ecx, esi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x230]
call fcn.00401dd0
mov eax, dword [ebp - 0x25c]
cmp dword [ebp - 0x248], edi
jae 0x41a820
lea eax, [ebp - 0x25c]
push eax
push ebx
push str.CModels::GetList__1_ld__strKey_____2_s__._n
push 5
call fcn.00403750
mov eax, dword [ebp - 0x230]
add esp, 0x10
cmp dword [ebp - 0x21c], edi
jae 0x41a845
lea eax, [ebp - 0x230]
push eax
push ebx
push str.CModels::GetList__1_ld__strValue___2_s__._n
push 5
call fcn.00403750
mov eax, dword [ebp - 0x230]
add esp, 0x10
cmp dword [ebp - 0x21c], edi
jae 0x41a86a
lea eax, [ebp - 0x230]
push 0x2c
push eax
lea ecx, [ebp - 0x14dc]
call fcn.004289f0
lea ecx, [ebp - 0x14dc]
call fcn.00426dd0
test eax, eax
je 0x41ab4e
push 0
lea ecx, [ebp - 0x14dc]
call fcn.00427000
mov ecx, eax
lea esi, [ecx + 2]
lea ecx, [ecx]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41a8a0
sub ecx, esi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.00401dd0
lea ecx, [ebp - 0x14dc]
call fcn.00426dd0
cmp eax, 2
jb 0x41a90c
push 1
push 0x54fd60
lea ecx, [ebp - 0x278]
call fcn.004035d0
push 1
lea ecx, [ebp - 0x14dc]
call fcn.00427000
mov ecx, eax
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41a8f0
sub ecx, esi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004035d0
mov ecx, dword [ebp - 0x14b4]
cmp dword [ecx + 0x94], 0
jne 0x41ab6f
push str.CModels::GetList_ExcludeFromList_is_not_included._n
push 4
call fcn.00403750
add esp, 8
cmp dword [ebp - 0x14b8], 0
je 0x41a984
lea ecx, [ebp - 0x14dc]
call fcn.00426dd0
cmp eax, 2
jb 0x41a984
mov eax, dword [ebp - 0x25c]
mov edi, 8
cmp dword [ebp - 0x248], edi
jae 0x41a960
lea eax, [ebp - 0x25c]
push eax
push str.CModels::GetList_exclude___1_s__._n
push 5
call fcn.00403750
add esp, 0xc
lea ecx, [ebp - 0x14dc]
mov byte [ebp - 4], 8
call fcn.00428610
jmp 0x41accf
lea ecx, [ebp - 0x14dc]
call fcn.00428440
mov edx, dword [ebp - 0x21c]
mov ebx, dword [ebp - 0x230]
mov esi, ebx
cmp edx, 8
jae 0x41a9e9
lea esi, [ebp - 0x230]
mov eax, esi
mov ecx, dword [ebp - 0x220]
lea eax, [eax + ecx*2]
mov ecx, ebx
cmp edx, 8
jae 0x41a9c0
lea ecx, [ebp - 0x230]
cmp ecx, eax
je 0x41a9ed
push fcn.005200a7
push esi
push eax
push ecx
lea edx, [ebp - 0x14e0]
push edx
call fcn.004127b0
mov edx, dword [ebp - 0x21c]
mov ebx, dword [ebp - 0x230]
add esp, 0x14
jmp 0x41a9f3
mov eax, ebx
jmp 0x41a9aa
mov dword [ebp - 0x14e0], esi
mov eax, ebx
cmp edx, 8
jae 0x41aa00
lea eax, [ebp - 0x230]
push 0x2c
push eax
lea ecx, [ebp - 0x14dc]
call fcn.004289f0
lea ecx, [ebp - 0x14dc]
mov edi, 1
call fcn.00426dd0
cmp eax, edi
jbe 0x41ab6f
jmp 0x41aa30
push edi
lea ecx, [ebp - 0x14dc]
call fcn.00427000
test eax, eax
je 0x41ab38
xor ecx, ecx
mov word [ebp - 0x294], cx
mov ecx, eax
mov dword [ebp - 0x280], 7
mov dword [ebp - 0x284], 0
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41aa66
sub ecx, esi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x294]
call fcn.00401dd0
mov esi, dword [ebp - 0x23c]
lea edx, [ebp - 0x294]
push edx
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0xb
call fcn.00412bb0
mov dword [ebp - 0x14c4], eax
cmp eax, dword [ebp - 0x23c]
je 0x41aadc
mov ecx, dword [eax + 0x1c]
add eax, 0xc
cmp dword [eax + 0x14], 8
jb 0x41aaba
mov eax, dword [eax]
push ecx
push eax
mov eax, dword [ebp - 0x284]
push eax
push 0
lea ecx, [ebp - 0x294]
call fcn.00403e80
test eax, eax
js 0x41aadc
lea eax, [ebp - 0x14c4]
jmp 0x41aaee
mov ecx, dword [ebp - 0x23c]
mov dword [ebp - 0x14e4], ecx
lea eax, [ebp - 0x14e4]
cmp dword [eax], esi
mov byte [ebp - 4], 0xa
setne bl
cmp dword [ebp - 0x280], 8
jb 0x41ab0f
mov edx, dword [ebp - 0x294]
push edx
call fcn.00429e6f
add esp, 4
test bl, bl
je 0x41ab38
cmp dword [ebp - 0x248], 8
mov eax, dword [ebp - 0x25c]
jae 0x41ab28
lea eax, [ebp - 0x25c]
push eax
push str.CModels::GetList_exclude___1_s__._n
push 5
call fcn.00403750
add esp, 0xc
lea ecx, [ebp - 0x14dc]
inc edi
call fcn.00426dd0
cmp edi, eax
jb 0x41aa30
jmp 0x41ab6f
push str.CModels::GetList_strValue.data___has_no_items._n
push 4
call fcn.00403750
add esp, 8
push 0
push 0x549a80
lea ecx, [ebp - 0x278]
call fcn.00401dd0
mov eax, dword [ebp - 0x25c]
mov esi, 8
cmp dword [ebp - 0x248], esi
jae 0x41ab88
lea eax, [ebp - 0x25c]
push eax
push str.CModels::GetList_Add_Key____1_s__._n
push 4
call fcn.00403750
mov eax, dword [ebp - 0x278]
add esp, 0xc
cmp dword [ebp - 0x264], esi
jae 0x41abac
lea eax, [ebp - 0x278]
push eax
push str.CModels::GetList_Add_Value____1_s__._n
push 4
call fcn.00403750
mov edx, dword [ebp - 0x25c]
add esp, 0xc
cmp dword [ebp - 0x248], esi
jae 0x41abd0
lea edx, [ebp - 0x25c]
xor ebx, ebx
xor eax, eax
mov word [ebp - 0x294], ax
mov eax, edx
mov dword [ebp - 0x280], 7
mov dword [ebp - 0x284], ebx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x41abf0
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x294]
call fcn.00401dd0
mov edi, dword [ebp - 0x14b4]
lea ecx, [ebp - 0x294]
push ecx
lea ecx, [edi + 4]
mov byte [ebp - 4], 0xc
call fcn.00418280
cmp dword [ebp - 0x280], 8
mov byte [ebp - 4], 0xa
jb 0x41ac41
mov edx, dword [ebp - 0x294]
push edx
call fcn.00429e6f
add esp, 4
cmp dword [ebp - 0x264], 8
mov edx, dword [ebp - 0x278]
jae 0x41ac56
lea edx, [ebp - 0x278]
xor eax, eax
mov word [ebp - 0x294], ax
mov eax, edx
mov dword [ebp - 0x280], 7
mov dword [ebp - 0x284], ebx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x41ac74
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x294]
call fcn.00401dd0
lea ecx, [ebp - 0x294]
push ecx
lea ecx, [edi + 0x14]
mov byte [ebp - 4], 0xd
call fcn.00418280
cmp dword [ebp - 0x280], 8
jb 0x41acbb
mov edx, dword [ebp - 0x294]
push edx
call fcn.00429e6f
add esp, 4
lea ecx, [ebp - 0x14dc]
mov byte [ebp - 4], 8
call fcn.00428610
mov edi, 8
mov ebx, dword [ebp - 0x14c0]
inc ebx
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x14c0], ebx
call sym.DelDrv.exe_public:_unsigned_long_int___thiscall_CDeviceInfSection::Count_void_
cmp ebx, eax
jb 0x41a79b
mov eax, dword [ebp - 0x23c]
mov ecx, dword [eax]
push eax
push ecx
lea eax, [ebp - 0x14bc]
push eax
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0xe
call fcn.00415b50
mov ecx, dword [ebp - 0x23c]
push ecx
call fcn.00429e6f
add esp, 4
lea ecx, [ebp - 0x1500]
mov byte [ebp - 4], 6
call fcn.00428610
lea ecx, [ebp - 0x30c]
call sym.DelDrv.exe_public_virtual:_void___thiscall_CDeviceInfSection::destructor_void_
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 3
call sym.DelDrv.exe_public_virtual:_void___thiscall_CDeviceInfSection::destructor_void_
xor ebx, ebx
push str.CModels::GetList__________________________OUT._n
push 5
call fcn.00403750
mov edi, 8
add esp, 8
cmp dword [ebp - 0x264], edi
jb 0x41ad74
mov edx, dword [ebp - 0x278]
push edx
call fcn.00429e6f
add esp, 4
xor eax, eax
mov esi, 7
mov dword [ebp - 0x264], esi
mov dword [ebp - 0x268], ebx
mov word [ebp - 0x278], ax
cmp dword [ebp - 0x21c], edi
jb 0x41ada5
mov ecx, dword [ebp - 0x230]
push ecx
call fcn.00429e6f
add esp, 4
xor edx, edx
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x220], ebx
mov word [ebp - 0x230], dx
cmp dword [ebp - 0x248], edi
jb 0x41add1
mov eax, dword [ebp - 0x25c]
push eax
call fcn.00429e6f
add esp, 4
xor ecx, ecx
mov word [ebp - 0x25c], cx
lea ecx, [ebp - 0x14b0]
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 4], 0xffffffff
call fcn.00429500
mov eax, 1
jmp 0x41a55a
lea edx, [ebp - 0x14bc]
push edx
lea ecx, [ebp - 0x2a0]
mov dword [ebp - 0x14bc], edi
call fcn.0051d822
push 0x58e000
lea eax, [ebp - 0x2a0]
push eax
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.0051e710
int3