Function at 0x404e5f
Capabilities:
Link many functions at runtime
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x324
push ebx
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov eax, dword [esi + 0x4bc]
cmp eax, ebx
je 0x4050dc
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.SetupOpenInfFileA
push eax
call edi
push str.SetupCloseInfFile
mov dword [esi + 0x4c0], eax
push dword [esi + 0x4bc]
call edi
push str.SetupFindFirstLineA
mov dword [esi + 0x4c4], eax
push dword [esi + 0x4bc]
call edi
push str.SetupFindNextLine
mov dword [esi + 0x4c8], eax
push dword [esi + 0x4bc]
call edi
push str.SetupGetStringFieldA
mov dword [esi + 0x4cc], eax
push dword [esi + 0x4bc]
call edi
push dword [ebp + 8]
mov dword [esi + 0x4d0], eax
lea eax, [ebp - 0x324]
mov dword [ebp - 4], ebx
push eax
mov dword [ebp - 8], ebx
call fcn.0040bb30
push dword [ebp + 0xc]
lea eax, [ebp - 0x324]
push eax
call fcn.0040bb40
add esp, 0x10
lea eax, [ebp - 0x324]
push ebx
push 1
push str.NetAdapter
push eax
call dword [esi + 0x4c0]
cmp eax, 0xffffffff
mov dword [ebp + 8], eax
jne 0x404f55
lea eax, [ebp - 0x11c]
push 0x104
push eax
push 0xc35c
push ebx
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x40
lea eax, [ebp - 0x11c]
push 0x425048
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
call fcn.0040be8d
lea ecx, [ebp - 0x18]
push ecx
push str.ProductSoftwareName
push str.FileConstants
push eax
call dword [esi + 0x4c8]
mov edi, 0x104
test eax, eax
je 0x404fd3
push ebx
lea eax, [ebp - 0x220]
push edi
push eax
lea eax, [ebp - 0x18]
push ebx
push eax
call dword [esi + 0x4d0]
lea eax, [ebp - 0x220]
push str.ProductSoftwareName
push eax
call fcn.0040c250
pop ecx
test eax, eax
pop ecx
jne 0x404fae
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x18]
push eax
call dword [esi + 0x4cc]
jmp 0x404f6f
push ebx
lea eax, [esi + 0x10c]
push edi
push eax
lea eax, [ebp - 0x18]
push 1
push eax
call dword [esi + 0x4d0]
push dword [ebp + 8]
call dword [esi + 0x4c4]
mov dword [ebp - 4], 1
push dword [ebp + 8]
call dword [esi + 0x4c4]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 1
lea eax, [ebp - 0x324]
push str.NetAdapter
push eax
call dword [esi + 0x4c0]
cmp eax, 0xffffffff
mov dword [ebp + 8], eax
jne 0x40502f
lea eax, [ebp - 0x11c]
push edi
push eax
push 0xc35c
push ebx
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x40
lea eax, [ebp - 0x11c]
push 0x425048
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
call fcn.0040be8d
lea ecx, [ebp - 0x18]
push ecx
push ebx
push str.Options
push eax
call dword [esi + 0x4c8]
test eax, eax
je 0x405095
push ebx
lea eax, [esi + 0x210]
push edi
push eax
lea eax, [ebp - 0x18]
push ebx
push eax
call dword [esi + 0x4d0]
lea eax, [esi + 0x210]
push eax
call fcn.0040c0a0
test eax, eax
pop ecx
jne 0x405085
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x18]
push eax
call dword [esi + 0x4cc]
test eax, eax
je 0x405095
push ebx
push edi
lea eax, [esi + 0x210]
jmp 0x40504c
push dword [ebp + 8]
call dword [esi + 0x4c4]
mov dword [ebp - 8], 1
push dword [ebp + 8]
call dword [esi + 0x4c4]
cmp dword [ebp - 4], ebx
je 0x4050ac
cmp dword [ebp - 8], ebx
je 0x4050ac
xor eax, eax
jmp 0x4050df
lea eax, [ebp - 0x11c]
push edi
push eax
push 0xc35d
push ebx
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x40
lea eax, [ebp - 0x11c]
push 0x425048
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
call fcn.0040be8d
push 1
pop eax
pop edi
pop esi
pop ebx
leave
ret 8