Function at 0x850187
Capabilities:
Encode data using xor

Disassembly:
push dword [esp]
mov edx, dword [esp]
jmp 0x8501ea
push eax
mov eax, 0x775f266f
shl eax, 4
sub eax, 0x75f266ee
mov edi, eax
pop eax
mov ecx, edi
jmp 0x8501ff
xchg dword [esp], ebp
xchg ebp, edi
not edi
jmp 0x850131
pop eax
pop dword [esp]
not eax
jmp 0x850726
push ebp
mov ebp, 4
mov esi, ebp
pop ebp
sub ecx, 0x49fb9361
jmp 0x850205
push eax
mov dword [esp], 0x5ffaabac
mov edi, dword [esp]
jmp 0x850863
pop ebp
push edx
mov edx, esp
jmp 0x85065e
sub ebp, 4
xchg dword [esp], ebp
pop esp
jmp 0x8506d1
mov dword [esp], 0x6fbb0edd
or dword [esp], 0x5fcfd3b3
or dword [esp], 0x7bba4f27
neg dword [esp]
dec dword [esp]
sub dword [esp], 1
add dword [esp], 0xe77bc05c
jmp 0x850a46
add edi, edx
pop edx
sub edi, edx
jmp 0x850a6b
push edi
mov edi, 4
add ebx, edi
pop edi
jmp 0x850228
pop edx
add edx, 0xffbf17fd
push edx
mov edx, 0x2b5fc3e3
jmp 0x8500d7
pop ebx
shl ecx, 6
xchg ecx, esi
dec esi
jmp 0x8503ee
pop esp
push ebx
mov dword [esp], esi
mov esi, 4
add ecx, esi
pop esi
xchg dword [esp], ecx
jmp 0x8501ba
push ebp
push edi
mov edi, 0x73f66494
mov ebp, edi
pop edi
jmp 0x850260
xor ebp, edi
jmp 0x85026a
sub edi, 1
shr edi, 1
push esi
mov dword [esp], ebp
jmp 0x85073d
push eax
mov dword [esp], edi
jmp 0x85003e
inc eax
jmp 0x85022e
or edi, 0x7c1e2f25
jmp 0x850138
xor dword [esp], 0x2b48efdb
mov dword [esp], ebp
mov dword [esp], 0x5d35ff02
push ecx
mov ecx, 0x57ffd0bb
jmp 0x85053e
push eax
jmp 0x850359
pop edi
push ebp
mov ebp, esp
jmp 0x850199
push 0x6eba86b6
jmp 0x8506ab
add ebp, 4
add ebp, 4
jmp 0x850457
mov ecx, 0x57f49d6e
mov ebp, ecx
pop ecx
shl ebp, 5
jmp 0x850689
mov esp, dword [esp]
sti
jmp 0x850633
pop ebp
xor eax, edi
pop edi
push 0x48f14fb5
mov dword [esp], ebx
mov ebx, 0x2aa78aa2
shr ebx, 5
add ebx, 1
push 0x17e9662a
mov dword [esp], eax
jmp 0x8508fb
add esp, 4
push edi
mov dword [esp], edx
mov edx, esp
push eax
push edx
mov edx, 4
jmp 0x8507f0
pop edi
jmp 0x850404
add ecx, 0x2ffe5ff4
add ecx, esi
push edi
mov edi, 0x2ffe5ff4
sub ecx, edi
push dword [esp]
jmp 0x850186
and edx, ebp
pop ebp
shr edx, 6
jmp 0x850acf
push eax
jmp 0x850380
push edx
mov edx, 0x77fdc582
shl edx, 2
shr edx, 4
xor edx, 0x63226a6c
sub eax, edx
pop edx
xor eax, esi
xor esi, eax
xor eax, esi
not esi
xor eax, esi
xor esi, eax
xor eax, esi
push ebp
push 0x766de333
pop ebp
add eax, ebp
pop ebp
jmp 0x850424
mov esi, ebp
pop ebp
add edx, esi
jmp 0x850640
xor edi, ebp
xor ebp, edi
xchg dword [esp], ebp
jmp 0x8502b7
add esp, 4
push 0x1bd09aa0
mov dword [esp], edi
jmp 0x850081
sub edx, 0x7bb22644
add edx, dword [esp]
add edx, 0x7bb22644
push ecx
push eax
mov dword [esp], 0x1a6f6862
mov dword [esp], eax
push ecx
mov dword [esp], 0x3efc0d3c
mov eax, dword [esp]
add esp, 4
jmp 0x8509b4
xor dword [esp], ebx
xor ebx, dword [esp]
xor dword [esp], ebx
not ebx
xchg dword [esp], ebx
add dword [esp], 1
push edx
push eax
push 0x639f3c63
pop eax
shr eax, 4
inc eax
add eax, 0x7d769510
add eax, 0xd942e40d
mov edx, eax
pop eax
or dword [esp + 4], edx
pop edx
not dword [esp]
sub dword [esp], 0x612b4d0
xor dword [esp], 0x2999d232
mov dword [esp], ecx
mov dword [esp], eax
pop dword [edx + edi]
push 0xd7b904
mov dword [esp], edx
mov dword [esp], ebp
push eax
mov dword [esp], ecx
jmp 0x85014a
mov esp, dword [esp]
sub eax, ebx
pop ebx
push 0x1aa41a12
mov dword [esp], edi
jmp 0x8500a9
add esp, 4
jmp 0x85056e
push eax
push dword [esp + 4]
jmp 0x850062
mov ebp, 0
sub ebp, esi
xchg esi, ebp
pop ebp
push ecx
mov ecx, 0x7efdf2b1
push edx
mov edx, 0x1502a883
xor ecx, edx
jmp 0x850802
push edx
mov dword [esp], 0xddb3e88
jmp 0x85055a
sub ebx, ebp
pop ebp
jmp 0x8507a9
xchg ecx, esi
push ebx
mov ebx, 0x177fc200
push eax
jmp 0x85067b
push eax
mov eax, ecx
push eax
add dword [esp], 0x7dbbe830
pop ebp
sub ebp, 0x7dbbe830
mov eax, dword [esp]
add esp, 4
jmp 0x8505c1
sub esp, 4
jmp 0x85042f
mov dword [esp], eax
push dword [esp]
jmp 0x850451
sub ecx, 0x6aff628a
pop ebx
neg ecx
push esi
jmp 0x850780
mov esp, dword [esp]
jmp 0x8506de
pop ecx
jmp 0x850920
xchg dword [esp], ebp
pop esp
jmp 0x85064e
push esi
jmp 0x850616
neg eax
inc eax
xor eax, 0xaadbe13c
add ecx, eax
jmp 0x8506a3
push eax
mov eax, 0x7de7388c
and edx, eax
pop eax
add edx, 0x7fb87cf1
push ebx
mov ebx, 0x7ed5ca4b
xor edx, ebx
pop ebx
shr edx, 8
push esi
mov esi, 0x38c6063c
xor edx, esi
pop esi
mov edi, edx
mov edx, dword [esp]
add esp, 4
jmp 0x850159
mov ebp, esp
add ebp, 4
add ebp, 4
xchg dword [esp], ebp
jmp 0x85010d
mov dword [esp], ebp
mov ebp, 0x3dfd223a
or ebp, 0x7aeff400
or ebp, 0x5ecf3d47
and ebp, 0x6e83af3c
jmp 0x85051b
or ebp, 0x673f4181
xor ebp, 0x8008995
jmp 0x850397
pop ecx
cmp edi, 0xffff9b40
jne 0x850635
jmp 0x850620
or dword [esp + 4], ecx
pop ecx
xor dword [esp], 0x32db8e49
push esi
mov dword [esp], eax
push ecx
mov ecx, 0x5c551cac
inc ecx
jmp 0x850626
or dword [esp], 0x1fbfe6a0
shl dword [esp], 5
shl dword [esp], 2
jmp 0x8505b9
sub edi, ecx
jmp 0x85052c
pop ecx
sub dword [esp + 4], eax
pop eax
jmp 0x850707
push ebx
mov ebx, 0x7ffbe008
mov ecx, 0x24060826
xor ecx, ebx
jmp 0x850101
pop eax
push ebp
mov dword [esp], eax
mov dword [esp], 0x7f5f1511
shl dword [esp], 2
add dword [esp], 0x60fa6b9c
xor dword [esp], 0x20193e25
shl dword [esp], 1
jmp 0x85097b
neg dword [esp]
jmp 0x850164
mov ecx, dword [esp]
add esp, 4
jmp 0x850654
add dword [esp], 0x67fe7028
sub dword [esp], 0xe6b47392
mov dword [esp], esi
mov esi, 4
add edx, esi
push dword [esp]
mov esi, dword [esp]
add esp, 4
add esp, 4
xor edx, dword [esp]
xor dword [esp], edx
xor edx, dword [esp]
jmp 0x8507a1
mov dword [esp], 0x1e30d3d1
mov dword [esp], ecx
jmp 0x850580
mov esi, 0xca29f5dc
jmp 0x85084b
sti
jmp 0x85038a
not ecx
add ecx, 0x7fbf4ca7
jmp 0x850690
xor edi, edi
push dword [edi + edx]
push dword [esp]
jmp 0x8509eb
mov esi, dword [esp]
add esp, 4
jmp 0x850286
push eax
jmp 0x8506b5
sub edi, ebp
push dword [esp]
jmp 0x850091
add edx, 4
push ebx
mov dword [esp], eax
mov eax, 4
add edx, eax
pop eax
sub esp, 4
jmp 0x85088e
mov eax, 0x3fdb7c4c
neg eax
not eax
jmp 0x850466
neg ebp
jmp 0x850772
and ecx, 0x7bfdfc2a
xor ecx, 0xd64d4337
mov eax, ecx
jmp 0x850575
pop eax
sub ecx, ebx
jmp 0x85043a
mov dword [esp], eax
pop ecx
pop eax
jmp 0x8509bc
push 0x73ce8c7f
pop eax
sub eax, 0x29d2f91e
jmp 0x85083e
mov dword [esp], edx
mov edx, 0x46bd07a7
jmp 0x850475
push edi
mov dword [esp], ecx
push 0x6e655fb5
mov dword [esp], eax
push ebx
mov ebx, 0x7feb33ed
mov eax, 0xf78607cd
add eax, ebx
mov ebx, dword [esp]
add esp, 4
xchg edx, eax
not edx
xchg edx, eax
inc eax
jmp 0x850153
add dword [esp], 1
push eax
mov eax, 0xffffffff
add dword [esp + 4], eax
mov eax, dword [esp]
add esp, 4
xchg dword [esp], esi
jmp 0x85082d
xor dword [esp], eax
xor eax, dword [esp]
xor dword [esp], eax
pop eax
sub eax, 1
xor eax, 0xf1f18112
jmp 0x85018f
mov ebp, 0xcd3d3eb3
push eax
mov eax, 0x5ff3d38f
xor eax, 0x5f7f32fe
sub eax, 1
not eax
add eax, 0x7edd1326
push ebx
mov ebx, 0xd6e471f
inc ebx
add ebx, 0x6fd4b433
xor ebx, 0x26ba2ef2
xor eax, ebx
pop ebx
jmp 0x85081e
shl ebp, 2
add ebp, 0xfa4eb704
jmp 0x8508d1
mov esi, 0x17bf16e7
push edi
mov edi, 0xffffffff
sub esi, edi
pop edi
neg esi
push 0
sub dword [esp], 0x6fbf4f38
jmp 0x8507d8
mov esp, dword [esp]
jmp 0x850934
add ebx, 0x7e7b23c4
sub ebx, 0x297226d9
sub ebx, 0x67fbd437
shl ebx, 6
or ebx, 0x2fff8d7e
sub esp, 4
mov dword [esp], edx
push 0xa26454f7
pop edx
jmp 0x85098a
sub dword [esp], esi
add dword [esp], 0x6fbf4f38
pop esi
push 0x3db8666a
mov dword [esp], ebp
jmp 0x850363
push edx
mov eax, dword [esp]
add esp, 4
pop edx
add edx, eax
jmp 0x850592
pop edx
and esi, ecx
mov ecx, dword [esp]
add esp, 4
add esi, 0xafc56e70
xor ecx, esi
mov esi, dword [esp]
jmp 0x85034e
sub eax, 0xffffffff
xor eax, 0x5255a82d
jmp 0x850966
not esi
xchg dword [esp], esi
shl dword [esp], 6
not dword [esp]
jmp 0x850460
add ecx, eax
pop eax
push dword [esp]
pop esi
push ebp
jmp 0x8504a9
xor dword [esp + 4], esi
jmp 0x850854
pop esi
push dword [esp]
mov edx, dword [esp]
add esp, 4
jmp 0x850276
push ebx
mov ebx, esp
jmp 0x8500e1
mov dword [esp], ebp
mov dword [esp], edx
push dword [esp + 4]
pop edx
pop dword [esp]
pop esp
push edx
mov edx, 0x1b3e2941
push ebx
mov ebx, 0x34fb5bad
and edx, ebx
pop ebx
push ebp
sub esp, 4
mov dword [esp], edi
jmp 0x8508d9
add ecx, ebp
pop ebp
jmp 0x850aa6
push esi
push eax
mov eax, 0x6af9f809
jmp 0x850a5a
mov dword [esp], 0x7f652db2
shl dword [esp], 8
add dword [esp], 0xe13e7bce
mov dword [esp], edi
mov edi, 0x7ebae004
sub ebx, edi
pop edi
sub esp, 4
jmp 0x8504dd
add esp, 4
push dword [esp]
pop eax
add esp, 4
xor eax, ecx
jmp 0x850a90
sub esp, 4
mov dword [esp], esi
jmp 0x850122
sub edi, eax
mov eax, dword [esp]
add esp, 4
sub edi, ebp
add edi, 0x77fd4c38
jmp 0x8501c3
shl dword [esp], 8
not dword [esp]
not dword [esp]
jmp 0x8505cf
sub ebx, edx
push dword [esp]
pop edx
push 0x7935846c
mov dword [esp], esi
mov esi, esp
add esi, 4
add esi, 4
push esi
push dword [esp + 4]
pop esi
pop dword [esp]
jmp 0x85033b
shl eax, 1
jmp 0x850180
sub edx, ecx
pop ecx
push ecx
push esp
pop ecx
push 0x4cf3d9fb
mov dword [esp], ebx
mov dword [esp], esi
jmp 0x85006d
mov edx, dword [esp]
sub esp, 4
mov dword [esp], esi
push esp
pop esi
add esi, 4
jmp 0x850af3
push dword [esp]
mov eax, dword [esp]
jmp 0x8509f6
add esp, 4
add esp, 4
push 0x7c9bdc0
mov dword [esp], ecx
sub esp, 4
mov dword [esp], eax
push ecx
mov ecx, 0x5a586086
mov dword [esp + 4], ecx
mov ecx, dword [esp]
add esp, 4
mov dword [esp], esp
add dword [esp], 4
mov ecx, dword [esp]
push esi
mov esi, esp
add esi, 4
add esi, 4
xor esi, dword [esp]
xor dword [esp], esi
xor esi, dword [esp]
pop esp
push ebp
jmp 0x850a76
push ebp
push dword [esp + 4]
pop ebp
pop dword [esp]
jmp 0x850a62
pop ebx
jmp 0x85009a
mov esi, eax
pop eax
jmp 0x850a7c
dec ebp
xchg dword [esp], ebp
jmp 0x850056
sub edi, 0x2b5fc3e3
jmp 0x8509d2
push ecx
jmp 0x8501aa
mov edi, 0x3746cbb8
xor edi, esi
pop esi
push edx
mov edx, edi
mov ebp, edx
pop edx
pop edi
jmp 0x85021d
mov ecx, dword [esp]
add esp, 4
push edi
push ebx
mov dword [esp], ebp
mov ebp, esp
push ebx
jmp 0x850ab7
add ecx, 4
xor ecx, dword [esp]
xor dword [esp], ecx
xor ecx, dword [esp]
jmp 0x850449
mov ebx, 0x4f7f2820
xor ebx, 0x557f717e
add ebx, 0xe5ffa6a6
add ebp, ebx
jmp 0x850a54
neg edx
push ebx
mov dword [esp], 0
push esi
mov esi, 0x7d5bbc81
sub dword [esp + 4], esi
pop esi
sub dword [esp], edx
add dword [esp], 0x7d5bbc81
jmp 0x8500ef
add esi, 4
xchg dword [esp], esi
mov esp, dword [esp]
push edx
jmp 0x850607