Function at 0x433402
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x46a1a3
call fcn.00467fd0
sub esp, 0xab8
movaps xmm0, xmmword [0x47e290]
movups xmmword [ebp - 0x10e], xmm0
push ebx
movaps xmm0, xmmword [0x47e2e0]
xor ebx, ebx
movups xmmword [ebp - 0xfe], xmm0
push esi
movaps xmm0, xmmword [0x47e300]
mov esi, edx
movups xmmword [ebp - 0xee], xmm0
mov edx, ebx
mov dword [ebp - 0x10], ecx
movaps xmm0, xmmword [0x47e3d0]
movups xmmword [ebp - 0xde], xmm0
mov word [ebp - 0xce], 0xfd
mov cl, byte [ebp - 0x10e]
not cl
xor byte [ebp + edx - 0x10d], cl
inc edx
cmp edx, 0x40
jb 0x43345e
movaps xmm0, xmmword [0x47e110]
mov edx, ebx
movups xmmword [ebp - 0x196], xmm0
mov byte [ebp - 0xcd], bl
movaps xmm0, xmmword [0x47de30]
movups xmmword [ebp - 0x186], xmm0
mov dword [ebp - 0x116], 0xff9f9397
movaps xmm0, xmmword [0x47e170]
movups xmmword [ebp - 0x176], xmm0
mov dword [ebp - 0x112], 0xf8fff8
movaps xmm0, xmmword [0x47e130]
movups xmmword [ebp - 0x166], xmm0
movaps xmm0, xmmword [0x47de40]
movups xmmword [ebp - 0x156], xmm0
movaps xmm0, xmmword [0x47dec0]
movups xmmword [ebp - 0x146], xmm0
movaps xmm0, xmmword [0x47dea0]
movups xmmword [ebp - 0x136], xmm0
movaps xmm0, xmmword [0x47dd00]
movups xmmword [ebp - 0x126], xmm0
mov cl, byte [ebp - 0x196]
not cl
xor byte [ebp + edx - 0x195], cl
inc edx
cmp edx, 0x86
jb 0x4334ff
movaps xmm0, xmmword [0x47deb0]
mov edx, ebx
mov byte [ebp - 0x10f], bl
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x30], 0xdc9d9295
mov dword [ebp - 0x2c], 0xd1c0dcd0
mov dword [ebp - 0x28], 0x8888d0
mov cl, byte [ebp - 0x40]
not cl
xor byte [ebp + edx - 0x3f], cl
inc edx
cmp edx, 0x1a
jb 0x43353f
push ebx
push ebx
push 3
push ebx
push ebx
push 0x80000000
push esi
mov byte [ebp - 0x25], bl
call dword [0x46b114]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x43392d
push edi
push ebx
push eax
call dword [0x46b140]
mov dword [ebp - 0x1c], eax
lea ecx, [eax + 0x800]
push ecx
push ebx
call dword [0x46b198]
push eax
call dword [0x46b0ac]
push dword [0x48a454]
mov edi, dword [0x46b0a4]
mov ebx, eax
mov dword [ebp - 0x18], ebx
call edi
mov esi, eax
lea ecx, [esi + 1]
push ecx
push dword [0x48a454]
push ebx
mov ebx, dword [0x46b0b0]
call ebx
mov eax, dword [ebp - 0x18]
add eax, esi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x195]
push eax
call edi
mov esi, eax
lea eax, [ebp - 0x195]
lea ecx, [esi + 1]
push ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call ebx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
push ecx
lea ecx, [ebp - 0x44]
add eax, esi
push ecx
push dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
push eax
push dword [ebp - 0x24]
call dword [0x46b180]
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x3f]
push eax
call edi
mov edi, dword [ebp - 0x14]
mov esi, eax
lea eax, [ebp - 0x3f]
lea ecx, [esi + 1]
push ecx
push eax
push edi
call ebx
xor ebx, ebx
add edi, esi
sub edi, dword [ebp - 0x18]
push ebx
push ebx
push ebx
push ebx
push ebx
mov dword [ebp - 0x14], edi
call dword [0x46b31c]
mov esi, dword [0x46b314]
mov edi, eax
push 4
lea eax, [ebp - 0x20]
mov dword [ebp - 0x48], edi
push eax
push 6
mov dword [ebp - 0x20], 0xf4240
push edi
call esi
push 4
lea eax, [ebp - 0x20]
push eax
push 5
push edi
call esi
lea eax, [ebp - 0xac4]
push eax
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0xcc]
push eax
push 0x47c778
push dword [ebp - 0x10]
call fcn.004333dd
lea eax, [ebp - 0xcc]
push 0x47c78c
push eax
call fcn.0044bac0
xor ecx, ecx
movzx ebx, bl
inc ecx
lea edx, [ebp - 0xac4]
add esp, 0x1c
test eax, eax
cmove ebx, ecx
mov ecx, 0x47c794
mov dword [ebp - 0x1c], ebx
call fcn.0043500b
mov dword [ebp - 0x10], eax
test edi, edi
je 0x433907
lea eax, [ebp - 0x2c0]
push 0xf
pop esi
push eax
test bl, bl
je 0x43370c
xor ebx, ebx
mov dword [ebp - 0x4c], esi
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x50], ebx
mov byte [ebp - 0x60], bl
call fcn.0040b36d
lea edx, [ebp - 0x60]
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x1b0]
call fcn.0043851c
cmp dword [eax + 0x14], 8
jb 0x4336ec
mov eax, dword [eax]
push ebx
push 0x1bb
push eax
push edi
call dword [0x46b30c]
lea ecx, [ebp - 0x1b0]
mov ebx, eax
call fcn.0040afdf
lea ecx, [ebp - 0x60]
jmp 0x433757
xor ebx, ebx
mov dword [ebp - 0x64], esi
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x68], ebx
mov byte [ebp - 0x78], bl
call fcn.0040b36d
lea edx, [ebp - 0x78]
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x1c8]
call fcn.0043851c
cmp dword [eax + 0x14], 8
jb 0x43373c
mov eax, dword [eax]
push ebx
push 0x50
push eax
push edi
call dword [0x46b30c]
lea ecx, [ebp - 0x1c8]
mov ebx, eax
call fcn.0040afdf
lea ecx, [ebp - 0x78]
or dword [ebp - 4], 0xffffffff
call fcn.0040b1fc
test ebx, ebx
je 0x433900
push dword [ebp - 0x10]
xor eax, eax
cmp byte [ebp - 0x1c], al
je 0x4337d5
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], esi
mov byte [ebp - 0x90], al
call fcn.0040b36d
lea edx, [ebp - 0x90]
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x1e0]
call fcn.0043851c
cmp dword [eax + 0x14], 8
jb 0x4337a9
mov eax, dword [eax]
push 0x800100
xor ecx, ecx
push ecx
push ecx
push ecx
push eax
push 0x47c798
push ebx
call dword [0x46b320]
lea ecx, [ebp - 0x1e0]
mov edi, eax
call fcn.0040afdf
lea ecx, [ebp - 0x90]
jmp 0x43383c
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], esi
mov byte [ebp - 0xa8], al
call fcn.0040b36d
lea edx, [ebp - 0xa8]
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x1f8]
call fcn.0043851c
cmp dword [eax + 0x14], 8
jb 0x433812
mov eax, dword [eax]
push 0x100
xor ecx, ecx
push ecx
push ecx
push ecx
push eax
push 0x47c798
push ebx
call dword [0x46b320]
lea ecx, [ebp - 0x1f8]
mov edi, eax
call fcn.0040afdf
lea ecx, [ebp - 0xa8]
or dword [ebp - 4], 0xffffffff
call fcn.0040b1fc
test edi, edi
je 0x4338f6
xor eax, eax
mov dword [ebp - 0xac], esi
mov dword [ebp - 0xb0], eax
lea ecx, [ebp - 0xc0]
mov byte [ebp - 0xc0], al
lea eax, [ebp - 0x10d]
push eax
call fcn.0040b36d
lea edx, [ebp - 0xc0]
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x3c]
call fcn.0043851c
cmp dword [eax + 0x14], 8
jb 0x433890
mov eax, dword [eax]
xor ecx, ecx
push ecx
mov ecx, dword [ebp - 0x14]
push ecx
push ecx
mov ecx, dword [ebp - 0x18]
push ecx
push 0xffffffffffffffff
push eax
push edi
call dword [0x46b308]
lea ecx, [ebp - 0x3c]
mov esi, eax
call fcn.0040afdf
lea ecx, [ebp - 0xc0]
call fcn.0040b1fc
test esi, esi
je 0x43393b
mov esi, dword [0x46b328]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x4338df
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x4338f6
xor ecx, ecx
mov byte [ebp + eax - 0x6c4], cl
mov dword [ebp - 0x10], ecx
lea eax, [ebp - 0x10]
push eax
push 0x400
lea eax, [ebp - 0x6c4]
push eax
push edi
call esi
test eax, eax
jne 0x4338cc
push edi
call dword [0x46b304]
mov edi, dword [ebp - 0x48]
push ebx
call dword [0x46b304]
push edi
call dword [0x46b304]
push dword [ebp - 0x18]
xor eax, eax
push eax
call dword [0x46b198]
push eax
call dword [0x46b208]
push dword [ebp - 0x24]
call dword [0x46b160]
xor eax, eax
pop edi
mov ecx, dword [ebp - 0xc]
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
call dword [0x46b0a8]
jmp 0x43392c