Function at 0x40dd89
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
jmp 0x40ddaa
pushal
mov eax, 1
mov eax, 2
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 6
popal
push ebx
mov ebx, 1
mov ebx, 2
mov ebx, 4
mov ebx, 2
mov ebx, 5
mov ebx, 4
mov ebx, 2
mov ebx, 5
mov ebx, 5
pop ebx
push ecx
push edx
push ebx
push esi
push edi
cmp dword [ebp + 8], 0x38b5ef61
jne 0x40de20
mov eax, 1
jmp 0x40e046
cmp dword [ebp + 8], 0x957b1d51
jne 0x40de33
mov eax, 2
jmp 0x40e046
cmp dword [ebp + 8], 0x7c60a4ae
jne 0x40de46
mov eax, 3
jmp 0x40e046
cmp dword [ebp + 8], 0x317a89fb
jne 0x40de59
mov eax, 4
jmp 0x40e046
cmp dword [ebp + 8], 0x9a83c3c6
jne 0x40de6c
mov eax, 5
jmp 0x40e046
cmp dword [ebp + 8], 0xf87c9b1c
jne 0x40de7f
mov eax, 6
jmp 0x40e046
cmp dword [ebp + 8], 0xf71a93b9
jne 0x40de92
mov eax, 7
jmp 0x40e046
cmp dword [ebp + 8], 0x73b78dec
jne 0x40dea5
mov eax, 8
jmp 0x40e046
cmp dword [ebp + 8], 0xfb63b06f
jne 0x40deb8
mov eax, 9
jmp 0x40e046
cmp dword [ebp + 8], 0xc5f7397c
jne 0x40decb
mov eax, 0xa
jmp 0x40e046
cmp dword [ebp + 8], 0x99095ec6
jne 0x40dede
mov eax, 0xb
jmp 0x40e046
cmp dword [ebp + 8], 0xc47be15f
jne 0x40def1
mov eax, 0xc
jmp 0x40e046
cmp dword [ebp + 8], 0x95cdf629
jne 0x40df04
mov eax, 0xd
jmp 0x40e046
cmp dword [ebp + 8], 0x888c2ed1
jne 0x40df17
mov eax, 0xe
jmp 0x40e046
cmp dword [ebp + 8], 0x826f6b55
jne 0x40df2a
mov eax, 0xf
jmp 0x40e046
cmp dword [ebp + 8], 0x700d7482
jne 0x40df3d
mov eax, 0x10
jmp 0x40e046
cmp dword [ebp + 8], 0x913c32eb
jne 0x40df50
mov eax, 0x11
jmp 0x40e046
cmp dword [ebp + 8], 0xf13598da
jne 0x40df63
mov eax, 0x12
jmp 0x40e046
cmp dword [ebp + 8], 0xfa97841f
jne 0x40df76
mov eax, 0x13
jmp 0x40e046
cmp dword [ebp + 8], 0x1d4774f1
jne 0x40df89
mov eax, 0x14
jmp 0x40e046
cmp dword [ebp + 8], 0xc21569a4
jne 0x40df9c
mov eax, 0x15
jmp 0x40e046
cmp dword [ebp + 8], 0x237b2151
jne 0x40dfaf
mov eax, 0x16
jmp 0x40e046
cmp dword [ebp + 8], 0xab4c0a50
jne 0x40dfc2
mov eax, 0x17
jmp 0x40e046
cmp dword [ebp + 8], 0xcaeea07f
jne 0x40dfd5
mov eax, 0x18
jmp 0x40e046
cmp dword [ebp + 8], 0x343031b4
jne 0x40dfe8
mov eax, 0x19
jmp 0x40e046
cmp dword [ebp + 8], 0x34f80510
jne 0x40dffb
mov eax, 0x1a
jmp 0x40e046
cmp dword [ebp + 8], 0xfdfe573e
jne 0x40e00e
mov eax, 0x1b
jmp 0x40e046
cmp dword [ebp + 8], 0xa4a7b805
jne 0x40e021
mov eax, 0x1c
jmp 0x40e046
cmp dword [ebp + 8], 0xc2f9bbd6
jne 0x40e034
mov eax, 0x1d
jmp 0x40e046
cmp dword [ebp + 8], 0xb4940185
jne 0x40e0c8
mov eax, 0x1e
sub eax, 1
mov edi, dword fs:[0x18]
add edi, 0x400
mov edi, dword [edi + eax*4]
nop
nop
nop
nop
xor esi, esi
mov eax, VariantClear
cpuid
shr ecx, 0x10
add esi, ecx
mov eax, reloc.WS2_32.dll_getpeername
cpuid
shr edx, 0x18
shr ecx, 0x18
add edx, ecx
add esi, edx
xor esi, 0x2ba4e0f9
xor edi, esi
nop
nop
mov eax, dword fs:[0x18]
xor ecx, ecx
xor ebx, ebx
add ebx, 1
add ecx, dword [eax + ebx*4]
cmp ebx, 0xc
jne 0x40e090
xor ecx, 0xd77d89b1
xor edi, ecx
nop
nop
nop
rdtsc
xor eax, eax
mov al, dh
xor eax, 0xeb7ffecd
nop
xor edi, eax
nop
nop
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x124]
xor edi, eax
mov eax, edi
jmp 0x40e142
xor esi, esi
nop
mov eax, VariantClear
cpuid
shr ecx, 0x10
add esi, ecx
nop
nop
mov eax, reloc.WS2_32.dll_getpeername
cpuid
shr edx, 0x18
shr ecx, 0x18
add edx, ecx
add esi, edx
nop
mov eax, 1
xor edx, edx
cpuid
add esi, edx
xor esi, eax
rdtsc
cmp eax, 0xf0000000
jge 0x40e0f8
add esi, edx
xor esi, 0xb5bbf183
mov eax, VariantClear
cpuid
shr ecx, 0x10
add esi, ecx
nop
nop
mov eax, reloc.WS2_32.dll_getpeername
cpuid
shr edx, 0x18
shr ecx, 0x18
add edx, ecx
add esi, edx
nop
mov eax, 1
xor edx, edx
cpuid
add esi, edx
xor esi, eax
rdtsc
add esi, edx
xor esi, 0xc51f87cc
mov eax, esi
pop edi
pop esi
pop ebx
pop edx
pop ecx
nop
mov esp, ebp
pop ebp
ret 4