call 0x00000005
pop ebx ; mov ebx, ip
mov ecx, ebx
add ebx, 0x1E
xor eax, eax ; clear eax, edx
xor edx, edx
mov al, [ebx]
mov dl, [ecx]
xor al, dl
mov [ebx], al ; [ecx + 0x1E] ^= [ecx]
cmp al, 0x00 ; [ecx] == [ecx + 0x1E]?
jz 0x00000046 ; yes? then breakpoint
add ecx, 0x01 ; no? ++ecx, try again
add ebx, 0x01
jmp 0x0000000F
xor edi, edi ; This is all crap from here on - just an encoded URL
mov edi, 0x1C31F9F3
mov bh, 0x44
movs es:[edi], ds:[esi]
movs es:[edi], ds:[esi]
stc
jnz 0x0000004E
movs es:[edi], ds:[esi]
out 0x75, al
adc ah, [ecx+0x1]
add al, 0xE7
movs es:[edi], ds:[esi]
bound ebp, esp
cmps ds:[esi], es:[edi]
pop edx
add [eax], al
sbb [edx+edi], ebx
int3
Y2FsbCAweDAwMDAwMDA1ICAKcG9wIGVieCAgICAgICAgICA7IG1vdiBlYngsIGlwCm1vdiBlY3gsIGVieAphZGQgZWJ4LCAweDFFCnhvciBlYXgsIGVheCAgICAgOyBjbGVhciBlYXgsIGVkeAp4b3IgZWR4LCBlZHgKbW92IGFsLCBbZWJ4XQptb3YgZGwsIFtlY3hdCnhvciBhbCwgZGwKbW92IFtlYnhdLCBhbCAgICA7IFtlY3ggKyAweDFFXSBePSBbZWN4XQpjbXAgYWwsIDB4MDAgICAgIDsgW2VjeF0gPT0gW2VjeCArIDB4MUVdPwpqeiAweDAwMDAwMDQ2ICAgIDsgeWVzPyB0aGVuIGJyZWFrcG9pbnQKYWRkIGVjeCwgMHgwMSAgICA7IG5vPyArK2VjeCwgdHJ5IGFnYWluCmFkZCBlYngsIDB4MDEKam1wIDB4MDAwMDAwMEYKeG9yIGVkaSwgZWRpICAgICA7IFRoaXMgaXMgYWxsIGNyYXAgZnJvbSBoZXJlIG9uIC0ganVzdCBhbiBlbmNvZGVkIFVSTAptb3YgZWRpLCAweDFDMzFGOUYzCm1vdiBiaCwgMHg0NAptb3ZzIGVzOltlZGldLCBkczpbZXNpXQptb3ZzIGVzOltlZGldLCBkczpbZXNpXQpzdGMKam56IDB4MDAwMDAwNEUKbW92cyBlczpbZWRpXSwgZHM6W2VzaV0Kb3V0IDB4NzUsIGFsCmFkYyBhaCwgW2VjeCsweDFdCmFkZCBhbCwgMHhFNwptb3ZzIGVzOltlZGldLCBkczpbZXNpXQpib3VuZCBlYnAsIGVzcApjbXBzIGRzOltlc2ldLCBlczpbZWRpXQpwb3AgZWR4CmFkZCBbZWF4XSwgYWwKc2JiIFtlZHgrZWRpXSwgZWJ4CmludDM=