Function at 0x403454
Capabilities:
Encode data using xor

Disassembly:
jne 0x4034ea
push 0x23ba0af6
mov eax, 0x7bce26ff
pop ecx
xor eax, ecx
push 0x209bb129
mov ebx, 0x2613e10f
pop ecx
xor ebx, ecx
xor eax, ebx
mov ecx, eax
add esp, 0xfffffffc
mov dword [esp], ecx
push 0x3ab5f761
mov esi, 0x602d0ada
pop eax
xor esi, eax
mov eax, 0x67cae354
xor esi, eax
xor esi, 0x6a519d3c
cmp al, 0x9d
push ecx
push 0x5f
xor esi, edi
mov ecx, 0
mov edx, 0
xor ecx, edx
xor ecx, esi
add esp, 0xfffffffc
mov dword [esp], ecx
pop eax
mov edi, 0x8001682
mov ebx, 0x704b0914
xor edi, ebx
mov ecx, 0x2de324ef
mov edx, 0xaa57c486
xor edx, ecx
xor edx, edi
add eax, edx
and eax, 0x7fffffff
add esp, 0xfffffffc
mov edx, esp
push edx
pop esi
mov dword [esi], eax
test eax, eax
jne 0x4034af
pop edi
pop edx
jmp 0x4037d2
mov edx, 0x7214550b
xor edx, 0xf74357b
mov esi, 0x1750ddf2
xor edx, esi
xor edx, 0x6a706cea
xor edi, edi
add edi, edx
sub edi, 9
add edi, 0xffffffff
mov eax, dword [edi + 0xa]
mov edi, 0x16e99ecd
xor edi, 0x3c630d8
push edi
mov edx, 0x5082204
mov ebx, 0x10278c11
xor edx, ebx
pop ecx
xor edx, ecx
mov ebx, edx
add esp, 0xfffffffc
mov dword [esp], ebx
mov esi, esp
mov edx, esi
add esp, 0xfffffffc
mov ecx, esp
mov dword [ecx], edx
mov edi, 0x32db8cfb
mov esi, 0x2ba6d43d
xor esi, edi
mov ebx, esi
xor ebx, 0xffffffff
and ebx, 0x197d5886
and esi, 0xe682a779
or esi, ebx
mov edi, esi
add esp, 0xfffffffc
mov dword [esp], edi
mov ebx, 0x3864ad67
xor ebx, 0x345b7550
push ebx
mov edi, 0x4ada0b98
mov edx, 0x46e547af
xor edx, edi
pop esi
xor edx, esi
mov edi, edx
push edi
mov edx, 0x78142cef
mov ecx, 0x78542cef
xor ecx, edx
mov ebx, 0x49e4b97e
xor ebx, 0x49e4a97e
xor ecx, ebx
mov edx, ecx
push edx
call eax
mov ecx, 0x401258
add esp, 0xfffffffc
mov ebx, esp
mov edx, ebx
mov dword [edx], ecx
xor edi, edi
add edi, ecx
mov edx, edi
mov ecx, 0
xor ecx, edx
mov edx, 0x20183c1
mov ebx, 0x6418200c
xor edx, ebx
mov esi, edx
xor esi, 0xffffffff
and esi, 0x6619a03a
and edx, 0x99e65fc5
or edx, esi
add ecx, edx
add ecx, 0xffffffff
add edi, edx
add esp, 0xfffffffc
push esp
pop ebx
mov dword [ebx], edx
add esp, 0xfffffffc
mov esi, esp
mov eax, esi
mov dword [eax], edi
xor edx, edx
mov dl, byte [ecx]
add edi, edx
mov dl, byte [edi]
pop edi
mov byte [ecx], dl
dec ecx
pop edx
add edx, 0xffffffff
add esp, 0xfffffffc
mov ebx, esp
mov dword [ebx], edx
pop esi
and esi, esi
jne 0x4038cf
pop edi
mov edx, 0x5f1c36d0
mov ecx, 0x3c10efb9
xor ecx, edx
mov edx, 0x634c08d1
xor ecx, edx
push ecx
pop edx
add edx, 0xffffffa8
dec edx
mov ecx, dword [edx + 0x59]
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], ecx
mov eax, 0x4c706414
xor eax, 0x386c78f5
mov ebx, 0x1c47ccae
xor eax, ebx
xor eax, 0x685bd04f
mov esi, eax
add esp, 0xfffffffc
mov dword [esp], esi
push 0x12a8ce42
mov ebx, 0x27e0f9ee
pop esi
xor ebx, esi
push ebx
mov ebx, 0x2caf73c2
mov ecx, 0x19a795f2
xor ecx, ebx
pop eax
xor ecx, eax
push ecx
pop esi
add esi, 0xffffffff
mov ecx, dword [esi + 1]
add esp, 0xfffffffc
mov ebx, esp
mov eax, ebx
mov dword [eax], ecx
mov ecx, 0x383b999
xor ecx, 0x782cb3bf
push ecx
mov edx, 0x10b09802
mov eax, 0x6b1f91d3
xor eax, edx
pop ebx
xor eax, ebx
add eax, edi
add esp, 0xfffffffc
mov ebx, esp
mov ecx, ebx
mov dword [ecx], eax
push 0x6e0ab867
mov edx, 0x6e0aa871
pop ecx
xor edx, ecx