Function at 0x402380
Capabilities:
Authenticate hmac
Encode data using xor
Initialize winsock library
Read .ini file
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x19c
mov eax, dword [0x43400c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x19c], ecx
jmp 0x4023ae
jmp 0x4023c0
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str..Settings.ini
push 0x20
push 0x5103a8
push 0x4289a0
push str.ServerName
push str.SilentGameGuardInfo
call esi
push str..Settings.ini
push 0x32
push 0x510374
push 0x4289a0
push str.Serial
push str.SilentGameGuardInfo
call esi
push str..Settings.ini
push 0x32
push 0x510340
push 0x4289a0
push str.Email
push str.SilentGameGuardInfo
call esi
push str..Settings.ini
push 0x24
push 0x50ff1c
push 0x4289a0
push str.HardwareId
push str.SilentGameGuardInfo
call esi
mov esi, dword [ebp - 0x19c]
push dword [esi + 8]
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [esi + 8], 0xffffffff
jmp 0x402462
push 0x10000000
pop dword [0x6062d0]
jmp 0x40247b
cmp dword [0x6062d0], 0x10000000
je 0x4024ad
xorps xmm0, xmm0
movups xmmword [0x428c14], xmm0
movups xmmword [0x428c04], xmm0
movups xmmword [0x428bf4], xmm0
movups xmmword [0x428be4], xmm0
movups xmmword [0x428bd4], xmm0
mov ebx, dword [ebp - 0x19c]
mov esi, dword [sym.imp.WS2_32.dll_closesocket]
push dword [ebx + 8]
call esi
lea eax, [ebp - 0x198]
mov dword [ebx + 8], 0xffffffff
push eax
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov ecx, ebx
test eax, eax
jne 0x402839
push 0xd6e7
push str.178.32.101.243
call fcn.00402080
test al, al
jne 0x402522
push 0xd6e7
push str.178.32.101.243
mov ecx, ebx
call fcn.00402080
test al, al
jne 0x402522
push 0xd6e7
push str.178.32.101.243
mov ecx, ebx
call fcn.00402080
test al, al
je 0x40283e
push dword [ebp + 8]
mov ecx, ebx
call fcn.004021b0
mov ecx, dword [ebx + 8]
test al, al
je 0x402851
push 0
push 0xb3
lea eax, [ebx + 0x31]
push eax
push ecx
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xb3
jne 0x402862
mov al, byte [ebx + 0x34]
cmp al, byte [ebx + 0x30]
jne 0x402875
lea edx, [ebx + 0x36]
mov edi, 0x23
nop dword [eax + eax]
add byte [edx - 1], 0xda
lea edx, [edx + 5]
movzx ecx, byte [ebx + 0x34]
add byte [edx - 5], 0xda
add cl, 0x25
xor byte [edx - 6], cl
movzx ecx, byte [ebx + 0x34]
add byte [edx - 4], 0xda
add cl, 0x25
xor byte [edx - 5], cl
movzx ecx, byte [ebx + 0x34]
add byte [edx - 3], 0xda
add cl, 0x25
xor byte [edx - 4], cl
movzx ecx, byte [ebx + 0x34]
add byte [edx - 2], 0xda
add cl, 0x25
xor byte [edx - 3], cl
movzx ecx, byte [ebx + 0x34]
add cl, 0x25
xor byte [edx - 2], cl
sub edi, 1
jne 0x402570
mov al, byte [ebx + 0x36]
test al, al
je 0x402888
cmp al, 2
je 0x40289b
cmp al, 3
je 0x4028c6
cmp al, 4
je 0x4028d7
cmp byte [0x50ff08], 0
jne 0x4026ad
mov al, byte [ebx + 0x38]
cmp al, 1
jne 0x40265c
mov eax, dword [0x606248]
test eax, eax
jne 0x402622
push str.user32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x40263c
push str.MessageBoxTimeoutA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x606248], eax
test eax, eax
je 0x40263c
push 0x2710
push 0
push 0x40030
push str.Silent_GameGuard_License_Is_Valid_::_Silver__Medium_Edition_
push str.Your_Packet_Is__Silver_Edition__nImportant_Notice__nUpgrade_Your_Plan_And_Get_The_Full_Version._nPlease_contact_us._nmuadmins.com___support_muadmins.com_nThanks_For_Support
push 0
call eax
inc dword [0x606220]
mov byte [0x50ff08], 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00424550
mov esp, ebp
pop ebp
ret 4
cmp al, 2
jne 0x4026a5
mov eax, dword [0x606248]
test eax, eax
jne 0x40268d
push str.user32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x40263c
push str.MessageBoxTimeoutA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x606248], eax
test eax, eax
je 0x40263c
push 0x2710
push 0
push 0x40030
push str.Silent_GameGuard_License_Is_Valid_::_Gold__Unlimited_Edition_
push str.Your_Packet_Is_Gold__Unlimited_Edition__nImportant_Notice__nYou_Are_The_Best_Special_Thanks_for_Support_This_Project_nPlease_contact_us._nmuadmins.com___support_muadmins.com_nThanks_For_Support
jmp 0x402638
test al, al
je 0x4028e8
lea eax, [ebx + 0x3c]
mov ecx, 0x5103a8
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4026d5
test dl, dl
je 0x4026d1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4026d5
add eax, 2
add ecx, 2
test dl, dl
jne 0x4026b5
xor eax, eax
jmp 0x4026da
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4028fb
lea eax, [ebx + 0x5c]
mov ecx, 0x510374
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402710
test dl, dl
je 0x40270c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402710
add eax, 2
add ecx, 2
test dl, dl
jne 0x4026f0
xor eax, eax
jmp 0x402715
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40290e
lea eax, [ebx + 0x8e]
mov ecx, 0x510340
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402748
test dl, dl
je 0x402744
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402748
add eax, 2
add ecx, 2
test dl, dl
jne 0x402728
xor eax, eax
jmp 0x40274d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402921
mov ecx, ebx
call fcn.00401f40
test al, al
je 0x402934
lea eax, [ebx + 0xc0]
lea ecx, [ebx + 0xc]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402790
test dl, dl
je 0x40278c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402790
add eax, 2
add ecx, 2
test dl, dl
jne 0x402770
xor eax, eax
jmp 0x402795
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402947
push eax
mov ecx, ebx
call fcn.004029d0
xorps xmm0, xmm0
lea eax, [ebx + 0x5c]
movups xmmword [ebx + 0xc], xmm0
push 0x32
movups xmmword [ebx + 0x1c], xmm0
mov dword [ebx + 0x2c], 0
push 0
movups xmmword [ebx + 0x3c], xmm0
push eax
movups xmmword [ebx + 0x4c], xmm0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebx + 0x8e]
push 0x32
push 0
push eax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
add esp, 0xc
movups xmmword [ebx + 0xc0], xmm0
movups xmmword [ebx + 0xd0], xmm0
mov dword [ebx + 0xe0], 0
jmp 0x40280f
jmp 0x402826
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.00424550
mov esp, ebp
pop ebp
ret 4
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push ecx
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
push 0x2710
sub esp, 8
mov dword [ebx + 8], 0xffffffff
mov edx, str.Your_Package_is_Pending..._nImportant_Notice_._nPlease_contact_us._nsilentguardmu.eu___support_silentguardmu.eu_nThank_You.
push str.SilentGuardMu_AntiHack_License_Is_::_Pending
call fcn.00410340
add esp, 0x10
call fcn.004029b0
push dword [ebx + 8]
call esi
mov dword [ebx + 8], 0xffffffff
call fcn.004029b0
push dword [ebx + 8]
call esi
mov dword [ebx + 8], 0xffffffff
call fcn.004029b0
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
push dword [ebx + 8]
call esi
mov ecx, ebx
mov dword [ebx + 8], 0xffffffff
call fcn.00402960
int3