Function at 0x439e6d
Capabilities:
Contain obfuscated stackstrings
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 0x10]
mov eax, ebx
push esi
sub eax, 0
je 0x43b565
sub eax, 1
je 0x43b554
sub eax, 1
je 0x43b525
sub eax, 1
je 0x43b4db
mov edx, dword [ebp + 0xc]
sub eax, 1
je 0x43b453
mov esi, dword [ebp + 8]
push edi
cmp ebx, 0x20
jb 0x43a355
mov eax, dword [esi]
cmp eax, dword [edx]
je 0x439f3e
movzx edi, al
movzx eax, byte [edx]
sub edi, eax
je 0x439ede
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
test ecx, ecx
jne 0x43a779
movzx edi, byte [esi + 1]
movzx eax, byte [edx + 1]
sub edi, eax
je 0x439f00
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
test ecx, ecx
jne 0x43a779
movzx edi, byte [esi + 2]
movzx eax, byte [edx + 2]
sub edi, eax
je 0x439f22
xor ecx, ecx
test edi, edi
loope 0x439f27
retf
dec dword [ecx + 0x458df845]
xchg esp, eax
push eax
mov byte [ebp - 0x6c], bl
mov byte [ebp - 0x6b], bl
mov byte [ebp - 0x6a], 0xbe
mov byte [ebp - 0x69], bl
mov byte [ebp - 0x68], 0x17
mov byte [ebp - 0x67], 0x28
mov byte [ebp - 0x66], 0x33
mov byte [ebp - 0x65], 0x35
mov byte [ebp - 0x64], 0x34
mov byte [ebp - 0x63], 0x20
mov byte [ebp - 0x62], 0x2d
mov byte [ebp - 0x61], 0x11
mov byte [ebp - 0x60], 0x33
mov byte [ebp - 0x5f], 0x2e
mov byte [ebp - 0x5e], 0x35
mov byte [ebp - 0x5d], 0x24
mov byte [ebp - 0x5c], 0x22
mov byte [ebp - 0x5b], 0x35
mov byte [ebp - 0x5a], 0x41
call fcn.00439faf
push eax
push esi
push dword [ebp + 8]
call fcn.00439f64
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 0x2c], bl
push eax
mov byte [ebp - 0x2b], bl
mov byte [ebp - 0x2a], 0xd4
mov byte [ebp - 0x29], bl
mov byte [ebp - 0x28], 0x67
mov byte [ebp - 0x27], 0x44
mov byte [ebp - 0x26], 0x4a
mov byte [ebp - 0x25], 0x4f
mov byte [ebp - 0x24], 0x67
mov byte [ebp - 0x23], 0x42
mov byte [ebp - 0x22], 0x49
mov byte [ebp - 0x21], 0x59
mov byte [ebp - 0x20], 0x4a
mov byte [ebp - 0x1f], 0x59
mov byte [ebp - 0x1e], 0x52
mov byte [ebp - 0x1d], 0x6a
mov byte [ebp - 0x1c], 0x2b
call fcn.00439faf
push eax
push esi
push dword [ebp + 8]
call fcn.00439f64
add esp, 0x30
mov dword [ebp - 0xb8], eax
call fcn.00439f9f
daa
sbb dword [di - 0x78], edx
popfd
jl 0x43a424
invalid
invalid
call fcn.00439f9f
aaa
imul eax
sahf
push dword [ebp + 0x14]
push 1
push esi
call edi
mov eax, esi
jmp 0x43a79a
pop edi
pop esi
pop ebx
leave
ret
test eax, esp
clc
invalid
invalid
add eax, 0x858b107d
add cl, bh
invalid
add esp, 0xc
movsx eax, byte [ebp - 8]
mov ecx, dword [ebp - 0x540]
sub ecx, eax
mov dword [ebp - 0x540], ecx
push 4
mov eax, dword [ebp - 0x378]
mov ecx, dword [ebp - 4]
lea eax, [ecx + eax - 0x14]
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.00439f10
add esp, 0xc
movsx eax, byte [ebp - 8]
mov ecx, dword [ebp - 0xc]
sub ecx, eax
mov dword [ebp - 0xc], ecx
push 4
mov eax, dword [ebp - 0x378]
mov ecx, dword [ebp - 4]
lea eax, [ecx + eax - 0x10]
push eax
lea eax, [ebp - 0x400]
push eax
call fcn.00439f10
add esp, 0xc
movsx eax, byte [ebp - 8]
mov ecx, dword [ebp - 0x400]
sub ecx, eax
mov dword [ebp - 0x400], ecx
call fcn.00439f9f
adc edx, ebp
xor ebp, esp
push 4
mov eax, dword [ebp - 0x378]
mov ecx, dword [ebp - 4]
lea eax, [ecx + eax - 0xc]
push eax
lea eax, [ebp - 0x54c]
push eax
call fcn.00439f10
add esp, 0xc
movsx eax, byte [ebp - 8]
clc
sar dl, 0xff
jmp [edx + 4]