Function at 0x4157e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e203a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4b0
push ebx
push esi
push edi
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esp
mov eax, dword [0x509df8]
mov ecx, dword [0x509dfc]
mov edx, dword [0x509e00]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x509e04]
mov dword [ebp - 0x28], ecx
mov cl, byte [0x509e08]
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x1c], cl
mov eax, dword [edi - 8]
mov ebx, 1
test eax, eax
mov dword [ebp - 4], ebx
jne 0x41585c
mov esi, dword [ebp + 8]
push ebx
push ebx
mov ecx, esi
call fcn.004d3185
mov dword [ebp - 0x18], ebx
jmp 0x415a59
mov al, 0x65
or ecx, 0xffffffff
mov byte [ebp - 0x2c], al
mov byte [ebp - 0x27], al
mov byte [ebp - 0x23], al
mov al, 0x30
mov byte [ebp - 0x20], al
mov byte [ebp - 0x1d], al
xor eax, eax
mov byte [ebp - 0x2b], 0x6e
mov byte [ebp - 0x2a], 0x63
mov byte [ebp - 0x29], 0x6f
mov byte [ebp - 0x28], 0x64
mov byte [ebp - 0x26], 0x42
mov byte [ebp - 0x25], 0x61
mov byte [ebp - 0x24], 0x73
mov byte [ebp - 0x22], 0x2b
mov byte [ebp - 0x21], 0x31
mov byte [ebp - 0x1f], 0x32
mov byte [ebp - 0x1e], 0x34
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ecx + ecx + 0xff]
lea ecx, [ebp - 0x48]
push edx
call fcn.004343c0
mov edi, dword [ebp + 0xc]
or ecx, 0xffffffff
xor eax, eax
mov byte [ebp - 4], 2
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [ecx + ecx + 0xff]
lea ecx, [ebp - 0x38]
push eax
call fcn.004343c0
push 0x5188e8
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.004d489b
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 4
call fcn.00432c70
push 0x10
push 0x10
lea ecx, [ebp - 0x2c]
push 0x518bb4
push ecx
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 6
call fcn.00432cb0
mov edx, dword [ebp + 0xc]
mov ebx, dword [edx - 8]
mov eax, ebx
and eax, reloc.WS2_32.dll_ntohs
jns 0x415926
dec eax
or eax, 0xfffffff0
inc eax
je 0x415947
mov esi, 0x10
sub esi, eax
xor edi, edi
cmp edi, esi
jge 0x415945
push 0x518bb0
lea ecx, [ebp + 0xc]
call fcn.004d4c09
inc edi
jmp 0x415931
add ebx, esi
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x48]
call fcn.00434420
push 0
push ebx
push eax
push esi
lea ecx, [ebp - 0x4bc]
call fcn.00433f00
lea ecx, [ebp - 0x48]
call fcn.00434420
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.00434420
push ebx
push esi
push eax
call fcn.00415de0
add esp, 0xc
test eax, eax
jne 0x415997
mov esi, dword [ebp + 8]
push 0x5188e8
mov ecx, esi
call fcn.004d489b
jmp 0x415a1e
lea ecx, [ebp - 0x38]
call fcn.00434420
push eax
lea ecx, [ebp - 0x14]
call fcn.004d49b6
lea eax, [ebp - 0x14]
push 0x518bac
lea ecx, [ebp - 0x3c]
push eax
push ecx
call fcn.004d4ac2
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 7
call fcn.004d4966
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 6
call fcn.004d482d
push 0x509df4
push 0x509df0
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], 5
call fcn.004d31b9
push 0x509dec
push 0x509de8
lea ecx, [ebp - 0x14]
call fcn.004d31b9
push 0x509de4
push 0x509de0
lea ecx, [ebp - 0x14]
call fcn.004d31b9
mov esi, dword [ebp + 8]
lea edx, [ebp - 0x14]
push edx
mov ecx, esi
call fcn.004d45a2
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x4bc]
or al, 1
mov byte [ebp - 4], 4
mov dword [ebp - 0x18], eax
call fcn.00432ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.004d482d
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.00434430
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.00434430
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0
call fcn.004d482d
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret