Function at 0x8665f3
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [esp]
jmp 0x8669a3
mov dword [esp], ebp
mov ebp, 0x59ff5593
xor ebp, 0xb717198b
push ecx
mov dword [esp], ebp
sub dword [esp], 0x7bfe96ea
pop ebx
push edx
mov edx, 0x7be7d8a5
add edx, 0x3fb247a8
jmp 0x866ac5
mov ebx, 4
push 0x1c050600
mov dword [esp], edi
mov edi, 0x6d7b1f79
jmp 0x8666a4
push edx
mov edx, 0x71740d39
jmp 0x866ccc
sub edi, 4
xchg dword [esp], edi
pop esp
jmp 0x866fbd
xor ecx, 0x7f6f59d9
pop ebp
push ebp
mov ebp, 0x7b91e237
sub ebp, 0x2fbfc589
sub ebp, 0x7e5e018a
shr ebp, 6
push esi
mov esi, 0x7684f8ff
add ebp, esi
pop esi
add ecx, ebp
pop ebp
and ecx, 0x77bfbed4
shl ecx, 1
shr ecx, 5
shr ecx, 8
sub ecx, 0x11385
add edx, ecx
pop ecx
push ecx
mov ecx, 4
add edx, ecx
pop ecx
xchg dword [esp], edx
jmp 0x866c05
add eax, edi
pop edi
sub eax, 0x77b52067
sub eax, esi
add eax, 0x77b52067
sub eax, 0x450ead00
mov esi, dword [esp]
push ebp
mov ebp, esp
jmp 0x866eb4
sub eax, 0x5fff303c
shr eax, 1
sub eax, 0x90aa4476
add ebx, eax
mov eax, dword [esp]
jmp 0x8669ea
mov ebp, esp
jmp 0x86664c
pop esi
neg ebp
push ecx
mov ecx, 0x8ac5270b
xor ebp, ecx
jmp 0x866ab5
sub edx, 0x77ddca8c
push eax
mov eax, 0x73ce4fa0
sub edx, eax
jmp 0x8669da
xchg ebx, eax
xchg edi, ebx
push 0x12599ea4
mov dword [esp], ebp
jmp 0x86683d
push ebx
jmp 0x8667d5
mov edi, 0x7d67455f
inc edi
dec edi
jmp 0x8667b2
mov edx, 0x3f59b228
and eax, edx
pop edx
neg eax
jmp 0x8668cb
sub ebx, esi
jmp 0x866a30
add ebx, 0x4886590b
sub edx, ebx
pop ebx
or eax, edx
pop edx
push esi
mov esi, 0x1f8fb672
and esi, 0x5a7d2b00
inc esi
push ebx
jmp 0x8668ef
add ebx, 4
add ebx, 4
jmp 0x866712
dec edi
add edi, 0xd77009b
sub ebp, edi
pop edi
jmp 0x866b24
pop edx
push ecx
push ebp
mov ebp, 0x7f2b3554
not ebp
shl ebp, 3
push ebx
sub esp, 4
jmp 0x86652f
push esi
mov esi, 0x59bf5c68
shl esi, 4
and esi, 0x49fdb7c0
xor esi, 0x752afe60
sub ebp, esi
jmp 0x866619
mov ebx, dword [esp]
jmp 0x866c4c
pop esi
add ebp, ebx
mov ebx, dword [esp]
jmp 0x866bde
mov dword [esp], ecx
jmp 0x86688d
xchg dword [esp], ebx
pop esp
sub esp, 4
mov dword [esp], eax
mov dword [esp], ebx
push ecx
push 0x7ff60ae7
pop ecx
and ecx, 0x1de222ff
sub ecx, 0x654dfb2
mov ebx, ecx
mov ecx, dword [esp]
push ebx
mov ebx, esp
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
mov esp, dword [esp]
shr ebx, 6
jmp 0x866757
sub ebx, 0x5b83810a
sub ebx, 0x59ff0133
push esi
push ecx
push 0x3db7e820
pop ecx
add ecx, 0x1a02e9c1
mov esi, ecx
jmp 0x866778
pop ecx
add ebx, 0x3fee0c6a
add ebx, esi
sub ebx, 0x3fee0c6a
push dword [esp]
pop esi
add esp, 4
jmp 0x8668e3
not ebx
add ebx, 0x2fdeb24c
sub ebx, 0x6f941a64
jmp 0x866902
or edi, 0x733bb3fb
sub edi, 0xfd6e09a4
add ebx, edi
pop edi
add edi, ebx
pop ebx
add edi, 4
push edi
push dword [esp + 4]
pop edi
pop dword [esp]
jmp 0x8669e2
mov ebx, 0x41f336b4
and ebx, 0x6af71596
push edx
mov dword [esp], eax
push edx
jmp 0x86684c
xor ebp, dword [esp]
jmp 0x866df3
push 0x15590a20
mov dword [esp], ecx
not dword [esp]
jmp 0x8669ca
add ecx, 0x5ff82a33
add ecx, eax
sub ecx, 0x5ff82a33
push ebx
push esi
mov esi, 0x7fffaafc
mov ebx, esi
pop esi
shr ebx, 8
shl ebx, 3
push ebp
mov ebp, 0x57dc58fa
or ebp, 0x7b2b7444
or ebp, 0x57378ed3
or ebp, 0x36f3ed91
jmp 0x866986
push edi
mov ebp, dword [esp]
add esp, 4
jmp 0x866969
mov edx, 0x7ffd4038
mov eax, edx
pop edx
not eax
not eax
push eax
jmp 0x8669ac
shl ecx, 1
xor ecx, 0x6fb7b5a8
shl ecx, 3
add ecx, 0x6f5e5161
add ecx, 0xb21c2adb
xor esi, ecx
pop ecx
add ecx, 0x7dff482a
sub ecx, esi
sub ecx, 0x7dff482a
pop esi
jmp 0x866fa6
push edx
push 0x6e9fc793
push dword [esp]
pop edx
add esp, 4
jmp 0x866bb9
push esi
mov esi, 4
push esi
xor dword [esp], 0x7a75174f
jmp 0x866eec
pop ebx
push edi
mov edi, esp
jmp 0x866ad6
push ebx
jmp 0x86655a
xor eax, 0x49caab4e
add esi, 0x7fb9a718
add esi, eax
jmp 0x866b49
pop esp
jmp 0x86679f
push esi
push 0xa296842c
pop esi
jmp 0x86666d
mov ebx, 0x7ed79884
xor ebx, 0x1481c0c
sub esi, ebx
pop ebx
jmp 0x866d72
add ebp, 0x7ceb03c7
jmp 0x866a55
pop ebx
push ebp
xor dword [esp], 0x7f6f59d9
pop ecx
jmp 0x86658b
pop esi
pop ecx
sub ecx, 0x77fd8dcf
add ecx, 0
push edx
mov edx, 0x2efff819
not edx
add edx, 0x7afb5d3c
and edx, 0x65ff047d
sub edx, 0x2095b18
add ecx, edx
jmp 0x866c2e
xor ebx, dword [esp]
pop esp
push edi
mov dword [esp], 0x51daba51
mov dword [esp], eax
jmp 0x866cad
pop edi
jmp 0x8666cc
neg ebp
not ebp
sub ebp, 0x4508d80
add ebx, ebp
pop ebp
push eax
mov eax, 0x6fff5ca7
xor eax, 0x1800e077
jmp 0x866d55
push ebp
push esp
pop ebp
push ebx
jmp 0x866a01
not dword [esp]
pop eax
jmp 0x8665fb
mov edi, 0x4cef85eb
push ecx
mov ecx, 0x1bfd7426
add eax, 0x5f7f93b9
jmp 0x866c3b
pop ecx
or ecx, 0x783bc081
inc ecx
shl ecx, 1
jmp 0x866b0a
pop eax
add ebx, edx
jmp 0x866c25
pop esp
push eax
push ecx
jmp 0x866c58
push ebx
mov ebx, esp
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
jmp 0x8668dd
mov ebx, 0x7fd746af
xor ebx, 0x3f67f644
sub esp, 4
mov dword [esp], eax
mov dword [esp], edi
mov edi, 0x3f5788f5
add ebx, 0x7f9bddcf
sub ebx, edi
sub ebx, 0x7f9bddcf
jmp 0x866a4f
mov esi, dword [esp]
add esp, 4
add esi, 0x7ffcbe7b
sub esi, ebx
sub esi, 0x7ffcbe7b
push dword [esp]
jmp 0x8668bc
pop edi
jmp 0x866b54
add ebp, ebx
sub ebp, 0x7ceb03c7
mov ebx, dword [esp]
push ebx
mov ebx, esp
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
pop esp
jmp 0x8668c5
pop eax
jmp 0x866e4e
mov dword [esp], ebp
mov ebp, 0x3ae916bf
add ebp, 0xe537ed85
push ecx
mov ecx, 0x3fb39cd1
sub ecx, 0x7d7fb620
sub ecx, 0x4f7f2895
xchg ecx, edi
not edi
xchg ecx, edi
xor ecx, 0xbaac20d5
add edx, ecx
jmp 0x866f3f
mov ecx, dword [esp]
add esp, 4
xor edx, ebp
jmp 0x866d6a
xor edx, 0x53dd5d99
add edx, 0x7f633342
jmp 0x866629
add edi, 4
add edi, 4
xchg dword [esp], edi
pop esp
cmp esi, 0xffff9f08
jne 0x866d9a
sti
mov eax, 0x5fb75d56
xchg edi, eax
not edi
push 0x5d9c031a
mov dword [esp], eax
push edi
mov eax, dword [esp]
push ecx
jmp 0x866b99
push edi
mov edi, 0x257d9672
add ecx, edi
pop edi
sub eax, ecx
jmp 0x866bc2
add ebp, ebx
jmp 0x866b2b
add ebp, 0x7af22013
push dword [esp]
pop ebx
add esp, 4
push esi
jmp 0x866bb1
xor dword [esp], ebx
jmp 0x86694b
sub esi, 0x7fb9a718
jmp 0x866f4f
push esi
mov esi, 1
sub ebx, esi
mov esi, dword [esp]
add esp, 4
push 0x22f36583
jmp 0x866c6d
xor dword [esp], edi
xor edi, dword [esp]
jmp 0x866b8c
push 0x37e76136
pop ebx
sub edx, ebx
jmp 0x8666e8
xor dword [esp], edi
not edi
xchg dword [esp], edi
jmp 0x866f83
push esp
pop ecx
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
mov esp, dword [esp]
pop edi
inc eax
jmp 0x866571
mov dword [esp], ebp
jmp 0x866d8c
shl edx, 1
dec edx
jmp 0x866d1a
pop ecx
mov edi, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
mov esp, dword [esp]
push ebp
jmp 0x866612
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
add ebp, 4
jmp 0x8667ea
mov esp, dword [esp]
push eax
jmp 0x866da7
pop edx
pop ebp
sub ebp, ebx
jmp 0x86690d
pop edx
jmp 0x866802
sub eax, 0x7ff928a5
add eax, ecx
add eax, 0x7ff928a5
jmp 0x866dd1
push eax
mov eax, esp
push esi
mov dword [esp], ebx
jmp 0x8668a9
mov dword [esp], esi
mov esi, 0x2bd31f09
shr esi, 6
add esi, 0x773d7627
push eax
mov eax, 0x7fdf7f96
push esi
mov esi, 0x5c7f5b04
or eax, esi
pop esi
jmp 0x866f1e
push 0x7229ca0b
mov dword [esp], edx
mov edx, esp
add edx, 4
add edx, 4
jmp 0x866cd7
mov dword [esp], ebp
push 0x7e3605d6
push dword [esp]
mov ebp, dword [esp]
add esp, 4
add esp, 4
jmp 0x866f24
and edx, 0x6fbbbc48
jmp 0x866cf6
xchg dword [esp], edx
pop esp
push ebx
mov dword [esp], ecx
push esi
push esi
mov esi, 0x77fd8dcf
add dword [esp + 4], esi
jmp 0x86691c
xor ebx, esi
jmp 0x8666f0
push ebx
mov ebx, 0x7ffe1bec
shl ebx, 1
sub ebx, 0xffffffff
inc ebx
jmp 0x866d5c
pop edi
dec edi
xchg esi, edi
push eax
jmp 0x866ed4
xor edx, 0xe3e0d2ef
mov ecx, edx
mov edx, dword [esp]
add esp, 4
sub ecx, 0x79fbcca4
jmp 0x8667f2
sub ebx, eax
jmp 0x866a75
shl ebx, 1
or ebx, 0xffc69fd
jmp 0x866674
push dword [esp]
jmp 0x866e9c
dec esi
sub esi, 0x4f5f2162
sub esi, 0xd70dc58c
push edi
mov edi, 0x79fda666
not edi
jmp 0x866dc5
push dword [esp + 4]
pop ebp
pop dword [esp]
mov esp, dword [esp]
sti
xor esi, esi
push dword [esi + eax]
mov edx, dword [esp]
push edx
push esp
jmp 0x8666b3
mov dword [esp], 0x54a17d5c
mov dword [esp], ecx
push 0x2e16a035
pop ecx
xor edx, ecx
push dword [esp]
pop ecx
push ebx
push esp
pop ebx
jmp 0x866de7
inc edi
and edi, 0x7ffe2961
jmp 0x866e87
sub eax, 0x5f7f93b9
pop ecx
add eax, edi
sub esp, 4
mov dword [esp], edx
jmp 0x86670a
push esi
mov esi, 0x5f7fdae0
push edx
jmp 0x866dff
xor dword [esp], ebp
xor ebp, dword [esp]
pop esp
jmp 0x866fdb
mov dword [esp], 0x5edffa4a
dec dword [esp]
sub dword [esp], 0xece58e1f
mov dword [esp], ecx
mov ecx, 0x6ee8a27f
sub esi, ecx
pop ecx
jmp 0x866e20
push ebx
mov ebx, 0x3e7fe6ee
not ebx
sub ebx, 0x5ee7ce16
not ebx
jmp 0x866e35
xor ebx, 0x6bbd3305
xor ebx, 0xb5041692
sub ebx, 0xcfb03aa4
sub esi, ebx
jmp 0x866e95
shl ebx, 8
neg ebx
sub ebx, 0x105b58f8
add ecx, 0x3f7f3050
sub ecx, ebx
sub ecx, 0x3f7f3050
mov ebx, dword [esp]
add esp, 4
push edx
pop dword [ecx]
push dword [esp]
mov ecx, dword [esp]
add esp, 4
push ebx
mov ebx, esp
jmp 0x866693
shl edi, 3
sub edi, 0xeb019b00
jmp 0x8665dc
pop ebx
push esi
jmp 0x866ead
pop ebp
add esp, 4
push 0x743e68c0
jmp 0x866a82
push edi
pop esi
jmp 0x866d08
add ebp, 4
add ebp, 4
xchg dword [esp], ebp
pop esp
sub esp, 4
mov dword [esp], ecx
mov ecx, 0x5df70380
shr ecx, 8
jmp 0x866f60
mov eax, 0x83971d93
add esi, eax
pop eax
add ebx, esi
pop esi
push ebp
mov ebp, 4
add ebx, ebp
jmp 0x866f15
mov ebx, dword [esp]
add esp, 4
xor ebx, 0x7a75174f
pop esi
add eax, ebx
mov ebx, dword [esp]
add esp, 4
add eax, 4
xchg dword [esp], eax
pop esp
mov ebp, dword [esp]
jmp 0x866c92
pop ebp
xor ebx, dword [esp]
jmp 0x866b41
push edx
jmp 0x86665e
push eax
mov eax, 0
sub eax, ebp
xchg ebp, eax
pop eax
xchg ebp, edi
xchg edi, ebx
jmp 0x866f37
xchg ebx, eax
not eax
jmp 0x86663c
pop ecx
sub edx, ebp
push edi
jmp 0x866f48
mov edi, esp
jmp 0x866f55
pop eax
jmp 0x866cef
add edi, 4
jmp 0x86657c
push esi
push eax
push 0x656b4650
pop eax
or eax, 0x3dff2318
sub eax, 0x681f8a48
mov esi, eax
pop eax
dec esi
push 0x663212e2
mov dword [esp], esi
jmp 0x866b6c
mov esi, dword [esp]
add esp, 4
not esi
push 0x21d42052
mov dword [esp], ecx
mov ecx, 0x6d1efbba
and ecx, 0x7ddf1624
jmp 0x86685e
push ecx
pop edx
mov ecx, dword [esp]
push eax
mov dword [esp], edi
mov edi, esp
push ebx
mov ebx, 0x7dee11a9
push edi
jmp 0x866652
mov dword [esp], ebx
jmp 0x866b77
sti
sub eax, 0x4cef85eb
add eax, dword [esp]
push 0x53aa3197
mov dword [esp], edi
jmp 0x8669b5