Function at 0x10001910
Capabilities:
Check internet connectivity via wininet
Check mutex on windows
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
lea ebp, [esp - 0xecc]
sub esp, 0xecc
push 0xfffffffffffffffe
push 0x100105f0
push 0x10005fe0
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x10011060]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp + 0xec8], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
wait
xor ebx, ebx
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edi, eax
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
jmp 0x10001970
mov dword [ebp - 0x4c], ebx
push ebx
lea eax, [ebp - 0x4c]
push eax
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
cmp eax, 1
je 0x10001990
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x10001970
push str.epic_play_mtx_cfgthrd
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [ebp - 0x60], eax
push 0xea60
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, ebx
je 0x100019c4
cmp eax, 0x80
je 0x100019c4
push 0xea60
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x10001970
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
lea ecx, [ebp - 0x44]
call fcn.10003450
mov eax, 4
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x30]
push ecx
push str.SoftwareAppDataLowePlayConf
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
cmp eax, ebx
jne 0x10001a1e
lea edx, [ebp - 0x54]
push edx
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x5c]
push ecx
push ebx
push 0x10010150
mov edx, dword [ebp - 0x30]
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov eax, dword [ebp - 0x30]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push ebx
call fcn.10003d5d
mov ecx, dword [ebp - 0x40]
push ecx
mov ecx, dword [ebp - 0x44]
push ecx
push edx
push eax
call fcn.10001000
add esp, 0x14
mov edx, dword [ebp - 0x3c]
fild dword [ebp - 0x3c]
test edx, edx
jge 0x10001a46
fadd qword [0x10010180]
fcompp
fnstsw ax
test ah, 0x41
jp 0x10001ccc
mov byte [ebp + 0xb88], bl
push 0x1ff
push ebx
lea eax, [ebp + 0xb89]
push eax
call fcn.10006e80
mov byte [ebp + 0xd88], bl
push 0xfe
push ebx
lea ecx, [ebp + 0xd89]
push ecx
call fcn.10006e80
mov byte [ebp + 0xa0c], bl
push 0x17b
push ebx
lea edx, [ebp + 0xa0d]
push edx
call fcn.10006e80
mov byte [ebp + 0x80c], bl
push 0x1ff
push ebx
lea eax, [ebp + 0x80d]
push eax
call fcn.10006e80
mov byte [ebp + 0xe88], bl
push 0x3f
push ebx
lea ecx, [ebp + 0xe89]
push ecx
call fcn.10006e80
lea esi, [ebp + 0xe88]
call fcn.10002980
mov edx, esi
push edx
push str.crc:
push 0xff
mov eax, str.L6AGo0U2pQG7DACWKbmU
mov ecx, 0x1000ff8c
lea ebx, [ebp + 0xd88]
call fcn.10003870
add esp, 0x48
mov dword [ebp - 0x48], 0x17c
mov eax, ebx
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x10001b04
sub eax, ecx
lea ecx, [ebp - 0x48]
push ecx
push eax
lea eax, [ebp + 0xa0c]
lea ecx, [ebp + 0xd88]
call fcn.100010d0
lea edx, [ebp + 0xa0c]
push edx
lea ebx, [ebp + 0x80c]
call fcn.10001460
push 0
mov eax, ebx
push eax
push 0x200
mov eax, 0x1000ff90
mov ecx, str._ctg
lea ebx, [ebp + 0xb88]
call fcn.10003870
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x20]
push edx
mov eax, ebx
push eax
mov ecx, edi
mov edx, str.cf.epicplay.com
call fcn.10001290
add esp, 0x24
xor ebx, ebx
cmp eax, ebx
jle 0x10001bb4
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x20]
push edx
lea eax, [ebp + 0xb88]
push eax
mov ecx, edi
mov edx, str.cf.epicplay.com
call fcn.10001290
add esp, 0xc
cmp eax, ebx
jle 0x10001bb4
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x20]
push edx
lea eax, [ebp + 0xb88]
push eax
mov ecx, edi
mov edx, str.cf.epicplay.com
call fcn.10001290
add esp, 0xc
cmp dword [ebp - 0x1c], ebx
jbe 0x10001d09
lea ecx, [ebp]
push ecx
mov eax, dword [ebp - 0x20]
call fcn.10001e30
add esp, 4
test al, al
je 0x10001d09
sub esp, 0x80c
mov ecx, 0x203
lea esi, [ebp]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10001780
add esp, 0x80c
cmp eax, 1
jne 0x10001bfe
inc dword [0x10012c50]
jmp 0x10001c04
mov dword [0x10012c50], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ebx
mov eax, 4
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x50], eax
lea edx, [ebp - 0x34]
push edx
push str.SoftwareAppDataLowePlayConf
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
cmp eax, ebx
jne 0x10001c53
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x2c]
push ecx
lea edx, [ebp - 0x58]
push edx
push ebx
push 0x1000ffe0
mov eax, dword [ebp - 0x34]
push eax
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ecx, dword [ebp - 0x34]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edi, dword [ebp + 8]
cmp dword [ebp - 0x2c], edi
jne 0x10001c61
cmp edi, ebx
jne 0x10001cc7
xor ebx, ebx
lea edx, [ebp - 0x28]
push edx
call fcn.10001d50
add esp, 4
mov esi, dword [ebp - 0x28]
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov eax, esi
call fcn.10003300
mov dword [ebp - 0x64], edi
lea eax, [ebp - 0x38]
push eax
push str.SoftwareAppDataLowePlayConf
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
cmp eax, ebx
jne 0x10001cbb
push 4
lea ecx, [ebp - 0x64]
push ecx
push 4
push ebx
push 0x1000ffe0
mov edx, dword [ebp - 0x38]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [ebp - 0x38]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push esi
push ebx
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edi, dword [ebp - 0x24]
xor ebx, ebx
mov esi, dword [ebp - 0x60]
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x10012c50], 3
jle 0x10001cf8
push ebx
push 0x36ee80
call dword [sym.imp.KERNEL32.dll_SleepEx]
mov dword [0x10012c50], ebx
push ebx
push 0xea60
call dword [sym.imp.KERNEL32.dll_SleepEx]
jmp 0x10001970
inc dword [0x10012c50]
jmp 0x10001cca