Function at 0x4c6f90
Capabilities:
Read .ini file

Disassembly:
sub esp, 0x840
mov eax, dword [0x6aae14]
xor eax, esp
mov dword [esp + 0x83c], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0x854]
push edi
mov edi, dword [esp + 0x854]
xor ebx, ebx
push 0x103
lea eax, [esp + 0x135]
push ebx
or ebp, 0xffffffff
push eax
mov dword [esp + 0x28], ebp
mov byte [esp + 0x13c], bl
call fcn.005dfd60
push 0x103
lea ecx, [esp + 0x245]
push ebx
push ecx
mov byte [esp + 0x24c], bl
call fcn.005dfd60
push 0x103
lea edx, [esp + 0x55d]
push ebx
push edx
mov byte [esp + 0x564], bl
call fcn.005dfd60
add esp, 0x24
mov dword [esp + 0x10], ebx
mov dword [esp + 0x24], ebx
cmp edi, ebx
je 0x4c7459
cmp byte [edi], bl
je 0x4c7459
push 1
push ebx
push ebx
push ebx
push ebx
push edi
call fcn.004e8950
add esp, 0x18
test eax, eax
je 0x4c7057
cmp esi, ebx
je 0x4c746b
push edi
push str.File___s__not_present_
push esi
call fcn.005dfb23
add esp, 0xc
jmp 0x4c746b
call fcn.004d9c70
test eax, eax
jne 0x4c7072
cmp esi, ebx
je 0x4c746b
push str.Operating_system_not_supported_for_this_test_
jmp 0x4c7462
lea eax, [esp + 0x130]
push eax
call fcn.0053bb30
add esp, 4
cmp eax, 1
jl 0x4c743f
cmp byte [esp + 0x130], bl
je 0x4c743f
lea ecx, [esp + 0x540]
push ecx
lea edx, [esp + 0x238]
push edx
call fcn.004d5e00
add esp, 8
test eax, eax
je 0x4c7434
cmp byte [esp + 0x234], bl
je 0x4c7434
lea eax, [esp + 0x10]
push eax
push edi
call fcn.004c3f60
add esp, 8
cmp dword [esp + 0x10], ebx
jne 0x4c70f5
cmp esi, ebx
je 0x4c746b
push edi
push str.Failed_to_get_KB_list_from___s__file_
push esi
call fcn.005dfb23
add esp, 0xc
jmp 0x4c746b
call fcn.004d9b00
mov dword [esp + 0x28], eax
cmp eax, ebx
je 0x4c7141
push esi
lea ecx, [esp + 0x28]
push ebx
push ecx
call fcn.004c66a0
add esp, 0xc
cmp eax, 1
je 0x4c7141
mov edx, dword [esp + 0x10]
push edx
call fcn.005e0865
add esp, 4
mov dword [esp + 0x10], ebx
cmp esi, ebx
je 0x4c746b
cmp byte [esi], bl
jne 0x4c746b
push str.Failed_to_get_installed_KBs_
jmp 0x4c7462
cmp dword [0x748e14], ebx
je 0x4c716c
mov eax, dword [esp + 0x10]
push eax
lea ecx, [esp + 0x238]
push ecx
lea edx, [esp + 0x138]
push edx
push str._WGWIN__OSSTRING:__s__LANGUAGE:__s__KBLIST:__s
push ebx
call fcn.004f0f30
add esp, 0x14
mov edx, dword [esp + 0x10]
push 1
push ebx
push 0x2c
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x3c]
push ecx
push edx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x44], bl
call fcn.004e1380
add esp, 0x18
cmp dword [esp + 0x20], ebp
je 0x4c73e4
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ebp, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ebx, [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push eax
push ecx
lea edx, [esp + 0x34]
push edx
call fcn.004c3dc0
add esp, 0xc
test eax, eax
jne 0x4c73bd
push 0x207
lea eax, [esp + 0x649]
push ebx
push eax
mov byte [esp + 0x650], bl
call fcn.005dfd60
add esp, 0xc
push edi
push 0x208
lea ecx, [esp + 0x64c]
push ecx
push 0x60c81c
lea edx, [esp + 0x140]
push edx
lea eax, [esp + 0x40]
push eax
call esi
cmp byte [esp + 0x644], bl
je 0x4c73bd
cmp byte [0x749240], bl
jne 0x4c7297
push ebx
push str.WGWIN
push 0x749240
push ebx
call fcn.0051db00
cmp byte [0x749240], bl
je 0x4c7297
push 0x749240
call fcn.004ec720
add esp, 4
cmp eax, 1
jne 0x4c7297
push 0x749240
push 0x749138
call ebp
push 0x749138
call fcn.004e24e0
add esp, 4
push str.wgwin.ini
push 0x749138
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push ebx
push ebx
push ebx
push ebx
push 0x749138
call fcn.004ec5a0
add esp, 0x14
test eax, eax
je 0x4c7297
mov byte [0x749138], bl
jmp 0x4c7383
cmp byte [0x749138], bl
je 0x4c7383
mov eax, dword [esp + 0x14]
cmp eax, ebx
jne 0x4c72c9
lea ecx, [esp + 0x14]
push ecx
push 0x749138
call fcn.004c3f60
mov eax, dword [esp + 0x1c]
add esp, 8
cmp eax, ebx
je 0x4c7383
push 1
push ebx
push 0x2c
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0x348]
push ecx
push eax
mov dword [esp + 0x30], ebx
call fcn.004e1380
add esp, 0x18
cmp dword [esp + 0x18], 0xffffffff
je 0x4c7383
push ebx
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x340]
push eax
call fcn.004f5880
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4c7336
mov eax, dword [esp + 0x14]
push 1
push ebx
push 0x2c
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x348]
push edx
push eax
call fcn.004e1380
add esp, 0x18
cmp dword [esp + 0x18], 0xffffffff
jne 0x4c72f3
jmp 0x4c7383
push 0x103
lea ecx, [esp + 0x441]
push ebx
push ecx
mov byte [esp + 0x448], bl
call fcn.005dfd60
add esp, 0xc
push 0x749138
push 0x104
lea edx, [esp + 0x444]
push edx
push 0x60c81c
push 0x643038
lea eax, [esp + 0x34c]
push eax
call esi
cmp byte [esp + 0x43c], 0x31
je 0x4c73bd
cmp dword [0x748e14], ebx
je 0x4c739e
lea ecx, [esp + 0x2c]
push ecx
push str._WGWIN__Hotfix:__s_not_present_
push ebx
call fcn.004f0f30
add esp, 0xc
mov dword [esp + 0x1c], ebx
cmp dword [esp + 0x85c], ebx
je 0x4c73e4
lea edx, [esp + 0x2c]
push edx
push str.Hotfix__s_not_present__n
call fcn.005e0e7f
add esp, 8
mov edx, dword [esp + 0x10]
push 1
push ebx
push 0x2c
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x3c]
push ecx
push edx
call fcn.004e1380
add esp, 0x18
cmp dword [esp + 0x20], 0xffffffff
jne 0x4c71b0
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4c73f9
push eax
call fcn.005e0865
add esp, 4
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4c740e
push eax
call fcn.005e0865
add esp, 4
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x4c741f
push eax
call fcn.005e0865
add esp, 4
cmp dword [esp + 0x1c], 0xffffffff
jne 0x4c742e
mov dword [esp + 0x1c], 1
mov eax, dword [esp + 0x1c]
jmp 0x4c746d
cmp esi, ebx
je 0x4c746b
push str.Failed_to_get_OS_language_
jmp 0x4c7462
cmp eax, ebx
jne 0x4c744e
cmp esi, ebx
je 0x4c746b
push str.Platform_not_supported_
jmp 0x4c7462
cmp esi, ebx
je 0x4c746b
push str.Failed_to_get_OS_string_
jmp 0x4c7462
cmp esi, ebx
je 0x4c746b
push str.Invalid_param_in_CheckIfSystemFullyPatched_
push esi
call fcn.005dfb23
add esp, 8
mov eax, ebp
mov ecx, dword [esp + 0x84c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005dfbbe
add esp, 0x840
ret