Function at 0x1495b30
Capabilities:
Get system information on windows

Disassembly:
push 0xffffffffffffffff
push 0x156de06
mov eax, dword fs:[0]
push eax
sub esp, 0x670
mov eax, dword [0x15b0648]
xor eax, esp
mov dword [esp + 0x66c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x15b0648]
xor eax, esp
push eax
lea eax, [esp + 0x684]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x69c]
mov edi, dword [esp + 0x698]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x14d0320
mov dword [esp + 0x20], 0x14dcfe0
mov dword [esp + 0x24], 0x14de900
call fcn.01492e20
call fcn.01505a30
push eax
call fcn.0153ef6d
mov esi, dword [esp + 0x698]
add esp, 4
cmp esi, 3
jl 0x1495bb9
call fcn.014fbaa0
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov ecx, dword [esp + 0x3c]
mov dword [0x15d2c5c], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x15d2d8c], eax
mov dword [0x15d29fc], ebx
mov eax, 0x15d2a00
mov edx, edi
mov dword [0x15d29f8], esi
xor ebx, ebx
xor ebp, ebp
mov esi, 0x40
sub edx, eax
jmp 0x1495c00
lea ecx, [esi + 0x7fffffbe]
test ecx, ecx
je 0x1495c1d
mov cl, byte [edx + eax]
cmp cl, bl
je 0x1495c1d
mov byte [eax], cl
add eax, 1
sub esi, 1
jne 0x1495c00
jmp 0x1495c21
cmp esi, ebx
jne 0x1495c29
sub eax, 1
mov ebp, 0x8007007a
cmp ebp, ebx
mov byte [eax], bl
je 0x1495c3c
call fcn.014fbaa0
or eax, 0xffffffff
jmp 0x149610e
mov edx, dword [esp + 0x6a0]
mov eax, 0x15d2a40
xor ebp, ebp
mov esi, 0x104
sub edx, eax
lea ecx, [esi + 0x7ffffefa]
test ecx, ecx
je 0x1495c6e
mov cl, byte [edx + eax]
cmp cl, bl
je 0x1495c6e
mov byte [eax], cl
add eax, 1
sub esi, 1
jne 0x1495c51
jmp 0x1495c72
cmp esi, ebx
jne 0x1495c7a
sub eax, 1
mov ebp, 0x8007007a
cmp ebp, ebx
mov byte [eax], bl
jne 0x1495c2f
mov eax, dword [esp + 0x6a4]
cmp eax, 1
je 0x1495ca5
push 1
push eax
push str.wrong_server_framework_version_:__d____d
push edi
call fcn.01493670
add esp, 0x10
or eax, 0xffffffff
jmp 0x149610e
push str.Global_
lea ecx, [esp + 0x50]
call fcn.014526b0
mov dword [esp + 0x68c], ebx
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1495cc0
sub eax, edx
push eax
push edi
lea ecx, [esp + 0x54]
call fcn.01461f60
push 0x103
lea edx, [esp + 0x171]
push ebx
push edx
mov byte [esp + 0x178], bl
call fcn.0153ecd0
push 0x103
lea eax, [esp + 0x281]
push ebx
push eax
mov byte [esp + 0x288], bl
call fcn.0153ecd0
push 0x103
lea ecx, [esp + 0x85]
push ebx
push ecx
mov byte [esp + 0x8c], bl
call fcn.0153ecd0
push 0x103
lea edx, [esp + 0x4a1]
push ebx
push edx
mov byte [esp + 0x4a8], bl
call fcn.0153ecd0
push 0x103
lea eax, [esp + 0x3a9]
push ebx
push eax
mov byte [esp + 0x3b0], bl
call fcn.0153ecd0
mov edx, dword [esp + 0x54]
add esp, 0x3c
push 0x104
lea ecx, [esp + 0x170]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x104
lea eax, [esp + 0x378]
push eax
push 0x104
lea ecx, [esp + 0x484]
push ecx
push 0x104
lea edx, [esp + 0x7c]
push edx
push 0x104
lea eax, [esp + 0x28c]
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.01541c33
lea eax, [esp + 0x8c]
add esp, 0x24
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1495dc0
sub eax, edx
lea edx, [esp + 0x68]
push edx
mov byte [esp + eax + 0x6b], bl
lea eax, [esp + 0x274]
push eax
push str._s_s
push 0x104
push 0x15d2b44
call fcn.01467780
add esp, 0x14
test eax, eax
je 0x1495e04
call fcn.014fbaa0
or esi, 0xffffffff
jmp 0x14960fc
mov ecx, dword [esp + 0x6a8]
or esi, 0xffffffff
push str.ServerFrameworkRes.dll
mov dword [0x15d2d90], 0x112
mov dword [0x15d2d94], 0x201
mov dword [0x15d2da4], esi
mov dword [0x15d2da8], ebx
mov dword [0x15d2dac], ecx
mov dword [0x15d2db0], ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp eax, ebx
mov dword [0x15d29f4], eax
jne 0x1495e58
push str.cannot_load_ServerFrameworkRes.dll
jmp 0x14960f3
mov ebp, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push 0x15d2dbc
push 0x15d2db8
call ebp
push eax
call dword [sym.imp.KERNEL32.dll_GetProcessAffinityMask]
test eax, eax
jne 0x1495e94
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Failed_to_GetProcessAffinityMask._ErrorCode_:__u
push edi
call fcn.01493670
add esp, 0xc
call fcn.014fbaa0
jmp 0x14960fc
push edi
mov dword [0x15d2db8], ebx
mov dword [0x15d2db4], ebx
call fcn.01494ef0
add esp, 4
test al, al
jne 0x1495ec1
push edi
push str.cant_find_server.cfg_or_failed_to_parse_server_config_block___s_
push edi
call fcn.01493670
add esp, 0xc
jmp 0x14960fc
cmp dword [esp + 0x694], 2
jne 0x1495ef7
push edi
push str.MachineManager
call fcn.01492fb0
add esp, 8
test eax, eax
jne 0x1495ef7
push str.MachineManagerAsWindowsApplication
mov ecx, 0x15d29f8
call fcn.0145da20
cmp eax, ebx
je 0x1495ef7
mov dword [esp + 0x694], ebx
cmp dword [0x15d2db4], ebx
jne 0x1495f2c
mov eax, dword [0x15d2db8]
cmp eax, ebx
je 0x1495f2c
mov ecx, dword [0x15d2dbc]
cmp eax, ecx
jbe 0x1495f36
push ecx
push eax
push str.invalid_ProcessorAffinityMask_:__u._SystemAffinityMask_:__u
push edi
call fcn.01493670
add esp, 0x10
call fcn.014fbaa0
jmp 0x14960fc
mov eax, dword [0x15d2dbc]
mov dword [0x15d2db8], eax
push eax
call ebp
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
test eax, eax
jne 0x1495f6a
call fcn.014fbaa0
mov edx, dword [0x15d2db8]
push edx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Failed_to_SetProcessAffinityMask._ErrorCode_:__u._Input_ProcessAffinityMask_:__u
push edi
call fcn.01493670
add esp, 0x10
jmp 0x14960fc
push str.SR_GameServer
push edi
call fcn.01492fb0
add esp, 8
test eax, eax
je 0x1495f8e
push str.AgentServer
push edi
call fcn.01492fb0
add esp, 8
test eax, eax
jne 0x1495fc4
mov eax, dword [0x15d2d84]
cmp eax, ebx
je 0x14960ee
push 0xa
push 0x104
lea ecx, [esp + 0x584]
push ecx
push eax
call fcn.0153fb62
add esp, 0x10
lea edx, [esp + 0x57c]
push edx
lea ecx, [esp + 0x50]
call fcn.01462360
cmp dword [esp + 0x64], 0x10
mov eax, dword [esp + 0x50]
jae 0x1495fd3
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x18]
call fcn.014dd880
mov byte [esp + 0x68c], 1
lea ecx, [esp + 0x14]
call fcn.014dd8e0
test eax, eax
jne 0x1496015
push str.cannot_create_semaphore_:_module_already_executing
push edi
call fcn.01493670
add esp, 8
mov byte [esp + 0x68c], bl
lea ecx, [esp + 0x14]
call fcn.014dd8c0
jmp 0x14960fc
mov eax, 0x15d2c60
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1496020
sub eax, edx
jne 0x1496063
push str.Certification
push edi
call fcn.0148d7d0
add esp, 8
test eax, eax
je 0x1496063
push edi
push str.there_is_no_assigned_ip_for_certifying_server___s_
push edi
call fcn.01493670
add esp, 0xc
mov byte [esp + 0x68c], bl
lea ecx, [esp + 0x14]
call fcn.014dd8c0
jmp 0x14960fc
push 0x15d2c4c
push 0x15d2c48
call fcn.01493750
add esp, 8
test al, al
jne 0x1496083
push str.failed_to_identify_public_ip_of_this_machine
jmp 0x1495ff7
call fcn.014dd870
mov eax, dword [0x15d2d94]
mov ecx, dword [0x15d2d90]
push eax
push ecx
call fcn.014fa780
add esp, 8
call fcn.01493660
test eax, eax
jne 0x14960b0
push str.Anti_DLL_Injection_Init___Failed______Anti_DLL_Log_Check_Plz
jmp 0x1495ff7
mov edx, dword [esp + 0x694]
mov eax, dword [esp + edx*4 + 0x1c]
call eax
mov ecx, dword [0x15d29f4]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [esp + 0x68c], bl
lea ecx, [esp + 0x14]
call fcn.014dd8c0
mov dword [esp + 0x68c], esi
lea ecx, [esp + 0x4c]
call fcn.01451cc0
xor eax, eax
jmp 0x149610e
push str.cannot_find_config_:_myport
push edi
call fcn.01493670
add esp, 8
mov dword [esp + 0x68c], esi
lea ecx, [esp + 0x4c]
call fcn.01451cc0
mov eax, esi
mov ecx, dword [esp + 0x684]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x66c]
xor ecx, esp
call fcn.0153eb33
add esp, 0x67c
ret