Function at 0x6454a8
Capabilities:
Encode data using xor

Disassembly:
mov esi, dword [esp]
push esi
mov dword [esp], 0x4a8b5dd
mov dword [esp], edx
push esp
jmp 0x644dc3
add ebp, 0x7ddad9ec
mov esi, dword [esp]
add esp, 4
add ebp, 0x3ffe6078
xor ebp, 0xcf80d2ad
xor edi, ebp
mov ebp, dword [esp]
add esp, 4
push edx
push 0x1019e046
mov dword [esp], ecx
push dword [esp]
mov edx, dword [esp]
add esp, 4
jmp 0x644b8d
add esi, eax
sub esi, 0x7db46baf
pop eax
jmp 0x644f9c
add edx, esi
push eax
mov eax, 0x6bf28d2c
push edi
mov edi, 0x47ffc6e0
jmp 0x644ba4
pop ecx
add eax, 0x48edd900
add eax, edx
jmp 0x644e0f
add esp, 4
add edx, 0
add edx, 0x6bf28d2c
jmp 0x644b6d
sub edi, 0xc807d559
sub edx, 0x7fa10f73
add edx, edi
add edx, 0x7fa10f73
pop edi
sub edx, 0x7efb8b58
sub edx, eax
add edx, 0x7efb8b58
sub edx, 0x7ff7f187
mov eax, dword [esp]
push eax
mov eax, esp
add eax, 4
jmp 0x644c94
mov edx, 0x672febb6
push eax
mov eax, 0x4fbd9981
push ebp
mov ebp, 0xd967b0c8
sub eax, ebp
pop ebp
or edx, eax
pop eax
push 0x2da93245
mov dword [esp], eax
jmp 0x6450c1
pop esp
push ebp
mov dword [esp], edi
sub dword [esp], 0x3e8d6471
pop dword [edx]
add dword [edx], 0x3e8d6471
push dword [esp]
pop edx
add esp, 4
push 0x1c6cb200
mov dword [esp], ecx
mov dword [esp], 0x2fc785ec
jmp 0x644e80
add esp, 4
push edi
mov edi, 0x448022cf
push edi
mov edi, 0x6fe23e3f
or edi, 0x4ff53100
sub edi, 0x7f65426a
not edi
jmp 0x6450f3
mov ebx, 0xffffffff
push ebp
jmp 0x6453d6
xor ecx, ecx
push dword [esi + ecx]
jmp 0x644c6a
push dword [esp]
push dword [esp]
jmp 0x64502a
push esi
mov esi, 0x1ef7ade1
push esi
neg dword [esp]
pop esi
push ecx
mov ecx, 0x5ff5f054
xor esi, ecx
pop ecx
and esi, 0x4c7a4054
jmp 0x644ef2
push ebp
mov ebp, 4
jmp 0x644e44
push edx
jmp 0x644dfa
sub edi, esi
push esi
mov esi, 0x5fed3e20
add edi, 0x3efea4bb
add edi, esi
jmp 0x644f74
pop esp
mov dword [esp], esi
jmp 0x64557f
sub edx, 0xffe8a7ca
mov eax, edx
pop edx
sub ecx, eax
mov eax, dword [esp]
push edx
mov edx, esp
add edx, 4
push ecx
mov ecx, 4
add edx, ecx
pop ecx
xchg dword [esp], edx
pop esp
push ebx
jmp 0x644e8d
pop edx
neg ebx
sub ebx, 0x6bea0d9d
xor ebx, 0xb8c9b443
mov ebp, ebx
pop ebx
xor ebp, 0x759f0423
push ecx
push ebp
mov ebp, 0x3feb1daf
inc ebp
shl ebp, 7
xor ebp, 0xcb658279
mov ecx, ebp
pop ebp
add ecx, 0x737df84b
add ecx, 0xffffffff
add ecx, 0xc3500e04
xor ebp, ecx
jmp 0x6454fa
push eax
jmp 0x644c9f
add esp, 4
add edx, 0xffffffff
push ecx
push edx
mov edx, 0x3fbb9190
sub edx, 0xf5c4626c
mov ecx, edx
pop edx
push edi
mov edi, 0x4bfe8600
add edi, 0x7fcaf235
shr edi, 3
add edi, 0x77f74009
inc edi
inc edi
xor edi, 0xe61ca7b7
sub ecx, edi
jmp 0x644e30
mov edx, eax
mov ebx, edx
pop edx
pop eax
push eax
mov dword [esp], esi
jmp 0x644f07
sub esi, 0x5ff72b1c
jmp 0x64549f
pop ecx
xor ecx, edx
pop edx
mov ebp, ecx
mov ecx, dword [esp]
add esp, 4
sub ebp, 0x7ddad9ec
sub ebp, esi
jmp 0x644b25
shl edi, 8
sub edi, 1
shl edi, 7
sub edi, 0xc0aab416
add ecx, edi
jmp 0x6452ba
sub dword [esp], ebx
jmp 0x6450d3
mov edx, dword [esp]
add esp, 4
push eax
jmp 0x645100
add edx, 0x5c2f64fe
add ebx, edx
pop edx
add ebx, 0x77ff6d3c
mov esi, dword [esp]
add esp, 4
mov edx, 0x5f778dcb
xchg edx, ebx
add ebx, 0xffffffff
push edx
jmp 0x645081
mov edx, 0x7faf7994
jmp 0x644cc3
xor edx, 0x1b6f334b
jmp 0x644d2f
sub eax, 0x48edd900
mov edx, dword [esp]
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
add eax, 0xffffffff
push esi
jmp 0x644ec0
pop edi
xor edx, ecx
pop ecx
jmp 0x64529e
sub esp, 4
mov dword [esp], eax
jmp 0x645348
add eax, ebp
pop ebp
push eax
push dword [esp + 4]
pop eax
pop dword [esp]
jmp 0x644c01
pop edi
shr ebx, 2
add ebx, 0x5fdf6901
shr ebx, 1
push ecx
mov ecx, 0x7f3f4b3e
sub ebx, ecx
mov ecx, dword [esp]
add esp, 4
sub ebx, 0x6d6884e7
or eax, ebx
jmp 0x64512c
mov dword [esp], edx
mov edx, 0x5fef1198
jmp 0x644e04
mov ebx, 0x5ea3fa8e
sub ecx, ebx
pop ebx
jmp 0x644fb9
mov dword [esp], ecx
push edx
mov edx, 0x6f6d935e
add edx, 0xffffffff
jmp 0x645387
mov ebx, 0xd51638fe
add eax, ebx
mov ebx, dword [esp]
add esp, 4
jmp 0x645132
mov esi, 0x6f8d1e65
add esi, 0x3e4f31a3
shl esi, 5
sub esi, 0x7fff30cf
jmp 0x645032
push ebx
jmp 0x644eab
xchg dword [esp], edx
pop esp
mov dword [esp], ebp
mov ebp, 0x7def15ae
sub ecx, ebp
jmp 0x644ff8
push eax
push 0x73f8b1f2
pop eax
sub esi, eax
pop eax
add esi, 0x7cde05ba
jmp 0x6452d8
mov esi, 0x3ff2e341
shl esi, 3
jmp 0x644f55
sub edi, 0x7fdfafcc
add edi, edx
add edi, 0x7fdfafcc
push eax
mov eax, 0x7ddf5247
add edi, eax
pop eax
mov edx, dword [esp]
add esp, 4
sub edi, 0x5fed3e20
jmp 0x644ca5
mov eax, esp
jmp 0x645213
mov eax, 0x1e07a9a5
push 0x65e3fce1
mov dword [esp], edx
jmp 0x644d6f
or esi, 0x7fde251a
sub esi, 0x57b0e669
not esi
push eax
mov eax, 0xe1086dc3
add esi, 0x7db46baf
jmp 0x644b5f
sub edi, 0x3efea4bb
pop esi
push edx
mov edx, 0x72ed8980
sub edi, edx
pop edx
mov esi, dword [esp]
push 0x18892095
jmp 0x644f91
mov dword [esp], ebp
mov dword [esp], eax
jmp 0x6452a3
add edi, esi
pop esi
sub edi, 0x7ff397ec
add edi, ebx
add edi, 0x7ff397ec
sub edi, 0x38da1511
pop ebx
jmp 0x6451d2
push eax
mov eax, 0x295e40fb
sub ecx, 0xe777ff5
sub ecx, eax
add ecx, 0xe777ff5
pop eax
jmp 0x644fd3
add ecx, 0x3de9a540
sub ecx, edx
sub ecx, 0x3de9a540
add ecx, 0x295e40fb
push edx
mov edx, 0x6e671a96
xor edx, 0x30c4e018
jmp 0x64504c
pop ebp
pop edi
cmp ecx, 0xffff99f8
jne 0x644c62
sti
push ebx
mov dword [esp], 0x467ac86d
mov dword [esp], eax
push 0x10236ec6
mov dword [esp], esi
push 0x79eb4de0
pop esi
shr esi, 8
not esi
jmp 0x644e39
mov edi, dword [esp]
jmp 0x6453c5
not esi
jmp 0x645039
xor esi, 0x1c2df7ef
sub eax, esi
pop esi
mov edx, eax
mov eax, dword [esp]
jmp 0x645371
add ecx, edx
pop edx
add ecx, 0x7fc6d1ca
push dword [esp]
mov edx, dword [esp]
add esp, 4
jmp 0x644c30
pop ebx
push edx
push ecx
mov ecx, 0x6eaf5140
mov edx, ecx
mov ecx, dword [esp]
add esp, 4
push ecx
mov ecx, 0x7faf75c4
shl ecx, 4
jmp 0x645589
sub esp, 4
mov dword [esp], ebx
pop edx
mov ebx, dword [esp]
add esp, 4
sub esp, 4
mov dword [esp], ebx
mov ebx, 0x5e375ffd
push 0x25ef9ca2
mov dword [esp], ebx
xchg dword [esp], eax
not eax
xchg dword [esp], eax
pop ebx
inc ebx
shr ebx, 5
push ebp
mov dword [esp], 0
jmp 0x644dbb
mov dword [esp], edx
mov dword [esp], ecx
mov ecx, 0x1c9e7502
xor edx, ecx
jmp 0x644b80
pop ebx
push ecx
mov ecx, 0x7c51d869
sub ebx, ecx
pop ecx
add edx, 0x4faf9200
add edx, ebx
sub edx, 0x4faf9200
mov ebx, dword [esp]
jmp 0x644d35
add edi, 0x6e811284
add ecx, edi
jmp 0x6451a8
sub esp, 4
mov dword [esp], ebp
mov ebp, 0x7cabc061
xor ebp, 0x3324bb0c
push ebp
sub dword [esp], 0x6f3f976b
pop eax
add eax, 0x6f3f976b
jmp 0x64517e
mov edi, dword [esp]
jmp 0x64531f
pop ebx
jmp 0x644ed9
mov edx, eax
pop eax
push 0x66d84e88
mov dword [esp], esi
mov dword [esp], 0x716d6b85
shl dword [esp], 3
shl dword [esp], 7
and dword [esp], 0x3eff019c
add dword [esp], 0x3cbbaa18
shr dword [esp], 3
sub dword [esp], 0xafb8630d
shr dword [esp], 4
not dword [esp]
inc dword [esp]
xor dword [esp], 0xc16c85cc
mov ebx, dword [esp]
jmp 0x6451ba
pop ebp
push ebp
push ebx
mov ebx, 0x7bf77596
shl ebx, 7
xor ebx, 0x57eebb00
push edx
mov edx, 0x6be5c081
dec edx
and edx, 0x56f5f7a7
sub edx, 0x37ff00eb
dec edx
jmp 0x6454d3
pop edi
push edi
mov edi, 0x7d8b0d0c
xor edi, 0x7fff5c40
jmp 0x644da2
add esp, 4
not ebx
add ebx, 1
jmp 0x6451d8
xchg dword [esp], edx
jmp 0x644cba
pop ecx
jmp 0x64533a
shr ebx, 3
push edx
mov edx, 0x7e756600
shr edx, 4
not edx
not edx
push ecx
mov ecx, 0x894af1ec
sub edx, ecx
mov ecx, dword [esp]
add esp, 4
add ebx, 0x5f3f0ca2
sub ebx, edx
push ecx
mov ecx, 0x5f3f0ca2
sub ebx, ecx
pop ecx
pop edx
sub esp, 4
jmp 0x64524f
add eax, 4
add eax, 4
xchg dword [esp], eax
pop esp
push 0x3062a6d8
mov dword [esp], ebx
push 0x4dc7cfa0
mov dword [esp], esp
add dword [esp], 4
mov ebx, dword [esp]
add esp, 4
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
jmp 0x6454c6
mov dword [esp], esi
mov esi, 0xd15015ca
sub ebx, 0x77ff6d3c
sub ebx, 0x6d16db30
add ebx, esi
push edx
mov edx, 0x7d9734da
jmp 0x645488
shl edx, 3
inc edx
xor edx, 0x5ab94d7e
sub edx, 0x6f8f4dc0
add edx, 0xb6298e4c
sub edx, 0xf3ebf4ba
and eax, edx
pop edx
xor eax, 0x5ebff8d7
sub eax, 0xa79c8afb
jmp 0x6453fc
jmp 0x645638
push esp
pop eax
add eax, 4
add eax, 4
xor eax, dword [esp]
xor dword [esp], eax
jmp 0x6452f7
push dword [esp]
pop edi
add esp, 4
add ecx, edi
jmp 0x644c75
mov esi, dword [esp]
sub esp, 4
mov dword [esp], esi
mov esi, esp
jmp 0x64555f
xor esi, 0x72a61f62
add ecx, 0x72fc489f
sub ecx, 0x7feb756c
sub ecx, esi
push eax
mov eax, 0x7feb756c
jmp 0x645301
xor eax, dword [esp]
pop esp
push ecx
jmp 0x645597
add ecx, eax
pop eax
sub ecx, 0x72fc489f
pop esi
push edx
mov edx, esp
add edx, 4
sub edx, 4
jmp 0x644edf
add esp, 4
add edi, 4
add edi, 4
sub esp, 4
mov dword [esp], edi
push dword [esp + 4]
jmp 0x64551a
push 0x1a75f92a
mov dword [esp], ebp
push esi
jmp 0x645362
mov eax, 0x4ff74eb3
shl eax, 3
push 0x1a78b890
mov dword [esp], edx
mov edx, 0x77ff35c2
jmp 0x645270
mov esi, 0x7e755967
push 0x3de986ea
jmp 0x645399
add esp, 4
push edx
mov edx, 0x5d2d91d9
add ebp, edx
pop edx
add ebp, edx
jmp 0x6453b6
and edx, 0x7bdeaf75
sub edx, 0xfb4d25ce
push edx
jmp 0x6455a5
mov dword [esp], ebp
mov dword [esp], ecx
mov ecx, 0x777a67ab
push ecx
dec dword [esp]
pop ecx
sub ecx, 0x60a7f554
inc ecx
push ebx
jmp 0x644c55
sub ebp, 0x5d2d91d9
pop edx
xchg dword [esp], ebp
jmp 0x645473
push eax
jmp 0x644f3c
sub eax, 0x5bc511d
push edx
jmp 0x644bdd
mov ebp, 0x2ffdda20
add ebp, 0x1ff67f1b
or ebp, 0x3f77eb91
neg ebp
and ebp, 0x6ff72554
add ebp, 0x3df73d45
sub ecx, ebp
jmp 0x645462
xor esi, eax
pop eax
push ecx
mov ecx, esi
mov eax, ecx
pop ecx
mov esi, dword [esp]
add esp, 4
add eax, 1
push ebx
push edi
mov edi, 0x76f2cb1b
add edi, 0x7dff9748
add edi, 0x7f873d41
neg edi
sub edi, 0xd97577c
mov ebx, 0xfaeeec43
sub ebx, edi
jmp 0x644e55
pop esp
push ecx
mov dword [esp], esi
push 0x5faff9e6
pop esi
and esi, 0x3d58b261
dec esi
sub esi, 0xff0106ba
sub edi, esi
mov esi, dword [esp]
add esp, 4
jmp 0x645618
pop ebp
sub ecx, ebx
push ebp
mov ebp, 0x3df74189
add ecx, ebp
pop ebp
jmp 0x645063
pop esp
sti
jmp 0x644c60
add esp, 4
add esi, dword [esp]
jmp 0x6455b2
xor edx, 0x53ffe86a
add edx, 0x657f2282
and edx, 0x7cff7672
jmp 0x644dd2
sub esi, ebx
add esi, 0x5ff72b1c
pop ebx
push ebp
mov ebp, esp
add ebp, 4
push 0x4547ac10
mov dword [esp], edx
push 0x29b96231
mov dword [esp], eax
jmp 0x64562d
mov esp, dword [esp]
push ecx
mov dword [esp], edi
push esp
jmp 0x645124
push ebx
mov ebx, 0x757ed907
add ebx, 0x77ff2d13
xor ebx, 0x6afe6e4b
sub ebx, 0xdc485265
jmp 0x6454f0
sub edx, ebx
pop ebx
or ebx, edx
jmp 0x644ced
pop ecx
sub ebp, 0x7c88a385
add eax, ebp
pop ebp
add edx, eax
pop eax
add edx, 4
xchg dword [esp], edx
mov esp, dword [esp]
push ebx
mov dword [esp], edi
push esp
jmp 0x645551
pop edi
pop dword [esp]
mov esp, dword [esp]
sub esp, 4
mov dword [esp], edx
mov edx, esp
add edx, 4
sub edx, 4
jmp 0x6451ca
add ebx, 0x6dbefca7
sub ebx, 0xf3c8c59
sub ebx, 0x3d6b10cf
jmp 0x6455f8
mov edi, dword [esp]
add esp, 4
jmp 0x64556d
add esi, 4
add esi, 4
jmp 0x6455e1
add edi, 4
sub edi, 4
xchg dword [esp], edi
pop esp
jmp 0x644e9a
mov esi, 0x72f1169b
jmp 0x6455d0
dec ecx
sub ecx, 0x78e33a75
xor edx, ecx
jmp 0x644d89
push esi
mov esi, 0x7facb484
shr esi, 5
jmp 0x6455bd
pop ecx
pop edx
add esi, ecx
push dword [esp]
pop ecx
jmp 0x64547a
push ebx
mov ebx, 0x3cfafee1
jmp 0x6455e9
xor esi, 0x733f7c2a
add esi, 0xae06ec2e
mov ecx, esi
jmp 0x6452c8
push edx
mov edx, 0x72ed8980
sub edi, 0x7ddf5247
jmp 0x644f14
xchg dword [esp], esi
jmp 0x64543a
neg ebx
neg ebx
push esi
mov esi, 0xccfba15a
jmp 0x64553a
sub ebx, esi
add ebx, 0x3d6b10cf
add ebx, 0xf3c8c59
push eax
mov eax, 0x7ffb3232
xor eax, 0x1245ce95
sub ebx, eax
jmp 0x645621
iretd
sub edi, ecx
push ebx
push eax
jmp 0x644f43
pop eax
jmp 0x645627
pop esi
jmp 0x644d7e
push 0x72338a86
pop eax
xor esi, dword [edx + 0x58]
jmp 0x6453cb
jge 0x645630
fsubr qword [eax]
cmpsd dword [esi], dword es:[edi]
outsb dx, byte [esi]
cmp dl, ah
push ds
adc al, 0x11
mov dh, 0x1e
in al, dx
adc byte [edi], ch
movsd dword es:[edi], dword [esi]
imul dword [esi + eax]
dec ebx
jg 0x6455fc
jl 0x6456cd