Function at 0x458c20
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x4c9c24]
push ebx
push esi
mov ebx, ecx
mov esi, dword [eax + 0x49e0]
mov dword [ebp - 4], ebx
push edi
mov edi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
test esi, esi
jne 0x458c57
push 0x5eb
push str.d:CProjectsSCUMSX2_srcimguiimgui_tables.cpp
push str.table___0___Need_to_call_TableSetupColumn___after_BeginTable____
call edi
add esp, 0xc
cmp byte [esi + 0x1d6], 0
je 0x458c74
push 0x5ec
push str.d:CProjectsSCUMSX2_srcimguiimgui_tables.cpp
push str.table__IsLayoutLocked__false___Need_to_call_TableSetupColumn___before_first_row__
call edi
add esp, 0xc
test ebx, ebx
js 0x458c80
cmp ebx, 0x200
jl 0x458c94
push 0x5ed
push str.d:CProjectsSCUMSX2_srcimguiimgui_tables.cpp
push str.columns___0__columns___512
call edi
add esp, 0xc
mov ebx, dword [esi + 4]
test ebx, 0x1000000
je 0x458cb6
mov ecx, dword [esi + 0x40]
mov eax, dword [ebp - 4]
cmp dword [ebp - 4], ecx
movzx eax, ax
movzx edx, cx
cmovl edx, eax
movzx eax, dx
jmp 0x458cb8
xor eax, eax
mov edx, dword [esi + 0x150]
xorps xmm1, xmm1
movzx ecx, ax
mov word [esi + 0x1ca], cx
mov eax, ecx
mov dword [ebp - 8], eax
movss xmm0, dword [edx + 0x74]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x458ce5
movsx eax, cx
mov ecx, eax
jmp 0x458ced
mov ecx, dword [ebp - 8]
xor eax, eax
movsx ecx, cx
shr ebx, 0x19
and ebx, 1
mov word [esi + 0x1cc], ax
mov word [esi + 0x1c6], bx
movss xmm0, dword [edx + 0x78]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x458d13
mov eax, ebx
jmp 0x458d15
xor eax, eax
movzx eax, ax
xor ebx, ebx
mov word [esi + 0x1c8], ax
xor al, 1
mov byte [esi + 0x1e1], al
test ecx, ecx
jle 0x458ead
mov eax, dword [esi + 0x18]
lea ecx, [eax + ebx*2]
mov dword [ebp - 8], ecx
cmp ecx, eax
jb 0x458d43
cmp ecx, dword [esi + 0x1c]
jb 0x458d5a
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
mov ecx, dword [ebp - 8]
add esp, 0xc
movsx ecx, word [ecx]
mov dword [ebp - 8], ecx
cmp ecx, ebx
je 0x458e9d
movsx eax, word [esi + 0x1ca]
cmp ecx, eax
jl 0x458e9d
mov eax, dword [esi + 0x18]
lea ecx, [eax + ebx*2]
mov dword [ebp - 4], ecx
cmp ecx, eax
jb 0x458d89
cmp ecx, dword [esi + 0x1c]
jb 0x458d9d
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
add esp, 0xc
mov eax, dword [ebp - 4]
movsx eax, word [eax]
imul eax, eax, 0x70
add eax, dword [esi + 0x10]
mov dword [ebp - 4], eax
cmp eax, dword [esi + 0x10]
jb 0x458db6
cmp eax, dword [esi + 0x14]
jb 0x458dca
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
add esp, 0xc
mov eax, dword [esi + 0x18]
mov ecx, dword [ebp - 8]
lea ecx, [eax + ecx*2]
mov dword [ebp - 0xc], ecx
cmp ecx, eax
jb 0x458ddf
cmp ecx, dword [esi + 0x1c]
jb 0x458df3
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
add esp, 0xc
mov eax, dword [ebp - 0xc]
movsx eax, word [eax]
imul edx, eax, 0x70
add edx, dword [esi + 0x10]
mov dword [ebp - 0xc], edx
cmp edx, dword [esi + 0x10]
jb 0x458e0c
cmp edx, dword [esi + 0x14]
jb 0x458e23
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
mov edx, dword [ebp - 0xc]
add esp, 0xc
mov eax, dword [ebp - 4]
movzx ecx, word [edx + 0x52]
mov ax, word [eax + 0x52]
mov word [edx + 0x52], ax
mov eax, dword [ebp - 4]
mov word [eax + 0x52], cx
mov eax, dword [esi + 0x18]
lea ecx, [eax + ebx*2]
mov dword [ebp - 4], ecx
cmp ecx, eax
jb 0x458e4b
cmp ecx, dword [esi + 0x1c]
jb 0x458e5f
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
add esp, 0xc
mov eax, dword [esi + 0x18]
mov ecx, dword [ebp - 8]
lea edx, [eax + ecx*2]
mov dword [ebp - 0xc], edx
cmp edx, eax
jb 0x458e74
cmp edx, dword [esi + 0x1c]
jb 0x458e8b
push 0x25e
push str.d:CProjectsSCUMSX2_srcimguiimgui_internal.h
push str.p___Data__p___DataEnd
call edi
mov edx, dword [ebp - 0xc]
add esp, 0xc
mov eax, dword [ebp - 4]
movzx ecx, word [edx]
mov ax, word [eax]
mov word [edx], ax
mov eax, dword [ebp - 4]
mov word [eax], cx
movsx eax, word [esi + 0x1ca]
inc ebx
cmp ebx, eax
jl 0x458d31
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret