Function at 0x407c00
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
mov eax, dword [0x431040]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x64
lea eax, [ebp - 0x68]
mov ebx, ecx
push 0
push eax
call fcn.0040b2a0
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebx + 0x48]
add esp, 0xc
push str..GameGuard.ini
push 8
push eax
push 0x42d74c
push str.ClientVersion
push 0x42d240
call edi
push str..GameGuard.ini
push 0x11
lea eax, [ebx + 0x50]
push eax
push 0x42d74c
push str.ClientSerial
push 0x42d240
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str..GameGuard.ini
push 0
push str.DetectionLockTime
push 0x42d240
call esi
push str..GameGuard.ini
push 0
push str.InternalVersion
push 0x42d240
mov dword [ebx + 0x6c], eax
call esi
push str..GameGuard.ini
push 0
push str.ReconnectSwitch
push 0x42d240
mov dword [ebx + 0x7c], eax
call esi
push str..GameGuard.ini
push 0
push str.MemoryGuardSwitch
push 0x42d240
mov dword [ebx + 0x80], eax
call esi
push str..GameGuard.ini
push 0
push str.MemoryGuardNumber
push 0x42d240
mov dword [ebx + 0x84], eax
call esi
push str..GameGuard.ini
push 0
push str.MacroProtectSwitch
push 0x42d240
mov dword [ebx + 0x88], eax
call esi
push str..GameGuard.ini
push 0
push str.MacroProtectNumber
push 0x42d240
mov dword [ebx + 0x8c], eax
call esi
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0x90], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress1
push 0x42d240
call edi
push 0
push 0
lea eax, [ebp - 0x68]
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0x98], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress2
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0x9c], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress3
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0xa0], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress4
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0xa4], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress5
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
mov ecx, eax
add esp, 0xc
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
push str..GameGuard.ini
cmova eax, ecx
push 0x64
mov dword [ebx + 0xa8], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress6
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0xac], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress7
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
push str..GameGuard.ini
push 0x64
mov dword [ebx + 0xb0], eax
lea eax, [ebp - 0x68]
push eax
push 0x42d74c
push str.MemoryAddress8
push 0x42d240
call edi
push 0
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.00415b29
add esp, 0xc
mov ecx, eax
xor ecx, 0xc47a0e9f
cmp eax, 0x10000000
cmova eax, ecx
mov ecx, dword [ebp - 4]
pop edi
pop esi
mov dword [ebx + 0xb4], eax
xor ecx, ebp
pop ebx
call fcn.0040971a
mov esp, ebp
pop ebp
ret 8