Function at 0x451620
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
jmp 0x4518d2
push edi
mov edi, ecx
cmp eax, 0x15c92
je 0x451903
cmp eax, 0
je 0x451d8f
cmp eax, 0
je 0x45221b
cmp eax, 0
je 0x4526a7
pop edi
jmp 0x453667
mov dword [edx], 0x25f
mov eax, 0x5b028230
stosd dword es:[edi], eax
mov eax, 0x2000102
stosd dword es:[edi], eax
mov eax, 0x99008181
stosd dword es:[edi], eax
mov eax, 0xd8c34fd7
stosd dword es:[edi], eax
mov eax, 0xea43b4cb
stosd dword es:[edi], eax
mov eax, 0x11289943
stosd dword es:[edi], eax
mov eax, 0xd632a111
stosd dword es:[edi], eax
mov eax, 0x9a22d94e
stosd dword es:[edi], eax
mov eax, 0xaf914acb
stosd dword es:[edi], eax
mov eax, 0xb04ad393
stosd dword es:[edi], eax
mov eax, 0x4f47a17b
stosd dword es:[edi], eax
mov eax, 0x12ff747
stosd dword es:[edi], eax
mov eax, 0xf240c2a4
stosd dword es:[edi], eax
mov eax, 0x576bd322
stosd dword es:[edi], eax
mov eax, 0x9bfdade5
stosd dword es:[edi], eax
mov eax, 0xee221cc1
stosd dword es:[edi], eax
mov eax, 0x6adc3550
stosd dword es:[edi], eax
mov eax, 0x565b4ecd
stosd dword es:[edi], eax
mov eax, 0x49c66334
stosd dword es:[edi], eax
mov eax, 0xa21889e8
stosd dword es:[edi], eax
mov eax, 0x678d5ad7
stosd dword es:[edi], eax
mov eax, 0xca1dd3b7
stosd dword es:[edi], eax
mov eax, 0xb17045d7
stosd dword es:[edi], eax
mov eax, 0x512dd626
stosd dword es:[edi], eax
mov eax, 0x18c3b6a1
stosd dword es:[edi], eax
mov eax, 0xa78dc662
stosd dword es:[edi], eax
mov eax, 0xb77b64ca
stosd dword es:[edi], eax
mov eax, 0x3b327514
stosd dword es:[edi], eax
mov eax, 0x5055b83b
stosd dword es:[edi], eax
mov eax, 0x6ed71558
stosd dword es:[edi], eax
mov eax, 0x8346f77a
stosd dword es:[edi], eax
mov eax, 0x2c493667
stosd dword es:[edi], eax
mov eax, 0x733cbf38
stosd dword es:[edi], eax
mov eax, 0x3afef964
stosd dword es:[edi], eax
mov eax, 0x243502f
stosd dword es:[edi], eax
mov eax, 0x81020301
stosd dword es:[edi], eax
mov eax, 0x8a8f6680
stosd dword es:[edi], eax
mov eax, 0xcd879082
stosd dword es:[edi], eax
mov eax, 0x102d9c82
stosd dword es:[edi], eax
mov eax, 0x6bb660c5
stosd dword es:[edi], eax
mov eax, 0xe6893977
stosd dword es:[edi], eax
mov eax, 0xdcdc1117
stosd dword es:[edi], eax
mov eax, 0xe2b71f61
stosd dword es:[edi], eax
mov eax, 0x16fdca31
stosd dword es:[edi], eax
mov eax, 0xfa2f8a2f
stosd dword es:[edi], eax
mov eax, 0xd66d561f
stosd dword es:[edi], eax
mov eax, 0xe2c1f6d5
stosd dword es:[edi], eax
mov eax, 0x73ee8f47
stosd dword es:[edi], eax
mov eax, 0x12d667fe
stosd dword es:[edi], eax
mov eax, 0x7935f4c1
stosd dword es:[edi], eax
mov eax, 0xde889c3d
stosd dword es:[edi], eax
mov eax, 0x97cd8ee7
stosd dword es:[edi], eax
mov eax, 0x43e87dd8
stosd dword es:[edi], eax
mov eax, 0xd7f4ec71
stosd dword es:[edi], eax
mov eax, 0xdbfcda06
stosd dword es:[edi], eax
mov eax, 0x3f0df31b
stosd dword es:[edi], eax
mov eax, 0xc04346b1
stosd dword es:[edi], eax
mov eax, 0xbccc67e5
stosd dword es:[edi], eax
mov eax, 0xfe9044c
stosd dword es:[edi], eax
mov eax, 0x5b901d2d
stosd dword es:[edi], eax
mov eax, 0xd01ba53f
stosd dword es:[edi], eax
mov eax, 0x478dc33e
stosd dword es:[edi], eax
mov eax, 0xed4751e0
stosd dword es:[edi], eax
mov eax, 0xa47e587
stosd dword es:[edi], eax
mov eax, 0xc333bd74
stosd dword es:[edi], eax
mov eax, 0xb72099c7
stosd dword es:[edi], eax
mov eax, 0xa447f655
stosd dword es:[edi], eax
mov eax, 0xad73e140
stosd dword es:[edi], eax
mov eax, 0x41021b
stosd dword es:[edi], eax
mov eax, 0xe031d9cb
stosd dword es:[edi], eax
mov eax, 0x466969cd
stosd dword es:[edi], eax
mov eax, 0x5b063cca
stosd dword es:[edi], eax
mov eax, 0xafcb76b1
stosd dword es:[edi], eax
mov eax, 0x4c871f46
stosd dword es:[edi], eax
mov eax, 0x7449c75a
stosd dword es:[edi], eax
mov eax, 0x12c42db4
stosd dword es:[edi], eax
mov eax, 0x4f905b4c
stosd dword es:[edi], eax
mov eax, 0xee94e24b
stosd dword es:[edi], eax
mov eax, 0xe095ecea
stosd dword es:[edi], eax
mov eax, 0x5807c649
stosd dword es:[edi], eax
mov eax, 0xd8231242
stosd dword es:[edi], eax
mov eax, 0x7b3dd0b6
stosd dword es:[edi], eax
mov eax, 0x89a2a4c7
stosd dword es:[edi], eax
mov eax, 0xf01b84b
stosd dword es:[edi], eax
mov eax, 0xf561d05
stosd dword es:[edi], eax
mov eax, 0xc1004102
stosd dword es:[edi], eax
mov eax, 0xf10cf232
stosd dword es:[edi], eax
mov eax, 0x55bcaefe
stosd dword es:[edi], eax
mov eax, 0x2c188400
stosd dword es:[edi], eax
mov eax, 0x81379acc
stosd dword es:[edi], eax
mov eax, 0xdb88ada1
stosd dword es:[edi], eax
mov eax, 0x5cdc5227
stosd dword es:[edi], eax
mov eax, 0xafb76bd7
stosd dword es:[edi], eax
mov eax, 0xf34c4b16
stosd dword es:[edi], eax
mov eax, 0x2ae52788
stosd dword es:[edi], eax
mov eax, 0x8ca436fb
stosd dword es:[edi], eax
mov eax, 0x54332aa6
stosd dword es:[edi], eax
mov eax, 0xb0be437e
stosd dword es:[edi], eax
mov eax, 0xfe2153c9
stosd dword es:[edi], eax
mov eax, 0x36b209e3
stosd dword es:[edi], eax
mov eax, 0xe28d8241
stosd dword es:[edi], eax
mov eax, 0x28d76e4
stosd dword es:[edi], eax
mov eax, 0xe6870041
stosd dword es:[edi], eax
mov eax, 0xf0884021
stosd dword es:[edi], eax
mov eax, 0x28dcd9f0
stosd dword es:[edi], eax
mov eax, 0xf9203d04
stosd dword es:[edi], eax
mov eax, 0x15841fdd
stosd dword es:[edi], eax
mov eax, 0xda91dd04
stosd dword es:[edi], eax
mov eax, 0x1e78f830
stosd dword es:[edi], eax
mov eax, 0x92ddb682
stosd dword es:[edi], eax
mov eax, 0x41dd3460
stosd dword es:[edi], eax
mov eax, 0x48479fb8
stosd dword es:[edi], eax
mov eax, 0xd9dbea63
stosd dword es:[edi], eax
mov eax, 0xb6d63a5a
stosd dword es:[edi], eax
mov eax, 0xe07990c2
stosd dword es:[edi], eax
mov eax, 0xc32ffd28
stosd dword es:[edi], eax
mov eax, 0x7a320617
stosd dword es:[edi], eax
mov eax, 0xbe585fab
stosd dword es:[edi], eax
mov eax, 0x41025f39
stosd dword es:[edi], eax
mov eax, 0xa1cc8000
stosd dword es:[edi], eax
mov eax, 0xc9a9f65d
stosd dword es:[edi], eax
mov eax, 0xad55e3d2
stosd dword es:[edi], eax
mov eax, 0x11337365
stosd dword es:[edi], eax
mov eax, 0xc96b567a
stosd dword es:[edi], eax
mov eax, 0x8c6fe705
stosd dword es:[edi], eax
mov eax, 0x9d8fe892
stosd dword es:[edi], eax
mov eax, 0x32641f25
stosd dword es:[edi], eax
mov eax, 0x6f054d33
stosd dword es:[edi], eax
mov eax, 0x79a71cee
stosd dword es:[edi], eax
mov eax, 0xc66e08c3
stosd dword es:[edi], eax
mov eax, 0xd7fee2cc
stosd dword es:[edi], eax
mov eax, 0x8cdb75d4
stosd dword es:[edi], eax
mov eax, 0x5b9754c1
stosd dword es:[edi], eax
mov eax, 0xac2b24cc
stosd dword es:[edi], eax
mov eax, 0xf942975e
stosd dword es:[edi], eax
mov eax, 0x3f4002b3
stosd dword es:[edi], eax
mov eax, 0x6de09ecc
stosd dword es:[edi], eax
mov eax, 0x548412c3
stosd dword es:[edi], eax
mov eax, 0xf4ca9c8d
stosd dword es:[edi], eax
mov eax, 0x1f4154ae
stosd dword es:[edi], eax
mov eax, 0x3e69a71f
stosd dword es:[edi], eax
mov eax, 0x5a12120a
stosd dword es:[edi], eax
mov eax, 0x85d4b077
stosd dword es:[edi], eax
mov eax, 0x7244a24a
stosd dword es:[edi], eax
mov eax, 0xa88bf5f0
stosd dword es:[edi], eax
mov eax, 0xff117dc7
stosd dword es:[edi], eax
mov eax, 0x8917ddde
stosd dword es:[edi], eax
mov eax, 0x22f6f064
stosd dword es:[edi], eax
mov eax, 0x7a8c7f5d
stosd dword es:[edi], eax
mov eax, 0xc4644284
stosd dword es:[edi], eax
mov eax, 0x26a500b4
stosd dword es:[edi], eax
mov eax, 0xf73f9b
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
stosd dword es:[edi], eax
mov eax, 0
add byte [eax], al
stosd dword es:[edi], eax
pop edi
jmp 0x4536aa
sbb ebx, dword [ecx]
add byte [eax], al
mov dword [ecx], 0x31ab74b2
mov cl, 0x4b
sbb dword [ebx + 0x66eef181], esi
pop cx
jp 0x451df7
jg 0x451d8b
adc eax, 0x5d4b7858
jns 0x451d86
xor dword [ecx + 0x535b5f74], esi
and dword [edx - 0x4dfe4edf], esi
cmp eax, 0x41b90c99
xor ecx, 0x67e77766
dec ebx
xor ebx, 0x7efe6e76
sbb dword [ebx - 0x4dd60e75], esi
or dword [ebx + 0x5074b189], esi
int3
add dword [edx + 0x53d4ae2], esi
jge 0x451e51
mov esi, ecx
or dword [ebx + 0x29b11949], esi
mov cl, 0x90
int3
mov dl, 0x81
bnd jg 0x451ecd
jg 0x451ea1
adc eax, 0x794f318e
ret
ret
pop edi
mov dword [ecx + 0x7c41b389], esi
ljmp 0x357b
std
sub dword [ecx - 0x4ed64cff], esi
add dword [edx + 0x40b201c3], esi
dec eax
jo 0x451e85
int3
insb byte es:[edi], dx
push edi
dec ebx
int3
repne outsd dx, dword [si]
ja 0x452723
jg 0x452711
xor dword [edx - 0x1bcc68cb], esi
or byte [0x720508b7], dl
dec ebx
jne 0x45271f
mov bh, 8
add eax, 0x62754b72
or eax, 0x209452ce
add dword [ecx + 0x7bd77c49], esi
adc al, 0x31
mov bl, 0x31
mov cl, 0x19
mov cl, 9
mov cl, 0x90
push eax
jne 0x45272f
add dword [edx - 0x2f8e5a83], esi
xor edx, 0x66fe6676
jb 0x4526b6
invalid
sbb dword [edx + 0x1c680552], esi
xor dword [edx + 0x29], ecx
mov dl, 0x51
mov dword [edx - 0x67daaeb8], esi
push ss
dec cx
dec eax
push ecx
and eax, 0x49661698
nop
jl 0x452720
jle 0x4526d5
jle 0x452753
jbe 0x4526d5
or dword [ebx + 0x11c3b331], esi
mov bl, 0x42
sbb dword [ecx + 0x79947459], esi
lds eax, [ecx]
mov cl, 0xc3
sbb dword [edx - 0x4ef64dd7], esi
pop edx
ret
mov cl, 0x5a
dec edx
or eax, 0x123d54df
pop ecx
ret
loop 0x4526f0
sbb dword [ecx + 0x1e7eb50], esi
mov bl, 0x19
mov dl, 0x53
xor edx, 0x67e67eef
jge 0x45276f
dec edx
jg 0x452767
and dword [ecx + 0x7052c072], esi
jg 0x4526d2
jbe 0x45275d
xor dword [edx - 0xc7e4cdf], esi
imul dword [edi + 0x7f]
ja 0x4527a6
inc ecx
js 0x452717
lds ebx, [edx + 0x77]
mov al, bl
dec ebx
or eax, 0x61c2cec
pop edx
ja 0x4526df
ret
sbb al, 6
nop
push ebx
or dword [ebx + 0x7eb22952], esi
int3
out dx, eax
jle 0x4527e1
jbe 0x4527ad
inc ecx
dec edx
dec ecx
sub dword [ecx + 0x6f67f181], esi
mov cl, 0x81
int1
outsd dx, dword [si]
out 0x7f, eax
inc ecx
pop edx
xor edx, 0x6fee7fee
out dx, al
jg 0x45276b
outsd dx, dword [esi]
loop 0x4527af
jo 0x45279c
xor dword [ecx - 0x4d76a8ad], esi
pop eax
sub dword [ebx + 0x7f6ff281], esi
out 0x77, al
dec edx
mov bl, 0x81
repne outsd dx, dword [esi]
jg 0x452776
ja 0x4527dc
xor edx, 0x77767eff
xor edx, 0x77ff67f7
push eax
invalid
push dword [edi + 0x50]
xor ecx, 0x67ee6ff7
je 0x45278a
imul dword [edi - 0x12]
out dx, al
je 0x45278a
jecxz 0x452823
jnp 0x452779
rcl byte [edi - 0x77]
mov dl, 0x73
push edi
mov dword [edx - 0x4ed6ce8d], esi
dec eax
xor dword [ecx], ebp
mov cl, 0x48
jbe 0x45273a
and dword [edx - 0xc7e4dff], esi
outsd dx, dword [esi]
jle 0x4527a3
outsb dx, byte [esi]
jo 0x452751
pop eax
ja 0x45275a
dec ecx
push ecx
add dword [edx + 0x7ef18190], esi
jbe 0x4527c2
xor ecx, 0x67f6767e
pop ebx
pop ebx
jp 0x452788
jnp 0x452793
or eax, 0x2dc20794
xor ebx, 0x776f7e6e
ret
ja 0x4527a1
pop ecx
pop ecx
add dword [ecx + 0x5bb28990], esi
inc eax
jae 0x4527c7
mov cl, 0x90
mov dword [edx - 0x218cbfa5], esi
nop
adc eax, 0x3c092836
sbb dword [edx + 0x382d0559], esi
pop ss
adc al, 0x79
outsb dx, byte [esi]
int3
mov dl, 5
and eax, 0x766c7e13
adc al, 0x49
mov dword [ebx + 0x77f18b43], esi
xchg ebx, eax
sub dword [ecx - 0x7e4dcea1], esi
int1
invalid
mov eax, 0xfffffffe
pop ebp
ret
xor eax, eax
pop ebp
ret