Function at 0x423d70
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [0x461f90]
dec dword [0x461f90]
cmp eax, 0x81181a00
jg 0x423d8c
and dword [0x464098], 0x8b53196e
add dword [0x4651c0], 0x74471730
add dword [0x4646a4], 0xa7cff71e
dec word [0x45883c]
mov ax, word [0x45883c]
cwde
xor eax, 0x46a65924
cmp eax, 0x92544668
jg 0x423dd0
mov ecx, dword [0x4655c0]
mov eax, dword [0x4660e8]
shl ecx, 7
imul eax, ecx
mov dword [0x4660e8], eax
push ebx
push ebp
mov ebp, dword [esp + 0x10]
push esi
push edi
lea eax, [ebp + 4]
push eax
call fcn.0042ba8d
or dword [0x464ec4], 0xa8ec0137
mov esi, eax
mov eax, dword [0x46379c]
add esp, 4
mov edi, dword [esp + 0x14]
sub eax, 0x62cba289
xor eax, 0xf291dc56
mov dword [esp + 0x18], esi
or dword [0x4638f0], eax
lea ecx, [ecx]
inc dword [0x460fe8]
mov eax, dword [0x460fe8]
add eax, 0x1d3bb586
imul eax, dword [0x46a2fc]
mov dword [0x46a2fc], eax
movzx eax, byte [edi + section..data]
mov byte [esi], al
and dword [0x46497c], 0x344f8eff
mov eax, dword [0x457c54]
movzx eax, byte [eax + edi]
xor byte [esi], al
mov eax, dword [0x46b0cc]
and eax, 0x98dd74bb
xor eax, 0x8f995600
cmp eax, 0xaa4b8f16
jl 0x423e7c
cmp dword [0x468114], 0x1d325ed1
jl 0x423e7c
mov eax, dword [0x465468]
add eax, 0x3305f8e9
or dword [0x460c90], eax
inc dword [0x46a5f4]
mov eax, dword [0x46a5f4]
mov ecx, dword [0x462778]
xor ecx, eax
mov dword [0x4689e0], ecx
imul eax, dword [0x460e20], 0x99d14a52
mov dword [0x460e20], eax
movzx eax, byte [edi + str.3H9Tq]
mov byte [esi + 1], al
add dword [0x464898], 0xac306d96
mov eax, dword [0x457c54]
movzx eax, byte [eax + edi + 1]
add edi, 2
xor byte [esi + 1], al
inc word [0x45a93a]
mov ax, word [0x45a93a]
cwde
and eax, 0xe2d4b4dc
sub dword [0x461378], eax
mov eax, dword [0x4678e4]
and eax, dword [0x463b48]
and eax, 0x8aa7b4fd
mov dword [0x463b48], eax
mov eax, dword [0x468c5c]
not eax
or eax, 0x9164db61
cmp eax, 0x9b52c019
jge 0x423f39
mov eax, dword [0x4611e4]
mov ecx, dword [0x469fac]
sar eax, 4
xor ecx, eax
mov eax, dword [0x466374]
inc dword [0x466374]
sub eax, 0x13e6d041
and eax, 0xf67b97bb
cmp eax, ecx
jl 0x423f53
mov eax, dword [0x463c3c]
jmp 0x423f53
movsx eax, word [0x45db3a]
imul eax, eax, 0x2d4ec5d0
add dword [0x462fc8], eax
inc word [0x45db3a]
mov eax, dword [0x46380c]
movzx ebx, word [esi]
not eax
movzx ecx, word [0x459082]
imul eax, eax, 0x55fcd18a
sub ecx, eax
lea eax, [ebx + 3]
push eax
lea eax, [edi + section..data]
sub ecx, 0x4bc983d2
push eax
mov word [0x459082], cx
push esi
call fcn.0042c510
and dword [0x46a644], 0xb061fe49
lea edx, [esi + 3]
movzx eax, word [0x45943e]
add edx, ebx
sub eax, 0x353707dd
add esp, 0xc
mov word [0x45943e], ax
mov eax, dword [0x4618e8]
shl eax, 9
or eax, 0x8ff498fb
and dword [0x4615fc], eax
add edi, dword [0x457c54]
add dword [0x465b68], 0xea4ae98c
cmp esi, edx
je 0x42401b
sub edi, esi
jmp 0x423fe0
movzx eax, word [0x45d17a]
mov ecx, dword [0x46061c]
cwde
or ecx, eax
mov word [0x45d17a], cx
mov al, byte [edi + esi]
xor byte [esi], al
inc esi
inc word [0x459806]
movzx eax, word [0x459806]
cwde
xor eax, dword [0x4657a0]
mov dword [0x4657a0], eax
cmp esi, edx
jne 0x423fe0
mov dword [0x464788], 0x7bb7dffb
cmp ebp, ebx
je 0x4240fe
mov eax, dword [0x4615a0]
mov ecx, dword [0x467670]
add eax, 0x1a1ecac1
xor ecx, eax
cmp ecx, 0xbfe3ba9
jne 0x424053
and dword [0x46229c], 0x7f7e32fa
jmp 0x424077
inc dword [0x465da0]
mov ecx, 0x43b43f9c
mov eax, dword [0x465da0]
sub ecx, eax
and ecx, dword [0x464640]
and ecx, 0xa449963e
mov dword [0x464640], ecx
mov byte [edx], 0
mov eax, dword [0x4662b8]
shl eax, 5
cmp eax, 0x28bd650e
je 0x424093
mov dword [0x464df4], 0xbafcf12d
mov eax, dword [0x461508]
lea esi, [edx - 3]
mov ecx, 0x768e0a
sub ebp, ebx
sub ecx, eax
or ecx, 0xc57376d7
sub dword [0x46143c], ecx
imul eax, dword [0x464ad8], 0xae261322
mov edi, dword [edx - 3]
and eax, 0x814ec293
add dword [0x463784], eax
imul eax, dword [0x46018c], 0x56dadf6b
movzx ecx, word [0x45cda8]
add eax, 0x93b97684
xor ecx, eax
mov word [0x45cda8], cx
movzx eax, word [0x45e7a4]
and eax, 0x5fdefbdf
mov word [0x45e7a4], ax
jmp 0x423e10
movzx ecx, word [0x459e60]
mov eax, dword [esp + 0x18]
sub ecx, 0x11f563bf
pop edi
pop esi
pop ebp
mov word [0x459e60], cx
pop ebx
ret