Function at 0x4043e0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xff4
push 0x7d0
push 0
lea eax, [ebp - 0xfe8]
push eax
call dword [0x415014]
add esp, 0xc
push 0x418408
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418418
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418430
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push str.y77vGWiPkf3eTpRMaw8ZkicpnLUirRChekih7y331sk
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418444
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x41844c
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418454
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41845c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x41846c
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418474
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41847c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418490
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4184a0
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4184b4
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4184c4
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4184dc
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4184e4
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x7d0
push 0
lea eax, [ebp - 0xfe8]
push eax
call dword [0x415014]
add esp, 0xc
mov dword [ebp - 0xff0], 0
push 0x4184f0
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418500
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418518
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418520
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41852c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str.9prOORH7
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x41853c
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418544
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418554
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push str.5rROBH7
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418564
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str.1JTENUX79fLLQg
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418588
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push str.0JLQKESpyA
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str.9JTENUWon_nMTJ8
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4185c4
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4185cc
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x7d0
push 0
lea eax, [ebp - 0xfe8]
push eax
call dword [0x415014]
add esp, 0xc
mov dword [ebp - 0x40c], 0
jmp 0x4046b7
mov ecx, dword [ebp - 0x40c]
add ecx, 1
mov dword [ebp - 0x40c], ecx
cmp dword [ebp - 0x40c], 0x100
jge 0x404704
mov edx, dword [ebp - 0x40c]
mov eax, dword [ebp - 0x40c]
mov dword [ebp + edx*4 - 0x408], eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004134a0
add esp, 4
mov ecx, eax
mov eax, dword [ebp - 0x40c]
xor edx, edx
div ecx
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + edx]
mov edx, dword [ebp - 0x40c]
mov dword [ebp + edx*4 - 0x818], ecx
jmp 0x4046a8
push str.7YjGLkW63Pb5SpQMLw
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4185e8
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418600
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418608
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418614
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41861c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418624
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x41862c
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41863c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418644
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x41864c
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418660
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418670
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418684
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418694
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4186ac
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4186b4
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x7d0
push 0
lea edx, [ebp - 0xfe8]
push edx
call dword [0x415014]
add esp, 0xc
mov dword [ebp - 4], 0
jmp 0x40485f
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x100
jge 0x4048d4
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0xff0]
add edx, dword [ebp + ecx*4 - 0x408]
mov eax, dword [ebp - 4]
add edx, dword [ebp + eax*4 - 0x818]
and edx, 0x800000ff
jns 0x404892
dec edx
or edx, 0xffffff00
inc edx
mov dword [ebp - 0xff0], edx
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + ecx*4 - 0x408]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xff0]
mov edx, dword [ebp + ecx*4 - 0x408]
mov dword [ebp + eax*4 - 0x408], edx
mov eax, dword [ebp - 0xff0]
mov ecx, dword [ebp - 0x40c]
mov dword [ebp + eax*4 - 0x408], ecx
jmp 0x404856
push 0x4186c0
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4186d0
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4186e8
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4186f0
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str.y77vGWiPkebNT9EmGTY13j8jxqxwjjzifk71zALT8_FybBSXSA
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418704
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41870c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418714
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418724
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41872c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str.5TMN0Kwr3MUp0JPxw
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418748
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418758
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x41876c
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x41877c
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418794
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x41879c
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x7d0
push 0
lea ecx, [ebp - 0xfe8]
push ecx
call dword [0x415014]
add esp, 0xc
mov edx, dword [ebp + 8]
push edx
call fcn.004134a0
add esp, 4
add eax, 1
push eax
call fcn.004132e0
add esp, 4
mov dword [ebp - 0xff4], eax
mov eax, dword [ebp - 0xff4]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0xff0], 0
mov ecx, dword [ebp - 0xff0]
mov dword [ebp - 4], ecx
push 0x4187a8
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4187b8
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4187d0
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4187d8
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4187e4
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4187ec
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4187f4
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4187fc
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x41880c
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418814
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x41881c
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418830
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x418840
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418854
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418864
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41887c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str._pLROU20yQ
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x7d0
push 0
lea ecx, [ebp - 0xfe8]
push ecx
call dword [0x415014]
add esp, 0xc
mov dword [ebp - 0x40c], 0
jmp 0x404bbe
mov edx, dword [ebp - 0x40c]
add edx, 1
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp + 8]
push eax
call fcn.004134a0
add esp, 4
cmp dword [ebp - 0x40c], eax
jge 0x404cda
mov ecx, dword [ebp - 4]
add ecx, 1
and ecx, 0x800000ff
jns 0x404bec
dec ecx
or ecx, 0xffffff00
inc ecx
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0xff0]
add eax, dword [ebp + edx*4 - 0x408]
and eax, 0x800000ff
jns 0x404c0d
dec eax
or eax, 0xffffff00
inc eax
mov dword [ebp - 0xff0], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + ecx*4 - 0x408]
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xff0]
mov edx, dword [ebp + ecx*4 - 0x408]
mov dword [ebp + eax*4 - 0x408], edx
mov eax, dword [ebp - 0xff0]
mov ecx, dword [ebp - 0x414]
mov dword [ebp + eax*4 - 0x408], ecx
mov edx, dword [ebp - 4]
mov eax, dword [ebp + edx*4 - 0x408]
mov ecx, dword [ebp - 0xff0]
add eax, dword [ebp + ecx*4 - 0x408]
and eax, 0x800000ff
jns 0x404c72
dec eax
or eax, 0xffffff00
inc eax
mov dword [ebp - 0xfec], eax
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0x40c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xfec]
cmp dword [ebp + ecx*4 - 0x408], eax
jne 0x404cae
mov edx, dword [ebp - 0x410]
add edx, dword [ebp - 0x40c]
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0x40c]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x404cd5
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0x40c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xfec]
xor eax, dword [ebp + ecx*4 - 0x408]
mov edx, dword [ebp - 0x410]
add edx, dword [ebp - 0x40c]
mov byte [edx], al
jmp 0x404baf
push 0x418890
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4188a0
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4188b8
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4188c0
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4188cc
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4188d4
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x4188dc
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x4188e4
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x4188f4
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push str.yInMOF64xd3eTpQ
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x418904
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push str.4M2X
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418928
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push str.3JLQLEe6yN3eTpQ
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x41894c
lea edx, [ebp - 0xfe8]
push edx
call dword [section..rdata]
push 0x418964
lea eax, [ebp - 0xfe8]
push eax
call dword [section..rdata]
push 0x41896c
lea ecx, [ebp - 0xfe8]
push ecx
call dword [section..rdata]
push 0x7d0
push 0
lea edx, [ebp - 0xfe8]
push edx
call dword [0x415014]
add esp, 0xc
mov eax, dword [ebp - 0x410]
add eax, dword [ebp - 0x40c]
mov byte [eax], 0
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x410]
mov dword [ecx], edx
mov esp, ebp
pop ebp
ret