Function at 0x4215d0
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [0x492120]
lea ecx, [eax + 1]
mov dword [0x492120], ecx
mov dword [0x49c8c4], eax
mov eax, dword [0x4a322c]
test eax, eax
jne 0x421aa8
mov ax, word [0x482b6e]
add eax, 0x6b4d
mov word [0x482b6e], ax
mov eax, dword [0x49b824]
lea ecx, [eax + 1]
mov dword [0x49b824], ecx
add eax, 0x39c44aa8
cmp eax, 0x8b6d947b
jl 0x421642
mov ax, word [0x488fce]
inc eax
mov word [0x488fce], ax
cwde
imul eax, eax, 0xf43ce119
cmp eax, 0xd71ff660
jl 0x42165f
xor dword [0x4933c0], 0x88550020
jmp 0x42165f
mov ax, word [0x48a47a]
mov eax, dword [0x49cbb4]
mov ax, word [0x48ba2a]
inc eax
mov word [0x48ba2a], ax
mov eax, dword [0x49ea98]
push ebp
push ebx
push edi
push esi
sub esp, 0x2c8
or dword [0x491f18], 0xf08947a
mov eax, dword [0x48edc4]
dec eax
mov dword [0x48edc4], eax
mov cx, word [0x484ecc]
lea edx, [ecx + 1]
mov word [0x484ecc], dx
movsx ecx, cx
imul ecx, eax
mov eax, dword [0x48f5d0]
sar eax, 1
xor eax, ecx
and dword [0x49e780], eax
or dword [0x48e4f4], 0xff3f77f3
mov eax, dword [0x4910fc]
or eax, 0xceb2
xor eax, 0x204d
mov cx, word [0x48bb72]
or ecx, eax
mov word [0x48bb72], cx
lea ebx, [esp + 8]
mov dword [esp], ebx
mov dword [esp + 4], 0x4a2a90
call fcn.0044f1a0
mov eax, dword [0x495e08]
sar eax, 2
cmp eax, 0xfda23e8c
jg 0x421709
mov eax, dword [0x4a0bb8]
mov ecx, 0x20266ada
sub ecx, eax
mov eax, dword [0x494dc4]
imul eax, ecx
mov dword [0x494dc4], eax
mov dword [0x49c814], 0xb9b52de7
mov dword [esp], ebx
call fcn.0044c050
mov esi, eax
mov dword [0x493e80], 0x30bf65b1
mov dword [esp], 0x450
call dword [0x481c80]
sub esp, 4
mov ax, word [0x48639c]
xor eax, 0x6222
mov word [0x48639c], ax
mov byte [esp + esi + 8], 0
mov eax, dword [0x49cb80]
mov ecx, dword [0x499f8c]
sub ecx, eax
mov dword [0x499f8c], ecx
mov eax, dword [0x4a3248]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.0044f1b0
inc dword [0x4a1718]
mov dword [esp + 4], 2
mov dword [esp], 0x7272
call fcn.00445d70
mov edi, eax
mov eax, dword [0x4a07d4]
lea ecx, [eax - 1]
mov dword [0x4a07d4], ecx
xor eax, 0x959b1917
mov ecx, dword [0x48e950]
cmp eax, ecx
jge 0x4217cf
mov eax, dword [0x492774]
lea ecx, [eax + 1]
mov dword [0x492774], ecx
add eax, 0x8f886dd3
cmp eax, 0x141a81ab
jl 0x421811
mov word [0x48ab2a], 0xff05
jmp 0x421822
mov eax, dword [0x492984]
lea ecx, [eax - 1]
mov dword [0x492984], ecx
mov ecx, dword [0x48d998]
add ecx, 0x87d9bd4a
or ecx, eax
cmp ecx, 0xffdb6f70
jl 0x421822
mov eax, dword [0x48f7fc]
shl eax, 0xa
or eax, 0x8dddd2b2
mov ecx, dword [0x494e58]
imul ecx, eax
mov dword [0x494e58], ecx
jmp 0x421822
mov ax, word [0x48504a]
and eax, 0xcae9
mov word [0x48504a], ax
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.0044f1b0
mov eax, dword [0x4a0704]
and eax, 0xbca21970
mov ecx, dword [0x498560]
imul ecx, eax
mov dword [0x498560], ecx
and dword [0x49166c], 0x5800000b
mov ax, word [0x484c60]
add eax, 0xffffa81c
mov word [0x484c60], ax
mov eax, dword [0x4956e0]
imul eax, eax, 0xde7d0feb
mov dword [0x4956e0], eax
mov byte [edi], 0
mov byte [edi + 1], 0
mov byte [edi + 2], 0
mov byte [edi + 3], 0
mov byte [edi + 4], 0
mov byte [edi + 5], 0
add dword [0x49e2ac], 0xbac53e42
mov dword [esp], edi
call fcn.0044bf40
mov ax, word [0x48345c]
inc eax
mov word [0x48345c], ax
cwde
mov ecx, dword [0x48cd84]
xor ecx, eax
cmp ecx, 0xa62bbc1e
jne 0x4218c3
mov dword [0x4a0ff4], 0xc3133082
mov eax, dword [0x49db60]
mov ecx, 0xead4ebd2
sub ecx, eax
add dword [0x498abc], ecx
lea ebp, [esp + 0x188]
mov dword [esp + 4], ebp
mov dword [esp], ebx
call dword [0x481be0]
sub esp, 8
mov edi, eax
mov ax, word [0x4867c0]
inc eax
mov word [0x4867c0], ax
or dword [0x4a1d90], 0x1ec27a8c
cmp edi, 0xffffffff
je 0x421a20
mov eax, dword [0x49570c]
imul eax, eax, 0x8401488a
mov dword [0x49570c], eax
nop
nop
mov ax, word [0x48a43c]
and eax, 0x1199
mov word [0x48a43c], ax
mov byte [esp + esi + 8], 0
mov ax, word [0x48400a]
and eax, 0x53cc
mov word [0x48400a], ax
lea eax, [esp + 0x1b4]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.0044f1b0
xor dword [0x497064], 0xeee040cc
mov dword [esp], ebx
call dword [0x481bd0]
sub esp, 4
mov ax, word [0x4883b4]
or eax, 0xffff8988
xor eax, 0x2413
mov cx, word [0x487252]
sub ecx, eax
mov word [0x487252], cx
mov dword [esp + 4], ebp
mov dword [esp], edi
call dword [0x481bdc]
sub esp, 8
test eax, eax
jne 0x421920
mov eax, dword [0x4a011c]
lea ecx, [eax + 1]
mov dword [0x4a011c], ecx
add dword [0x49c380], eax
mov dword [esp], edi
call dword [0x481bd8]
sub esp, 4
mov eax, dword [0x4a0d60]
lea ecx, [eax + 1]
mov dword [0x4a0d60], ecx
add eax, 0x17c4e09b
mov ecx, dword [0x49dd30]
not ecx
and ecx, 0xcb7f0e5e
cmp eax, ecx
jge 0x4219ff
mov ax, word [0x4879da]
cwde
sar eax, 5
and dword [0x499a28], eax
jmp 0x421a20
mov eax, dword [0x497ef4]
lea ecx, [eax - 1]
mov dword [0x497ef4], ecx
and eax, 0x333f6656
mov ecx, dword [0x4985a0]
sub ecx, eax
mov dword [0x4985a0], ecx
mov ax, word [0x485710]
or eax, 0x4beb
mov word [0x485710], ax
mov ax, word [0x484c60]
add eax, 0xffffa81c
mov word [0x484c60], ax
mov eax, dword [0x4956e0]
imul eax, eax, 0xde7d0feb
mov dword [0x4956e0], eax
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esp + eax + 8], 0
inc eax
cmp eax, 0x180
jne 0x421a60
mov eax, dword [0x490684]
inc eax
mov dword [0x490684], eax
or eax, 0x1e76fdf8
cmp eax, 0xd7ffaffd
lea esp, [esp + 0x2c8]
pop esi
pop edi
pop ebx
pop ebp
jl 0x421aa8
mov eax, dword [0x49c024]
mov eax, dword [0x49894c]
lea ecx, [eax + 1]
mov dword [0x49894c], ecx
and dword [0x48dbd0], eax
ret