Function at 0x4b1ae0
Capabilities:
Connect to wmi namespace via wbemlocator
Read .ini file
Reference wmi statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x598
mov eax, dword [0x5552b0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
push 0x206
xor edi, edi
lea ecx, [ebp - 0x55e]
xor eax, eax
push edi
push ecx
mov word [ebp - 0x560], ax
call fcn.004e8ba0
add esp, 0xc
push 0x104
lea edx, [ebp - 0x560]
push edx
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x560]
push 0x5c
push eax
call fcn.004e56ec
xor ecx, ecx
mov word [eax + 2], cx
lea eax, [ebp - 0x560]
add esp, 8
add eax, 0xfffffffe
jmp 0x4b1b50
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b1b50
mov edx, dword [str.Info_]
mov ecx, dword [0x51f900]
mov dword [eax], edx
mov edx, dword [0x51f904]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
lea eax, [ebp - 0x560]
push eax
call fcn.004e51cd
add esp, 4
cmp eax, 0xffffffff
jne 0x4b1b99
lea ecx, [ebp - 0x560]
push ecx
call fcn.004e519b
add esp, 4
lea eax, [ebp - 0x560]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b1ba2
mov edx, dword [str.Boot.opt]
mov ecx, dword [0x520128]
mov dword [eax], edx
mov edx, dword [0x52012c]
mov dword [eax + 4], ecx
mov ecx, dword [0x520130]
mov dword [eax + 8], edx
mov dx, word [0x520134]
mov dword [eax + 0xc], ecx
lea ecx, [ebp - 0x560]
push ecx
push 8
mov word [eax + 0x10], dx
lea edx, [ebp - 0x14]
push edx
xor eax, eax
push 0x51c514
push str.AverageExecute
push str.Boot
mov word [ebp - 0x14], ax
mov dword [ebp - 0x12], eax
mov dword [ebp - 0xe], eax
mov dword [ebp - 0xa], eax
mov word [ebp - 6], ax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x4b1c44
lea eax, [ebp - 0x14]
push eax
call fcn.004e517a
add esp, 4
cmp eax, 0x15180
jle 0x4b1c44
xor eax, eax
lea ebx, [ebx]
movzx ecx, word [eax + str.28800]
mov word [ebp + eax - 0x14], cx
add eax, 2
cmp cx, di
jne 0x4b1c30
push edi
call dword [sym.imp.ole32.dll_CoInitialize]
cmp byte [0x568461], 0
jne 0x4b1c9a
lea ecx, [ebp - 0x14]
push ecx
push str.____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t_s_t
push ebx
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, ebx
add esp, 0xc
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b1c70
sub eax, edx
sar eax, 1
mov edx, 1
mov word [ebx + eax*2], dx
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e4746
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x584]
push eax
push 0x5020f8
push 1
push edi
push 0x5021c8
mov dword [ebp - 0x584], edi
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x4b1d06
lea ecx, [ebp - 0x14]
push ecx
push str.____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t_s_t
push ebx
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, ebx
add esp, 0xc
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b1cd6
sub eax, edx
sar eax, 1
mov edx, 1
mov word [ebx + eax*2], dx
call dword [sym.imp.ole32.dll_CoUninitialize]
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e4746
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x584]
lea edx, [ebp - 0x580]
push edx
push edi
push edi
push edi
push edi
push edi
push edi
mov dword [ebp - 0x580], edi
mov ecx, dword [eax]
push str.ROOTCIMV2
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
jns 0x4b1d8e
lea ecx, [ebp - 0x14]
push ecx
push str.____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t_s_t
push ebx
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, ebx
add esp, 0xc
lea edx, [eax + 2]
jmp 0x4b1d50
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b1d50
sub eax, edx
sar eax, 1
mov edx, 1
mov word [ebx + eax*2], dx
mov eax, dword [ebp - 0x584]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e4746
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x580]
push edi
push edi
push 3
push 3
push edi
push edi
push 0xa
push eax
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x4b1dec
lea ecx, [ebp - 0x14]
push ecx
push str.____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t_s_t
push ebx
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, ebx
add esp, 0xc
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b1dc1
sub eax, edx
sar eax, 1
mov edx, 1
mov word [ebx + eax*2], dx
mov eax, dword [ebp - 0x580]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x4b1d68
mov eax, dword [ebp - 0x580]
lea edx, [ebp - 0x598]
push edx
push edi
push 0x30
push str.SELECT__FROM_Win32_ComputerSystem
mov dword [ebp - 0x598], edi
mov ecx, dword [eax]
push 0x52550c
push eax
mov eax, dword [ecx + 0x50]
call eax
test eax, eax
jns 0x4b1e3d
lea ecx, [ebp - 0x14]
push ecx
push str.____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t____t_s_t
push ebx
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, ebx
add esp, 0xc
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b1e30
jmp 0x4b1dcc
mov edx, dword [ebp - 0x598]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x57c], edi
cmp edx, edi
je 0x4b23e8
mov eax, dword [edx]
lea ecx, [ebp - 0x57c]
push ecx
lea ecx, [ebp - 0x564]
push ecx
push 1
push 0xffffffffffffffff
push edx
mov edx, dword [eax + 0x10]
call edx
cmp dword [ebp - 0x57c], edi
je 0x4b22c7
push 0x7e
lea ecx, [ebp - 0x1d6]
xor eax, eax
push edi
push ecx
mov word [ebp - 0x1d8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push str.Name
push eax
call edx
test eax, eax
jne 0x4b1eea
cmp word [ebp - 0x578], 1
je 0x4b1eea
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0x1d8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
push 0x7e
lea ecx, [ebp - 0x156]
xor eax, eax
push edi
push ecx
mov word [ebp - 0x158], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push str.Domain
push eax
call edx
test eax, eax
jne 0x4b1f51
cmp word [ebp - 0x578], 1
je 0x4b1f51
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0x158]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
push 0xfe
lea ecx, [ebp - 0x2d6]
xor eax, eax
push edi
push ecx
mov word [ebp - 0x2d8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push 0x51d00c
push eax
call edx
test eax, eax
jne 0x4b1fbb
cmp word [ebp - 0x578], 1
je 0x4b1fbb
mov eax, dword [ebp - 0x570]
push 0x7f
push eax
lea ecx, [ebp - 0x2d8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
xor eax, eax
push edi
push edi
lea edx, [ebp - 0x578]
push edx
mov word [ebp - 0x34], ax
mov dword [ebp - 0x32], eax
mov dword [ebp - 0x2e], eax
mov dword [ebp - 0x2a], eax
mov dword [ebp - 0x26], eax
mov dword [ebp - 0x22], eax
mov dword [ebp - 0x1e], eax
mov dword [ebp - 0x1a], eax
mov word [ebp - 0x16], ax
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
push edi
push str.NumberOfProcessors
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b2024
cmp word [ebp - 0x578], 1
je 0x4b2024
movsx edx, word [ebp - 0x570]
push 0xa
lea ecx, [ebp - 0x34]
push ecx
push edx
call fcn.004e534f
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
xor eax, eax
push edi
xor ecx, ecx
push edi
mov word [ebp - 0x54], cx
lea ecx, [ebp - 0x578]
push ecx
mov dword [ebp - 0x52], eax
mov dword [ebp - 0x4e], eax
mov dword [ebp - 0x4a], eax
mov dword [ebp - 0x46], eax
mov dword [ebp - 0x42], eax
mov dword [ebp - 0x3e], eax
mov dword [ebp - 0x3a], eax
mov word [ebp - 0x36], ax
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
push edi
push str.NumberOfLogicalProcessors
push eax
call edx
test eax, eax
jne 0x4b208f
cmp word [ebp - 0x578], 1
je 0x4b208f
movsx ecx, word [ebp - 0x570]
push 0xa
lea eax, [ebp - 0x54]
push eax
push ecx
call fcn.004e534f
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
push 0x7e
lea ecx, [ebp - 0xd6]
xor eax, eax
push edi
push ecx
mov word [ebp - 0xd8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push str.TotalPhysicalMemory
push eax
call edx
test eax, eax
jne 0x4b20f6
cmp word [ebp - 0x578], 1
je 0x4b20f6
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0xd8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
lea eax, [ebp - 0x1d8]
mov edx, ebx
mov ecx, eax
sub edx, ecx
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, di
jne 0x4b2102
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2114
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x158]
mov dword [edi], edx
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2130
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2140
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2160
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x2d8]
mov edx, eax
jmp 0x4b2180
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2180
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2190
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b21b0
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0xd8]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b21d0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b21e0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2200
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x34]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2220
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2230
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2250
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x54]
mov edx, eax
jmp 0x4b2270
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2270
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2280
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b22a0
mov ecx, dword [0x51ccdc]
mov edx, dword [ebp - 0x598]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [edi], ecx
xor edi, edi
jmp 0x4b2508
lea eax, [ebx - 2]
lea ebx, [ebx]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b22d0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2300
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2300
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2330
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2330
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2360
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2360
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2390
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2390
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b23c0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b23c0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x598]
jmp 0x4b24fd
lea eax, [ebx - 2]
jmp 0x4b23f0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b23f0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2420
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2420
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2450
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2450
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2480
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2480
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b24b0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b24b0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b24e0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b24e0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
mov eax, dword [edx]
mov ecx, dword [eax + 8]
push edx
call ecx
mov eax, dword [ebp - 0x580]
lea ecx, [ebp - 0x58c]
push ecx
push edi
push 0x30
push str.SELECT__FROM_Win32_Processor
mov dword [ebp - 0x58c], edi
mov edx, dword [eax]
mov edx, dword [edx + 0x50]
push 0x52550c
push eax
call edx
test eax, eax
jns 0x4b288b
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2543
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
mov edi, edi
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2570
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b25a0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b25a0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b25d0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b25d0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2600
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2600
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2630
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2630
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2660
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2660
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2690
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2690
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b26c0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b26c0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b26f0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b26f0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2720
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2720
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2750
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2750
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2780
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2780
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b27b0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b27b0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b27e0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b27e0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebp - 0x14]
mov edx, eax
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b2810
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2820
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2840
mov edx, dword [0x51ccdc]
mov eax, ebx
mov dword [edi], edx
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2860
sub eax, edx
sar eax, 1
mov ecx, 1
mov word [ebx + eax*2], cx
mov eax, dword [ebp - 0x580]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x4b1d68
mov edx, dword [ebp - 0x58c]
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x57c], edi
cmp edx, edi
je 0x4b29bb
mov eax, dword [edx]
lea ecx, [ebp - 0x57c]
push ecx
lea ecx, [ebp - 0x564]
push ecx
push 1
push 0xffffffffffffffff
push edx
mov edx, dword [eax + 0x10]
call edx
cmp dword [ebp - 0x57c], edi
je 0x4b2993
push 0x7e
lea ecx, [ebp - 0xd6]
xor eax, eax
push edi
push ecx
mov word [ebp - 0xd8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push str.ProcessorID
push eax
call edx
test eax, eax
jne 0x4b2932
cmp word [ebp - 0x578], 1
je 0x4b2932
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0xd8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
lea eax, [ebp - 0xd8]
mov edx, eax
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b2940
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2950
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2970
mov eax, dword [0x51ccdc]
mov edx, dword [ebp - 0x58c]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [edi], eax
xor edi, edi
jmp 0x4b29e8
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2996
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x58c]
jmp 0x4b29dd
lea eax, [ebx - 2]
mov edi, edi
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b29c0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
mov eax, dword [edx]
mov ecx, dword [eax + 8]
push edx
call ecx
mov eax, dword [ebp - 0x580]
lea ecx, [ebp - 0x590]
push ecx
push edi
push 0x30
push str.SELECT__FROM_Win32_BIOS
mov dword [ebp - 0x590], edi
mov edx, dword [eax]
mov edx, dword [edx + 0x50]
push 0x52550c
push eax
call edx
test eax, eax
jns 0x4b2d20
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2a23
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
mov edi, edi
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2a50
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2a80
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2a80
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2ab0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2ab0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2ae0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2ae0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2b10
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2b10
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2b40
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2b40
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2b70
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2b70
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2ba0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2ba0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2bd0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2bd0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2c00
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2c00
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2c30
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2c30
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b2c60
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2c60
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b2c90
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b2c90
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebp - 0x14]
mov edx, eax
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b2cc0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2cd0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2cf0
mov eax, dword [0x51ccdc]
mov dword [edi], eax
mov eax, ebx
lea edx, [eax + 2]
jmp 0x4b2d10
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2d10
jmp 0x4b286b
mov edx, dword [ebp - 0x590]
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x57c], edi
cmp edx, edi
je 0x4b3108
mov eax, dword [edx]
lea ecx, [ebp - 0x57c]
push ecx
lea ecx, [ebp - 0x564]
push ecx
push 1
push 0xffffffffffffffff
push edx
mov edx, dword [eax + 0x10]
call edx
cmp dword [ebp - 0x57c], edi
je 0x4b3047
push 0xfe
lea ecx, [ebp - 0x2d6]
xor eax, eax
push edi
push ecx
mov word [ebp - 0x2d8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push str.Name
push eax
call edx
test eax, eax
jne 0x4b2dca
cmp word [ebp - 0x578], 1
je 0x4b2dca
mov eax, dword [ebp - 0x570]
push 0x7f
push eax
lea ecx, [ebp - 0x2d8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
push 0x7e
lea ecx, [ebp - 0xd6]
xor eax, eax
push edi
push ecx
mov word [ebp - 0xd8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push edi
push edi
lea ecx, [ebp - 0x578]
push ecx
push edi
push str.Manufacturer
push eax
call edx
test eax, eax
jne 0x4b2e31
cmp word [ebp - 0x578], 1
je 0x4b2e31
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0xd8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
xor eax, eax
push edi
push edi
lea edx, [ebp - 0x578]
push edx
mov word [ebp - 0x34], ax
mov dword [ebp - 0x32], eax
mov dword [ebp - 0x2e], eax
mov dword [ebp - 0x2a], eax
mov dword [ebp - 0x26], eax
mov dword [ebp - 0x22], eax
mov dword [ebp - 0x1e], eax
mov dword [ebp - 0x1a], eax
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
push edi
push str.ReleaseDate
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b2e95
cmp word [ebp - 0x578], 1
je 0x4b2e95
mov ecx, dword [ebp - 0x570]
push 0xe
push ecx
lea edx, [ebp - 0x34]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
push 0x7e
lea edx, [ebp - 0x156]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0x158], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
add esp, 0xc
push edi
push edi
lea edx, [ebp - 0x578]
push edx
push edi
push str.SoftwareElementID
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b2efc
cmp word [ebp - 0x578], 1
je 0x4b2efc
mov ecx, dword [ebp - 0x570]
push 0x3f
push ecx
lea edx, [ebp - 0x158]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
lea eax, [ebp - 0x2d8]
mov edx, eax
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b2f04
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2f14
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2f33
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0xd8]
mov dword [edi], ecx
mov edx, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2f50
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2f60
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2f80
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x34]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2fa0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b2fb0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b2fd0
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x158]
mov edx, eax
jmp 0x4b2ff0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b2ff0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3000
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3020
mov ecx, dword [0x51ccdc]
mov edx, dword [ebp - 0x590]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [edi], ecx
xor edi, edi
jmp 0x4b31c8
lea eax, [ebx - 2]
lea ebx, [ebx]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3050
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b3080
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3080
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b30b0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b30b0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b30e0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b30e0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x590]
jmp 0x4b31bd
lea eax, [ebx - 2]
jmp 0x4b3110
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3110
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3140
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3140
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3170
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3170
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b31a0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b31a0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
mov eax, dword [edx]
mov ecx, dword [eax + 8]
push edx
call ecx
mov eax, dword [ebp - 0x580]
lea ecx, [ebp - 0x588]
push ecx
push edi
push 0x30
push str.SELECT__FROM_Win32_ComputerSystemProduct
mov dword [ebp - 0x588], edi
mov edx, dword [eax]
mov edx, dword [edx + 0x50]
push 0x52550c
push eax
call edx
test eax, eax
jns 0x4b3440
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3203
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
mov edi, edi
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3230
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b3260
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3260
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3290
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3290
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b32c0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b32c0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b32f0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b32f0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b3320
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3320
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3350
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3350
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b3380
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3380
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b33b0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b33b0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebp - 0x14]
mov edx, eax
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b33e0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b33f0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3410
mov eax, dword [0x51ccdc]
mov dword [edi], eax
mov eax, ebx
lea edx, [eax + 2]
jmp 0x4b3430
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3430
jmp 0x4b286b
mov ecx, dword [ebp - 0x588]
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x57c], edi
cmp ecx, edi
je 0x4b38a5
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
lea edx, [ebp - 0x57c]
push edx
lea edx, [ebp - 0x564]
push edx
push 1
push 0xffffffffffffffff
push ecx
call eax
cmp dword [ebp - 0x57c], edi
je 0x4b381d
push 0xfe
lea edx, [ebp - 0x2d6]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0x2d8], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
add esp, 0xc
push edi
push edi
lea edx, [ebp - 0x578]
push edx
push edi
push str.Vendor
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b34ea
cmp word [ebp - 0x578], 1
je 0x4b34ea
mov ecx, dword [ebp - 0x570]
push 0x7f
push ecx
lea edx, [ebp - 0x2d8]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
push 0x7e
lea edx, [ebp - 0xd6]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0xd8], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
add esp, 0xc
push edi
push edi
lea edx, [ebp - 0x578]
push edx
push edi
push str.Name
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b3551
cmp word [ebp - 0x578], 1
je 0x4b3551
mov ecx, dword [ebp - 0x570]
push 0x3f
push ecx
lea edx, [ebp - 0xd8]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
push 0x7e
lea edx, [ebp - 0x156]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0x158], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
add esp, 0xc
push edi
push edi
lea edx, [ebp - 0x578]
push edx
push edi
push str.IdentifyingNumber
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b35b8
cmp word [ebp - 0x578], 1
je 0x4b35b8
mov ecx, dword [ebp - 0x570]
push 0x3f
push ecx
lea edx, [ebp - 0x158]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
push 0x7e
lea edx, [ebp - 0x1d6]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0x1d8], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
add esp, 0xc
push edi
push edi
lea edx, [ebp - 0x578]
push edx
push edi
push 0x526680
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b361f
cmp word [ebp - 0x578], 1
je 0x4b361f
mov ecx, dword [ebp - 0x570]
push 0x3f
push ecx
lea edx, [ebp - 0x1d8]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
push 0x7e
lea edx, [ebp - 0x356]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0x358], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov ecx, dword [eax]
add esp, 0xc
push edi
push edi
lea edx, [ebp - 0x578]
push edx
push edi
push str.UUID
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4b3686
cmp word [ebp - 0x578], 1
je 0x4b3686
mov ecx, dword [ebp - 0x570]
push 0x3f
push ecx
lea edx, [ebp - 0x358]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x578]
push eax
call esi
lea eax, [ebp - 0x2d8]
mov edx, eax
mov edi, edi
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b3690
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b36a0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b36c0
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0xd8]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b36e0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b36f0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3710
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x158]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3730
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3740
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3760
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x1d8]
mov edx, eax
jmp 0x4b3780
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3780
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3790
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b37b0
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x358]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b37d0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b37e0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3800
mov ecx, dword [ebp - 0x588]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x4b3922
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3820
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3836
mov ecx, dword [0x51ccdc]
mov dword [edi], ecx
lea edi, [ebx - 2]
lea ecx, [ecx]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3850
mov edx, dword [0x51ccdc]
mov dword [edi], edx
lea edi, [ebx - 2]
jmp 0x4b3870
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3870
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3886
mov ecx, dword [0x51ccdc]
mov dword [edi], ecx
mov ecx, dword [ebp - 0x588]
jmp 0x4b392a
lea edi, [ebx - 2]
jmp 0x4b38b0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b38b0
mov edx, dword [0x51ccdc]
mov dword [edi], edx
lea edi, [ebx - 2]
jmp 0x4b38d0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b38d0
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b38e6
mov edx, dword [0x51ccdc]
mov dword [edi], edx
lea edi, [ebx - 2]
lea ecx, [ecx]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3900
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3916
mov edx, dword [0x51ccdc]
mov dword [edi], edx
mov eax, dword [ecx]
push ecx
mov ecx, dword [eax + 8]
call ecx
mov eax, dword [ebp - 0x580]
lea ecx, [ebp - 0x594]
push ecx
xor edi, edi
push edi
push 0x30
push str.SELECT__FROM_Win32_BaseBoard
mov dword [ebp - 0x594], edi
mov edx, dword [eax]
mov edx, dword [edx + 0x50]
push 0x52550c
push eax
call edx
test eax, eax
jns 0x4b3ac0
lea eax, [ebx - 2]
jmp 0x4b3970
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3970
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b39a0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b39a0
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b39d0
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b39d0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3a00
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3a00
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b3a30
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3a30
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebp - 0x14]
mov edx, eax
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4b3a60
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3a70
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3a90
mov edx, dword [0x51ccdc]
mov eax, ebx
mov dword [edi], edx
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3ab0
jmp 0x4b286b
mov edx, dword [ebp - 0x594]
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x57c], edi
cmp edx, edi
je 0x4b3fa3
mov eax, dword [edx]
lea ecx, [ebp - 0x57c]
push ecx
lea ecx, [ebp - 0x564]
push ecx
mov edi, 1
push edi
push 0xffffffffffffffff
push edx
mov edx, dword [eax + 0x10]
call edx
cmp dword [ebp - 0x57c], 0
je 0x4b3eaf
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x356]
push ecx
mov word [ebp - 0x358], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x578]
push ecx
push 0
push str.Manufacturer
push eax
call edx
test eax, eax
jne 0x4b3b6e
cmp word [ebp - 0x578], di
je 0x4b3b6e
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0x358]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0xd6]
push ecx
mov word [ebp - 0xd8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x578]
push ecx
push 0
push str.Product
push eax
call edx
test eax, eax
jne 0x4b3bd7
cmp word [ebp - 0x578], di
je 0x4b3bd7
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0xd8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x156]
push ecx
mov word [ebp - 0x158], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x578]
push ecx
push 0
push str.SerialNumber
push eax
call edx
test eax, eax
jne 0x4b3c40
cmp word [ebp - 0x578], di
je 0x4b3c40
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0x158]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x1d6]
push ecx
mov word [ebp - 0x1d8], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x578]
push ecx
push 0
push 0x526680
push eax
call edx
test eax, eax
jne 0x4b3ca9
cmp word [ebp - 0x578], di
je 0x4b3ca9
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0x1d8]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x256]
push ecx
mov word [ebp - 0x258], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x578]
push ecx
push 0
push 0x526a58
push eax
call edx
test eax, eax
jne 0x4b3d12
cmp word [ebp - 0x578], di
je 0x4b3d12
mov eax, dword [ebp - 0x570]
push 0x3f
push eax
lea ecx, [ebp - 0x258]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x578]
push edx
call esi
lea eax, [ebp - 0x358]
mov edx, eax
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3d20
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3d30
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3d50
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0xd8]
mov edx, eax
jmp 0x4b3d70
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3d70
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3d80
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3da0
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x158]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3dc0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3dd0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3df0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x1d8]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3e10
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3e20
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3e40
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x258]
mov edx, eax
jmp 0x4b3e60
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3e60
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b3e70
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b3e90
mov ecx, dword [0x51ccdc]
mov edx, dword [ebp - 0x594]
mov dword [edi], ecx
jmp 0x4b4088
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4b3eb2
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
lea ecx, [ecx]
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4b3ee0
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3f10
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4b3f10
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
lea eax, [ebx - 2]
jmp 0x4b3f40
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4b3f40
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov edx, dword [0x5268a8]
mov dword [eax + 4], edx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b3f70
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4b3f70
mov edx, dword [str.____t]
mov dword [eax], edx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov dx, word [0x5268ac]
mov word [eax + 8], dx
mov edx, dword [ebp - 0x594]
jmp 0x4b4088
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3fa6
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b3fd1
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
lea esp, [esp]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b4000
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b4030
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b4030
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
lea eax, [ebx - 2]
jmp 0x4b4060
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4b4060
mov ecx, dword [str.____t]
mov dword [eax], ecx
mov ecx, dword [0x5268a8]
mov dword [eax + 4], ecx
mov cx, word [0x5268ac]
mov word [eax + 8], cx
mov eax, dword [edx]
mov ecx, dword [eax + 8]
push edx
call ecx
mov eax, dword [ebp - 0x580]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x584]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
push 7
lea eax, [ebp - 0x14]
push eax
push ebx
call fcn.004e5d06
add esp, 0xc
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b40c4
mov ecx, dword [0x51ccdc]
mov eax, ebx
mov dword [edi], ecx
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b40e0
mov ecx, dword [ebp - 4]
sub eax, edx
sar eax, 1
mov edx, 1
pop edi
mov word [ebx + eax*2], dx
xor ecx, ebp
mov eax, edx
pop esi
call fcn.004e4746
mov esp, ebp
pop ebp
ret