Function at 0x407b14
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc
mov ecx, dword [esp + 0x24]
add dword [0x48fe58], 0x7f7cca70
mov eax, dword [0x48bd98]
cmp eax, 0xe49895c0
jne 0x407b3f
add dword [0x48b648], 0x51a0220c
mov ebx, dword [esp + 0x20]
xor dword [0x490e48], 0x5dd52cda
mov dword [0x48f4c4], 0x354ecc2e
lea eax, [ecx + 4]
mov dword [esp + 8], ecx
push eax
call fcn.0043ccee
add esp, 4
mov dword [esp], eax
mov ecx, dword [0x49020c]
inc ecx
mov dword [0x49020c], ecx
mov dword [0x48f620], ecx
mov cx, word [0x4895ae]
dec ecx
mov word [0x4895ae], cx
jmp 0x407bb0
add eax, 0xfffffffd
mov ecx, dword [0x48ab04]
shl ecx, 0xa
add ecx, 0xe8e2
mov dx, word [0x4886cc]
xor edx, ecx
mov word [0x4886cc], dx
mov ebp, eax
mov eax, dword [0x48fb88]
lea ecx, [eax - 1]
mov dword [0x48fb88], ecx
mov cx, word [0x488982]
xor ecx, eax
mov word [0x488982], cx
mov al, byte [ebx + section..data]
mov byte [ebp], al
add dword [0x48f374], 0x2ea98829
mov eax, dword [0x491814]
mov al, byte [eax + ebx]
xor byte [ebp], al
add dword [0x48fd58], 0x222a6cde
mov eax, dword [0x490e0c]
imul eax, eax, 0x8530108a
mov dword [0x490e0c], eax
mov eax, dword [0x48b318]
not eax
imul eax, eax, 0x3809e616
mov cx, word [0x487d14]
or ecx, eax
mov word [0x487d14], cx
mov al, byte [ebx + 0x47c001]
mov byte [ebp + 1], al
mov eax, dword [0x48d1a8]
lea ecx, [eax + 1]
mov dword [0x48d1a8], ecx
add eax, 0xe303e54d
mov ecx, dword [0x48fe1c]
imul ecx, eax
mov dword [0x48fe1c], ecx
mov eax, dword [0x491814]
mov al, byte [eax + ebx + 1]
xor byte [ebp + 1], al
mov eax, dword [0x48bc44]
lea ecx, [eax - 1]
mov dword [0x48bc44], ecx
cmp eax, 0xabc54fe0
jl 0x407cb6
mov eax, dword [0x48aa6c]
sar eax, 7
mov ecx, dword [0x48c900]
sub eax, ecx
and eax, 0xd5d9b90c
cmp eax, 0x9d40c6b8
jg 0x407cb6
mov eax, dword [0x49003c]
mov cx, word [0x488992]
lea edx, [ecx + 1]
mov word [0x488992], dx
and eax, ecx
mov cx, word [0x489b3e]
imul ecx, eax
mov word [0x489b3e], cx
mov eax, dword [0x48ea78]
lea ecx, [eax + 1]
mov dword [0x48ea78], ecx
xor eax, 0xc0743cf7
mov ecx, dword [0x48d164]
imul ecx, eax
mov dword [0x48d164], ecx
mov eax, dword [0x48b77c]
imul eax, eax, 0x6fed0c83
or dword [0x490b84], eax
movzx ecx, word [ebp]
mov dword [esp + 4], ecx
and dword [0x48e610], 0xe44e6067
lea eax, [ebx + 0x47c002]
add ebx, 2
lea edi, [ecx + 3]
push edi
push eax
push ebp
call fcn.00431b10
add esp, 0xc
mov ax, word [0x48905a]
lea ecx, [eax + 1]
mov word [0x48905a], cx
cwde
add eax, 0xb5f67ec4
and dword [0x48e104], eax
mov ax, word [0x48a93e]
cwde
imul eax, eax, 0x9c011085
mov ecx, dword [0x48cb9c]
sar ecx, 5
add ecx, eax
cmp ecx, 0xf76b7b3b
jne 0x407d73
mov ax, word [0x4875ba]
cwde
add eax, 0xd1abed27
mov ecx, dword [0x48c2d4]
sub eax, ecx
cmp eax, 0xb6692df0
jl 0x407d73
and dword [0x48bad4], 0x1ce96407
lea eax, [ebp + edi]
mov ecx, dword [0x491208]
xor dword [0x48eee0], 0x42509202
add ebx, dword [0x491814]
and dword [0x4913cc], 0xf109b477
mov cx, word [0x4888aa]
or ecx, 0xf07e
mov word [0x4888aa], cx
mov cl, byte [ebx]
xor byte [ebp], cl
mov ecx, dword [0x48b414]
mov edx, dword [0x48c2b0]
lea esi, [edx + 1]
mov dword [0x48c2b0], esi
add edx, 0x328a9578
and edx, ecx
mov ecx, dword [0x48b7cc]
imul ecx, edx
mov dword [0x48b7cc], ecx
inc ebp
inc ebx
dec edi
jne 0x407d97
mov ecx, dword [0x48b21c]
xor dword [0x48e520], ecx
mov ecx, dword [esp + 8]
sub ecx, dword [esp + 4]
je 0x407e81
mov dword [esp + 8], ecx
mov cx, word [0x489b3c]
movsx ecx, cx
sar ecx, 0xa
mov edx, dword [0x490dac]
neg ecx
lea ecx, [edx + ecx - 0x45b82900]
mov dword [0x490dac], ecx
mov byte [eax], 0
mov ecx, dword [0x48c168]
shr ecx, 7
mov dx, word [0x488b70]
and edx, ecx
and edx, 0x4008
mov word [0x488b70], dx
mov dword [0x48fcec], 0xf6eef2fe
mov ebx, dword [eax - 3]
and dword [0x490064], 0x95f9f58e
mov ecx, dword [0x48afd4]
add ecx, 0x4d9436f0
cmp ecx, 0xf4d3d9ea
jl 0x407b8e
add dword [0x48b960], 0x7fbe739f
jmp 0x407b8e
add dword [0x48d7cc], 0x82b7c08
mov eax, dword [esp]
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret