Function at 0x4173b0
Capabilities:
Encode data using xor

Disassembly:
mov dword [0x468454], 0x28240062
mov eax, dword [0x466934]
dec dword [0x466934]
push esi
xor esi, esi
push edi
cmp eax, 0xfcbe3bc
jl 0x4173e2
movzx eax, word [0x45a536]
sub eax, 0x55ad79e5
mov word [0x45a536], ax
add dword [0x465c4c], 0xe050b7d2
mov edi, dword [esp + 0x14]
cmp dword [esp + 0xc], esi
jle 0x4175ea
push ebx
push ebp
lea esp, [esp]
movsx eax, word [0x45eaf2]
sar eax, 1
add eax, 0xba8e36dd
or dword [0x462374], eax
inc word [0x45e430]
mov ax, word [0x45e430]
cwde
xor eax, 0xfe0719c
or eax, 0xe00f0c23
mov dword [0x465bc4], eax
cmp dword [0x45fe90], 0x745ff3c1
jge 0x417487
inc word [0x45e8dc]
mov ax, word [0x45e8dc]
movsx ecx, word [0x45c6ec]
inc word [0x45c6ec]
cwde
add ecx, eax
cmp ecx, 0xf3ddb387
jg 0x417487
mov eax, dword [0x463ad8]
mov ecx, dword [0x46421c]
sar eax, 5
imul ecx, eax
mov eax, dword [0x45f994]
or ecx, 0x16725a9b
imul eax, ecx
mov dword [0x45f994], eax
mov eax, dword [0x45f238]
sub eax, dword [0x466070]
push 0
push dword [esp + 0x24]
mov dword [0x45f238], eax
mov eax, dword [esp + 0x20]
dec dword [0x466070]
push 0
push dword [eax]
call fcn.0042c4a0
mov ecx, dword [0x4657f0]
mov ebp, eax
add dword [esp + 0x18], 4
and ecx, 0x30f4e1e2
sub dword [0x4640fc], ecx
mov ebx, edx
mov ecx, dword [0x4680cc]
sar ecx, 4
and ecx, 0x4f3b7a7
cmp ecx, 0xe3a18db
jg 0x417502
mov eax, dword [0x462b54]
mov ecx, dword [0x46a114]
not eax
not ecx
xor ecx, eax
movzx eax, word [0x45c89c]
sub eax, ecx
mov word [0x45c89c], ax
mov eax, dword [0x4629d0]
dec dword [0x4629d0]
cmp eax, 0x4b89a69d
je 0x41751e
and dword [0x45ed84], 0x339cd77d
or dword [0x4686cc], 0xce31fecc
lea edx, [esi + ebp]
cmp edx, esi
sbb eax, eax
inc dword [0x460a20]
neg eax
add ebx, eax
mov eax, dword [0x460a20]
movsx ecx, word [0x459b20]
and ecx, 0xe3ef9ff
or ecx, eax
cmp ecx, 0xb99ab675
jl 0x41755f
and dword [0x464620], 0x699b34be
add edx, dword [edi]
inc dword [0x4636d0]
mov eax, dword [0x4636d0]
movsx ecx, word [0x45abe4]
not ecx
xor ecx, eax
movzx eax, word [0x45be20]
add eax, ecx
mov word [0x45be20], ax
cmp edx, dword [edi]
sbb eax, eax
neg eax
lea esi, [eax + ebx]
mov eax, dword [0x46b730]
not eax
sub eax, 0x149fccc1
mov dword [0x460478], eax
movzx eax, word [0x45d8ee]
movsx ecx, ax
mov eax, dword [0x468e44]
sub ecx, eax
mov eax, dword [esp + 0x14]
mov word [0x45d8ee], cx
dec eax
inc dword [0x468e44]
mov dword [edi], edx
add edi, 4
xor dword [0x46a194], 0xa6a74efd
xor dword [0x460090], 0x4defbeff
mov dword [esp + 0x14], eax
test eax, eax
jg 0x417400
pop ebp
pop ebx
movsx eax, word [0x458a80]
imul eax, eax, 0xdf299d0f
or eax, 0xa8ca91ab
cmp eax, 0xfa77ba4
jl 0x417616
movzx eax, word [0x45c288]
imul eax, eax, 0x1e285104
mov word [0x45c288], ax
movzx eax, word [0x45d176]
xor eax, 0x10aff745
mov word [0x45d176], ax
jmp 0x417630
add dword [0x463b84], 0x82098018
lea edi, [edi + 4]
add dword [edi - 4], esi
dec dword [0x45ede8]
mov eax, dword [0x45ede8]
add eax, 0xcbbe00d5
xor eax, 0x3e87bdde
and eax, dword [0x4669d8]
mov dword [0x4669d8], eax
cmp dword [edi - 4], esi
movzx eax, word [0x45a4c4]
sbb esi, esi
xor eax, 0x441480c4
neg esi
mov word [0x45a4c4], ax
mov dword [0x4685f8], 0x88b1a7af
jne 0x417630
xor dword [0x460be4], 0xaf71d194
pop edi
pop esi
ret