Function at 0x673be4
Capabilities:
Encode data using xor

Disassembly:
push dword [esp]
mov edx, dword [esp]
push eax
mov eax, esp
add eax, 4
add eax, 4
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
pop esp
push esi
mov dword [esp], ecx
push esp
push dword [esp]
pop ecx
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
push eax
mov eax, 4
add ecx, eax
pop eax
push ebx
mov dword [esp], edx
sub esp, 4
mov dword [esp], eax
mov eax, 4
push eax
pop edx
pop eax
add ecx, 0x1c77beff
add ecx, 0x7ebbbb7f
add ecx, edx
sub ecx, 0x7ebbbb7f
sub ecx, 0x1c77beff
pop edx
xchg dword [esp], ecx
mov esp, dword [esp]
push eax
push edx
mov edx, 0x5e2f3b99
sub edx, 0x7af66221
push ecx
mov ecx, 0x6fb358a2
or edx, ecx
pop ecx
push ebx
mov ebx, 0xbbe5997b
xor edx, ebx
pop ebx
mov eax, edx
mov edx, dword [esp]
push ebx
mov dword [esp], esi
push esp
pop esi
push ebp
mov ebp, 4
add esi, ebp
pop ebp
add esi, 4
xchg dword [esp], esi
pop esp
shr eax, 3
not eax
sub eax, 1
push eax
not dword [esp]
mov eax, dword [esp]
add esp, 4
push eax
mov dword [esp], ecx
mov ecx, 0x3493acef
add eax, ecx
mov ecx, dword [esp]
add esp, 4
sub edx, 0x7ecfdbf3
add edx, eax
add edx, 0x7ecfdbf3
pop eax
push edi
mov edi, 0x6e530b71
add edx, edi
pop edi
add edx, dword [esp]
sub edx, 0x6e530b71
push eax
mov eax, 0x7af6534a
shr eax, 5
sub eax, 0xc4b83d9a
sub edx, eax
pop eax
push ecx
push 0x78ecbf76
mov dword [esp], esp
push esi
mov esi, 4
add dword [esp + 4], esi
pop esi
pop ecx
sub esp, 4
mov dword [esp], ebx
push esi
mov dword [esp], eax
mov eax, 0x7bb5a34e
mov ebx, eax
pop eax
xchg ebx, eax
not eax
xchg ebx, eax
push eax
mov dword [esp], 0
sub dword [esp], ebx
pop ebx
neg ebx
inc ebx
xor ebx, 0x7e7f9e77
add ebx, 0x5ca3d3f
sub ecx, 0x3f6fd8d2
sub ecx, 0x3fdef199
sub ecx, 0x7fbd7387
add ecx, 0x6e6ecb5a
add ecx, ebx
sub ecx, 0x6e6ecb5a
add ecx, 0x7fbd7387
add ecx, 0x3fdef199
add ecx, 0x3f6fd8d2
push dword [esp]
pop ebx
add esp, 4
add ecx, 4
push 0x218a2e1c
mov dword [esp], ecx
push dword [esp + 4]
pop ecx
pop dword [esp]
mov esp, dword [esp]
xor eax, eax
push dword [edx + eax]
push 0x23c6c3a4
mov dword [esp], ebp
mov dword [esp], eax
mov eax, 0x7f7f16fe
xor dword [esp + 4], eax
mov eax, dword [esp]
add esp, 4
push dword [esp]
push dword [esp]
pop ecx
push ecx
mov dword [esp], esi
mov esi, esp
add esi, 4
add esi, 4
xchg dword [esp], esi
pop esp
push ebx
mov dword [esp], edx
push esp
mov edx, dword [esp]
add esp, 4
push ebp
mov ebp, 0x3e73bec8
add ebp, 0xc18c413c
add edx, ebp
pop ebp
add edx, 4
push edx
push dword [esp + 4]
mov edx, dword [esp]
add esp, 4
pop dword [esp]
pop esp
push edx
mov dword [esp], eax
mov eax, 0x17bd9c54
or eax, 0x7bf12404
shr eax, 8
dec eax
and eax, 0x7e9f1ded
add eax, 0x7f5ff955
xor ecx, eax
pop eax
push esi
push eax
push ebx
push ebp
mov ebp, esp
add ebp, 4
sub ebp, 4
xchg dword [esp], ebp
pop esp
mov dword [esp], ecx
mov ecx, 0x2f6fff03
mov ebx, ecx
pop ecx
mov eax, 0x43422a83
sub eax, 0x75f937a5
sub eax, ebx
add eax, 0x75f937a5
pop ebx
and eax, 0x5f5f0301
push ebp
mov ebp, 0x5fff0048
add ebp, 0xddf0cf23
add eax, 0x1ebd4503
sub eax, ebp
sub eax, 0x1ebd4503
pop ebp
shr eax, 5
push ebx
push 0x3dffeccb
mov ebx, dword [esp]
add esp, 4
push esi
mov esi, 0
add esi, 0x67fade31
sub esi, ebx
sub esi, 0x67fade31
xchg ebx, esi
pop esi
dec ebx
shl ebx, 1
sub ebx, 0xb5e4538b
sub eax, ebx
push dword [esp]
pop ebx
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
mov esi, eax
pop eax
xor ecx, esi
push dword [esp]
pop esi
add esp, 4
push esi
mov esi, esp
add esi, 4
sub esi, 4
xchg dword [esp], esi
pop esp
mov dword [esp], ebp
push ecx
mov ecx, 0x530faf31
mov dword [esp + 4], ecx
pop ecx
mov dword [esp], eax
mov dword [esp], ebx
push ebp
mov ebp, 0x6b11d642
push edi
mov edi, ebp
push ecx
mov ecx, edi
mov ebx, ecx
pop ecx
pop edi
mov ebp, dword [esp]
push esi
mov esi, esp
add esi, 4
add esi, 4
xchg dword [esp], esi
pop esp
shl ebx, 1
push ebp
mov ebp, 1
push edi
mov edi, 0x792e3e6c
sub ebx, edi
pop edi
sub ebx, ebp
add ebx, 0x792e3e6c
pop ebp
push edi
mov edi, 0x72853b7d
add ebx, edi
pop edi
add ecx, ebx
push dword [esp]
pop ebx
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
sub esp, 4
mov dword [esp], edi
mov edi, esp
push eax
mov eax, 0x3ffb4fe9
shl eax, 5
xchg edi, eax
push edi
not dword [esp]
pop edi
xchg edi, eax
shl eax, 8
sub eax, 0x7bf8a71d
add eax, 0xe5f5c821
add edi, eax
pop eax
push 0x2730acfe
mov dword [esp], esi
mov dword [esp], ebx
push eax
push 0x1b5aab49
mov eax, dword [esp]
add esp, 4
shr eax, 8
sub eax, 0x1b5aa7
mov ebx, eax
mov eax, dword [esp]
add esp, 4
sub edi, ebx
pop ebx
push eax
mov dword [esp], 0x1dbbabe6
xor dword [esp], 0x590c1082
mov dword [esp], edi
push dword [esp + 4]
pop edi
pop dword [esp]
pop esp
mov dword [esp], eax
push esi
mov esi, 0x35ce03c8
shl esi, 4
or esi, 0x7b6a0f54
not esi
push ebx
mov ebx, 0xff26b988
xor esi, ebx
pop ebx
mov eax, esi
pop esi
xor ecx, eax
pop eax
push edx
mov edx, esp
add edx, 4
sub edx, 4
xchg dword [esp], edx
pop esp
mov dword [esp], ebx
push ecx
mov ecx, 0x66ffbbc0
mov dword [esp + 4], ecx
pop ecx
and dword [esp], 0x1725a0c6
dec dword [esp]
xchg dword [esp], ebx
not ebx
xchg dword [esp], ebx
xchg dword [esp], edi
not edi
xchg dword [esp], edi
shl dword [esp], 2
push ebp
mov ebp, 0x73f17bca
xor dword [esp + 4], ebp
pop ebp
neg dword [esp]
push 0x57bd5cc8
mov dword [esp], eax
mov eax, 0x7d7feaef
add dword [esp + 4], eax
mov eax, dword [esp]
push esi
push esp
pop esi
add esi, 4
add esi, 4
push esi
push dword [esp + 4]
pop esi
pop dword [esp]
mov esp, dword [esp]
push 0x46062bf
mov dword [esp], ecx
mov ecx, 0x61ff4763
add dword [esp + 4], ecx
pop ecx
mov dword [esp], ecx
pop dword [edx + eax]
push esi
mov dword [esp], edi
mov dword [esp], eax
mov dword [esp], ebp
mov dword [esp], ebx
mov ebx, 0x553d13c5
add eax, 0x6c7e3309
sub eax, ebx
sub eax, 0x6c7e3309
mov ebx, dword [esp]
sub esp, 4
mov dword [esp], eax
mov eax, esp
push 0x62cfb771
mov dword [esp], edx
push edx
mov dword [esp], ecx
mov ecx, 0x5ed38baf
mov edx, ecx
pop ecx
sub edx, 0x5ed38bab
add eax, edx
pop edx
push 0x663b052b
mov dword [esp], ebx
mov ebx, 4
sub eax, 0x4ff12ead
sub eax, 0x29ffc7a0
add eax, ebx
add eax, 0x29ffc7a0
add eax, 0x4ff12ead
mov ebx, dword [esp]
add esp, 4
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
mov esp, dword [esp]
push ecx
mov dword [esp], esi
push esi
mov dword [esp], edi
push 0x64ffa0c7
mov dword [esp], ecx
mov dword [esp], 0x7aff4c44
mov edi, dword [esp]
add esp, 4
push ecx
mov dword [esp], ebp
mov ebp, 0x25c23883
sub edi, ebp
pop ebp
mov esi, edi
pop edi
add eax, 0x6efce309
add eax, esi
sub eax, 0x6efce309
push dword [esp]
mov esi, dword [esp]
push edi
mov edi, esp
add edi, 4
push ecx
mov ecx, 0x4f9fcc15
or ecx, 0x7e899b4c
xor ecx, 0x7f9fdf59
add edi, ecx
pop ecx
push edi
push dword [esp + 4]
pop edi
pop dword [esp]
mov esp, dword [esp]
sub esp, 4
mov dword [esp], ecx
mov ecx, esp
add ecx, 4
add ecx, 4
push ecx
push dword [esp + 4]
pop ecx
pop dword [esp]
pop esp
cmp eax, 0xffff8f10
jne 0x673b56
sti
mov edx, 0x82c64b3
push 0x144981a0
mov dword [esp], edi
mov edi, esp
add edi, 4
sub edi, 4
xchg dword [esp], edi
pop esp
mov dword [esp], eax
mov eax, 0x133a140c
push eax
sub dword [esp], 0x5dfbb16a
push dword [esp]
pop edx
push esi
push esp
pop esi
push ecx
push eax
mov eax, 0x7b6f2fc7
push esi
mov esi, 0x7fdbaefe
and esi, 0x3a15a3c5
dec esi
xor esi, 0x26dff200
shl esi, 7
or esi, 0x137db03b
sub esi, 0xfc0ec1f0
mov ecx, esi
pop esi
sub ecx, eax
pop eax
sub esi, 0x3ffd7541
add esi, ecx
add esi, 0x3ffd7541
pop ecx
add esi, 4
push 0x52f97cc4
mov dword [esp], esi
push dword [esp + 4]
pop esi
pop dword [esp]
pop esp
add edx, 0x5dfbb16a
mov eax, dword [esp]
push ecx
push esp
mov ecx, dword [esp]
add esp, 4
add ecx, 4
add ecx, 4
push ecx
push dword [esp + 4]
pop ecx
pop dword [esp]
pop esp
push eax
mov dword [esp], esi
push edx
mov dword [esp], ecx
mov ecx, 0x1fffeebd
mov esi, ecx
push dword [esp]
pop ecx
add esp, 4
dec esi
push ecx
mov dword [esp], esi
xchg dword [esp], esi
xchg esi, ebp
not ebp
xchg esi, ebp
xchg dword [esp], esi
mov esi, dword [esp]
add esp, 4
dec esi
sub esp, 4
mov dword [esp], ebx
push ecx
mov ecx, 0x37d6c3e0
shl ecx, 3
inc ecx
xor ecx, 0x7bcee1c0
sub ecx, 0x7be31de8
shr ecx, 8
push eax
mov eax, 0x2efefbde
not eax
dec eax
or eax, 0x6e7670be
not eax
sub eax, 0x7f17a88a
xor eax, 0x29e5df8f
xor ecx, eax
mov eax, dword [esp]
add esp, 4
mov ebx, ecx
pop ecx
xor esi, ebx
push dword [esp]
pop ebx
add esp, 4
mov eax, esi
mov esi, dword [esp]
add esp, 4
jmp 0x674089
jg 0x674093
invalid
imul dword [edi - 0x50ffc142]
add eax, 0x9eabf08b
sahf
xor edi, dword [eax]
js 0x67405c
or edi, dword [eax]
ret