Function at 0x40d8e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46bd6a
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 [0x4897f4]
mov ecx, dword [0x4897f8]
mov edx, dword [0x4897fc]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x489800]
mov dword [ebp - 0x28], ecx
mov cl, byte [0x489804]
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 0x40d95c
mov esi, dword [ebp + 8]
push ebx
push ebx
mov ecx, esi
call fcn.0045e0d3
mov dword [ebp - 0x18], ebx
jmp 0x40db59
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.004245a0
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.004245a0
push 0x490728
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.00460131
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 4
call fcn.00422e50
push 0x10
push 0x10
lea ecx, [ebp - 0x2c]
push 0x49080c
push ecx
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 6
call fcn.00422e90
mov edx, dword [ebp + 0xc]
mov ebx, dword [edx - 8]
mov eax, ebx
and eax, reloc.WS2_32.dll_ntohs
jns 0x40da26
dec eax
or eax, 0xfffffff0
inc eax
je 0x40da47
mov esi, 0x10
sub esi, eax
xor edi, edi
cmp edi, esi
jge 0x40da45
push 0x490808
lea ecx, [ebp + 0xc]
call fcn.0046049f
inc edi
jmp 0x40da31
add ebx, esi
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x48]
call fcn.00424600
push 0
push ebx
push eax
push esi
lea ecx, [ebp - 0x4bc]
call fcn.004240e0
lea ecx, [ebp - 0x48]
call fcn.00424600
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.00424600
push ebx
push esi
push eax
call fcn.0040dee0
add esp, 0xc
test eax, eax
jne 0x40da97
mov esi, dword [ebp + 8]
push 0x490728
mov ecx, esi
call fcn.00460131
jmp 0x40db1e
lea ecx, [ebp - 0x38]
call fcn.00424600
push eax
lea ecx, [ebp - 0x14]
call fcn.0046024c
lea eax, [ebp - 0x14]
push 0x490804
lea ecx, [ebp - 0x3c]
push eax
push ecx
call fcn.00460358
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 7
call fcn.004601fc
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 6
call fcn.004600c3
push 0x4897f0
push 0x4897ec
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], 5
call fcn.0045e107
push 0x4897e8
push 0x4897e4
lea ecx, [ebp - 0x14]
call fcn.0045e107
push 0x4897e0
push 0x4897dc
lea ecx, [ebp - 0x14]
call fcn.0045e107
mov esi, dword [ebp + 8]
lea edx, [ebp - 0x14]
push edx
mov ecx, esi
call fcn.0045fe38
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x4bc]
or al, 1
mov byte [ebp - 4], 4
mov dword [ebp - 0x18], eax
call fcn.00422e80
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.004600c3
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.00424610
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.00424610
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0
call fcn.004600c3
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