Function at 0x434e80
Capabilities:
Encode data using xor

Disassembly:
push esi
sub esp, 0x14
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [0x48f12c]
or eax, 0x9d29f971
mov dword [0x48f12c], eax
mov eax, dword [0x48b5d0]
add eax, 0xb962ce78
mov dword [0x48b5d0], eax
mov cx, word [0x49a49c]
mov ax, cx
inc eax
mov cx, ax
mov word [0x49a49c], cx
movsx eax, cx
xor eax, 0xc03014c3
cmp eax, 0xa000021
je 0x434ee1
mov eax, dword [0x491a98]
add eax, 0x36db7ffa
mov dword [0x491a98], eax
mov eax, 0xf40604
mov ecx, dword [esp + 0x10]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 4], eax
call fcn.00452df0
mov dword [esp + 8], eax
mov si, word [0x4994b6]
movsx eax, si
imul eax, eax, 0x936ca5d3
xor eax, 0x3aec4834
mov ecx, dword [esp + 4]
cmp ecx, eax
jne 0x434f2f
mov eax, dword [0x48fb9c]
mov ecx, dword [0x493d44]
sub ecx, eax
mov dword [0x493d44], ecx
mov eax, 0xbfffba7f
mov ecx, dword [esp + 8]
dec ecx
mov dword [esp + 8], ecx
mov ecx, dword [0x48e048]
or ecx, 0xe8f20a57
cmp eax, ecx
jge 0x434f60
mov eax, dword [0x48e3bc]
xor eax, 0x5d785950
mov dword [0x48e3bc], eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
movsx eax, byte [ecx + eax]
cmp eax, 0x22
jne 0x4350e5
mov eax, dword [0x4907e4]
or eax, 0x8a769189
cmp eax, 0xde17603f
jne 0x434fa7
mov ax, word [0x4970be]
mov cx, ax
add ecx, 0x345c2707
mov ax, cx
mov word [0x4970be], ax
jmp 0x434fbe
mov eax, dword [0x48d218]
mov ecx, dword [0x48ca28]
or eax, ecx
or eax, 0x1d2714d4
mov dword [0x48ca28], eax
mov eax, 0x2fc9b668
mov ecx, dword [esp + 0x10]
mov byte [ecx], 0x22
mov ecx, dword [0x492094]
xor ecx, 0xd8e34b66
cmp eax, ecx
je 0x435003
mov ax, word [0x4998c0]
movsx ecx, ax
shr ecx, 5
mov ax, word [0x49b1d4]
mov dx, ax
lea ecx, [ecx + edx + 0x6e7d7100]
mov ax, cx
mov word [0x49b1d4], ax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
mov byte [ecx + eax], 0
mov eax, dword [0x494b60]
add eax, 0x749c99b0
or eax, 0x1bd8a2c1
mov ecx, dword [0x492de8]
sub ecx, eax
mov dword [0x492de8], ecx
mov eax, dword [0x492644]
mov ecx, dword [0x48b594]
and ecx, eax
mov dword [0x48b594], ecx
mov eax, dword [esp + 8]
dec eax
mov dword [esp + 8], eax
mov eax, dword [0x48b388]
dec eax
mov dword [0x48b388], eax
xor eax, 0xd477e1a4
mov ecx, dword [0x48eb14]
imul ecx, eax
mov dword [0x48eb14], ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
movsx eax, byte [ecx + eax]
cmp eax, 0x22
jne 0x43502c
mov eax, dword [0x48c070]
shl eax, 8
or eax, 0x44060299
mov ecx, dword [0x48cc84]
xor ecx, 0xffffffff
and ecx, 0xabcd3b59
cmp eax, ecx
jle 0x4350c1
mov ax, word [0x496060]
movsx ecx, ax
shl ecx, 8
xor ecx, 0xd6d31fef
mov edx, dword [0x48fbc4]
imul edx, ecx
mov dword [0x48fbc4], edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
lea eax, [eax + ecx + 1]
mov dword [esp + 0xc], eax
mov eax, dword [0x493b9c]
xor eax, 0x4fed2f2f
mov dword [0x493b9c], eax
jmp 0x4351c5
mov eax, 0x2694dd68
mov ecx, dword [0x491120]
cmp eax, ecx
jle 0x435107
mov eax, dword [0x491144]
and eax, 0x6c7e220f
mov dword [0x491144], eax
mov eax, dword [esp + 0x10]
mov byte [eax], 0x20
mov eax, dword [0x494448]
imul eax, eax, 0xe96477f4
mov dword [0x494448], eax
mov eax, dword [0x494280]
shl eax, 7
mov ecx, 0xa4c45a2
sub ecx, eax
mov eax, dword [0x48fc60]
dec eax
mov dword [0x48fc60], eax
sub ecx, eax
mov dword [0x4934b8], ecx
mov eax, dword [esp + 8]
dec eax
mov dword [esp + 8], eax
mov eax, dword [0x48fc00]
or eax, 0x8af20ec
mov dword [0x48fc00], eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
movsx eax, byte [ecx + eax]
cmp eax, 0x20
jne 0x43511e
mov eax, 0xf0fa3e13
mov ecx, dword [0x48f8a0]
imul ecx, ecx, 0x20ef1526
mov edx, dword [0x48e1ac]
mov esi, edx
dec esi
mov dword [0x48e1ac], esi
xor ecx, edx
cmp eax, ecx
jg 0x4351a6
mov eax, dword [0x49133c]
add eax, 0x49dcb77b
mov dword [0x49133c], eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
lea eax, [eax + ecx + 1]
mov dword [esp + 0xc], eax
mov eax, dword [0x495228]
and eax, 0x3d5b8285
mov dword [0x495228], eax
mov eax, dword [0x48b7fc]
dec eax
mov dword [0x48b7fc], eax
mov ecx, dword [0x4954e8]
imul eax, ecx
and eax, 0xe6d88b9d
mov ecx, dword [0x491738]
add ecx, eax
mov dword [0x491738], ecx
mov eax, dword [esp + 0xc]
add esp, 0x14
pop esi
ret