Function at 0xe03bcd
Capabilities:
Authenticate hmac
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
test al, 0xb9
mov dword [ebp - 0x2c], 0x8c5d48e9
movsw word es:[edi], word [esi]
mov dword [ebp - 4], eax
mov byte [ebp + ecx - 0x1e0], cl
inc ecx
cmp ecx, 0x100
jb 0xe03bdb
mov esi, dword [ebp - 0xc]
mov edi, eax
movzx eax, byte [0xe1a710]
mov dword [ebp - 0x10], eax
xor edx, edx
mov cl, byte [ebp + edi - 0x1e0]
mov eax, edi
mov byte [ebp - 5], cl
div dword [ebp - 0x1c]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x74]
mov edx, 0x9c9
add eax, dword [ebp - 4]
add ecx, eax
movzx eax, cl
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov eax, 0xe1a710
jmp 0xe03c3b
add edx, ecx
inc eax
cmp edx, 0x18f9
ja 0xe03c41
movzx ecx, byte [eax]
test ecx, ecx
jne 0xe03c2d
jmp 0xe03c55
push ecx
mov edx, esi
call fcn.00dfb572
pop ecx
sub esi, 0x52c6700a
call fcn.00dfb84c
mov ecx, dword [ebp - 4]
add esi, 0xff4ceac9
xor esi, 0x973684c8
mov al, byte [ebp + ecx - 0x1e0]
mov byte [ebp + edi - 0x1e0], al
inc edi
mov al, byte [ebp - 5]
mov byte [ebp + ecx - 0x1e0], al
cmp edi, 0x100
jb 0xe03bfa
mov dword [ebp - 0xc], esi
xor esi, esi
mov dword [ebp - 4], esi
mov edi, esi
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [ebp - 4]
mov cl, byte [ebp + edi - 0x1e0]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x1e0]
mov byte [ebp + edi - 0x1e0], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x1e0], cl
movzx eax, byte [ebp + edi - 0x1e0]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x1e0]
xor al, byte [ebp + esi - 0x40]
mov byte [ebp + esi - 0x1fc], al
inc esi
cmp esi, 0x18
jb 0xe03c93
push 5
pop ecx
mov esi, 0xdd1b60
mov dword [ebp - 0x40], 0xd912edca
lea edi, [ebp - 0x74]
mov dword [ebp - 0x3c], 0x8adca43e
rep movsd dword es:[edi], dword [esi]
xor eax, eax
mov dword [ebp - 0x38], 0xa5b7b35f
sub dword [ebp - 0xc], 0x4565dd9a
mov ecx, eax
mov byte [ebp - 0x1e4], al
mov dword [ebp - 0x34], 0xaef77aee
mov dword [ebp - 0x30], 0xbeed8577
mov dword [ebp - 0x2c], 0xa14cc762
movsw word es:[edi], word [esi]
mov byte [ebp + ecx - 0x1e0], cl
inc ecx
cmp ecx, 0x100
jb 0xe03d35
mov esi, eax
mov edi, eax
xor edx, edx
mov cl, byte [ebp + esi - 0x1e0]
mov eax, esi
mov byte [ebp - 5], cl
div dword [ebp - 0x1c]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x74]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x1e0]
mov byte [ebp + esi - 0x1e0], al
inc esi
mov al, byte [ebp - 5]
mov byte [ebp + edi - 0x1e0], al
cmp esi, 0x100
jb 0xe03d49
mov edi, dword [ebp - 0xc]
xor esi, esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x10], esi
mov ecx, dword [ebp - 0x5c]
lea eax, [esi + 1]
movzx esi, al
mov edx, 0x163b
mov eax, 0xe1a730
jmp 0xe03dbc
add edx, ecx
inc eax
cmp edx, 0x21fd
ja 0xe03e8f
movzx ecx, byte [eax]
test ecx, ecx
jne 0xe03daa
xor edi, 0xe782c0a5
add edi, 0x2e3e164c
push ecx
mov edx, edi
call fcn.00dfb572
mov eax, dword [ebp - 4]
pop ecx
mov cl, byte [ebp + esi - 0x1e0]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x1e0]
mov byte [ebp + esi - 0x1e0], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x1e0], cl
movzx eax, byte [ebp + esi - 0x1e0]
mov ecx, dword [ebp - 0x10]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x1e0]
xor al, byte [ebp + ecx - 0x40]
mov byte [ebp + ecx - 0x218], al
inc ecx
mov dword [ebp - 0x10], ecx
cmp ecx, 0x18
jb 0xe03d95
mov dword [ebp - 0xc], edi
mov esi, 0xdd1908
lea edi, [ebp - 0x24]
mov dword [ebp - 0x40], 0xfacd76bd
xor eax, eax
mov dword [ebp - 0x3c], 0x39efc8a1
mov byte [ebp - 0x200], al
mov edx, 0xdd3278
movsd dword es:[edi], dword [esi]
mov cl, 0x66
mov dword [ebp - 0x38], 0xbd4514a7
mov dword [ebp - 0x34], 0xd50d9e2d
mov dword [ebp - 0x30], 0x95ec0130
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x2c], 0xc62ef7ef
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
sub cl, 0x30
cmp cl, 9
ja 0xe03eaa
inc edx
mov cl, byte [edx]
test cl, cl
jne 0xe03e7b
mov edi, dword [ebp - 0xc]
jmp 0xe03eb3
call fcn.00dfb6e9
and edi, 0x16ba9c66
call fcn.00dfb5df
and edi, 0x55b9d9a7
jmp 0xe03dc6
mov edi, dword [ebp - 0xc]
and edi, 0xadf49241
or edi, 0x5e74803e
mov dword [ebp - 0x10], eax
push 0x66
mov esi, 0x2004
mov ecx, 0xdd3278
pop edx
add esi, edx
inc ecx
cmp esi, 0x1349
ja 0xe03ee3
movsx edx, byte [ecx]
test edx, edx
jne 0xe03ec9
and edi, 0xb579bfd
jmp 0xe03ef1
call fcn.00dfb5df
mov eax, dword [ebp - 0x10]
add edi, 0x7de450c8
xor edi, 0xecd364f4
mov byte [ebp + eax - 0x1e0], al
inc eax
mov dword [ebp - 0x10], eax
cmp eax, 0x100
jb 0xe03ebc
xor esi, esi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x10], 0xe
mov edi, esi
xor edx, edx
mov cl, byte [ebp + esi - 0x1e0]
mov eax, esi
mov byte [ebp - 5], cl
div dword [ebp - 0x10]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x24]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x1e0]
mov byte [ebp + esi - 0x1e0], al
inc esi
mov al, byte [ebp - 5]
mov byte [ebp + edi - 0x1e0], al
cmp esi, 0x100
jb 0xe03f17
xor eax, eax
mov dword [ebp - 4], eax
mov ecx, eax
mov esi, eax
lea eax, [ecx + 1]
sub dword [ebp - 0xc], 0x33e260b9
movzx eax, al
mov dword [ebp - 0x10], eax
mov edi, dword [ebp - 0x10]
mov cl, byte [ebp + eax - 0x1e0]
mov eax, dword [ebp - 4]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x1e0]
mov byte [ebp + edi - 0x1e0], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x1e0], cl
mov ecx, edi
movzx eax, byte [ebp + ecx - 0x1e0]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x1e0]
xor al, byte [ebp + esi - 0x40]
mov byte [ebp + esi - 0x90], al
inc esi
cmp esi, 0x18
jb 0xe03f61
mov esi, 0xdd1e3c
mov word [ebp - 0x58], 0xcd55
lea edi, [ebp - 0x28]
mov byte [ebp - 0x56], 0xc8
push 0x15
xor eax, eax
mov word [ebp - 0x54], 0x5eb8
movsd dword es:[edi], dword [esi]
pop ecx
mov byte [ebp - 0x55], cl
mov ecx, eax
mov byte [ebp - 0x78], al
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edi, eax
mov byte [ebp + ecx - 0x1e0], cl
inc ecx
cmp ecx, 0x100
jb 0xe03ff4
mov esi, eax
mov dl, byte [ebp + esi - 0x1e0]
mov eax, esi
and eax, 0xf
movzx ecx, dl
movzx eax, byte [ebp + eax - 0x28]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x1e0]
mov byte [ebp + esi - 0x1e0], al
inc esi
mov byte [ebp + edi - 0x1e0], dl
cmp esi, 0x100
jb 0xe04006
xor eax, eax
mov dword [ebp - 4], eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [ebp - 4]
mov cl, byte [ebp + edi - 0x1e0]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x1e0]
mov byte [ebp + edi - 0x1e0], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x1e0], cl
movzx eax, byte [ebp + edi - 0x1e0]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x1e0]
xor al, byte [ebp + esi - 0x58]
mov byte [ebp + esi - 0x64], al
inc esi
cmp esi, 6
jb 0xe04048
push 0x25
pop edx
push 0xe
pop ecx
xor eax, eax
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x5e], al
mov ecx, eax
mov dword [ebp - 0x20], 0x2e
mov dword [ebp - 0x18], 0xffffff9f
add edx, dword [ebp + ecx*4 - 0x20]
inc ecx
cmp ecx, 3
jl 0xe040bb
mov edi, dword [ebp - 0xc]
mov dword [ebp - 0x24], 0x12
mov dword [ebp - 0x20], 0x5c
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x18], 0xffffff3c
movups xmm1, xmmword [ebp - 0x24]
push 0x36
mov dword [ebp - 0x5c], edx
movaps xmm0, xmm1
mov dword [ebp - 0x58], 0xa
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x54], 0xffffffc0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd ecx, xmm1
pop edx
add ecx, 0x50
and edi, 0xbfa2bf57
mov dword [ebp - 0xb0], ecx
mov ecx, eax
add edx, dword [ebp + ecx*4 - 0x58]
inc ecx
cmp ecx, 2
jl 0xe04129
push 0x13
pop esi
mov dword [ebp - 0xb4], edx
sub edi, 0x67f0980a
mov edx, esi
mov dword [ebp - 0x20], 0x1c
mov dword [ebp - 0x1c], 0x38
mov ecx, eax
mov dword [ebp - 0x18], 0xffffff99
add edx, dword [ebp + ecx*4 - 0x20]
inc ecx
cmp ecx, 3
jl 0xe0415b
push 0xe
pop ecx
mov dword [ebp - 0x20], ecx
xorps xmm1, xmm1
mov dword [ebp - 0x24], 0x2d
mov dword [ebp - 0x1c], 0x33
mov dword [ebp - 0x18], 0xffffff92
movups xmm0, xmmword [ebp - 0x24]
mov dword [ebp - 0x20], 0x1d
mov dword [ebp - 0x1c], 0x10
psubd xmm1, xmm0
mov dword [ebp - 0x18], 0xffffff63
movaps xmm0, xmm1
mov dword [ebp - 0x24], 0x2e
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0xb8], edx
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd dword [ebp - 0xbc], xmm1
movups xmm1, xmmword [ebp - 0x24]
push 0xa
mov dword [ebp - 0x20], 0x2f
movaps xmm0, xmm1
mov dword [ebp - 0x1c], 0x49
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x18], 0x37e
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd ecx, xmm1
pop edx
add ecx, 0x42
mov dword [ebp - 0xc4], ecx
mov ecx, eax
add edx, dword [ebp + ecx*4 - 0x20]
xor edi, 0xe10e88bc
inc ecx
cmp ecx, 3
jl 0xe04210
push 0x24
mov dword [ebp - 0x50], edx
mov ecx, eax
mov dword [ebp - 0x20], 0x63
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], 0xffffff84
pop edx
add edx, dword [ebp + ecx*4 - 0x20]
inc ecx
cmp ecx, 3
jl 0xe04239
push 5
mov dword [ebp - 0xc0], edx
mov ecx, eax
mov edx, eax
mov dword [ebp - 0x28], 0x10
mov dword [ebp - 0x24], 0x3f
mov dword [ebp - 0x20], 0x18
mov dword [ebp - 0x1c], 0x1e
mov dword [ebp - 0x18], 0xffffff7b
pop esi
sub edx, dword [ebp + ecx*4 - 0x28]
inc ecx
cmp ecx, esi
jl 0xe04273
mov dword [ebp - 0x24], 0x25
mov esi, eax
mov dword [ebp - 0x20], 0x59
mov dword [ebp - 0x1c], 0x49
mov dword [ebp - 0x18], 0x312
movups xmm1, xmmword [ebp - 0x24]
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0x28], 2
movaps xmm0, xmm1
mov dword [ebp - 0x24], 0xd
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x20], 0x1a
movups xmm0, xmm1
mov dword [ebp - 0x1c], 0x20
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x18], 0x6b
movd ecx, xmm1
add ecx, 0x27
mov dword [ebp - 0xc8], ecx
mov ecx, eax
mov edx, 0xdd3290
inc ecx
lea edx, [edx + 2]
cmp ecx, 0x1d5
jl 0xe04313
cmp word [edx], ax
jne 0xe042f3
cmp ecx, 0x1cc5
jle 0xe04319
call fcn.00dfb5df
jmp 0xe04319
and edi, 0x92a0b047
xor edi, 0x3070852f
call fcn.00dfb6e9
mov eax, dword [ebp - 0x44]
sub eax, dword [ebp + esi*4 - 0x28]
inc esi
push 5
mov dword [ebp - 0x44], eax
pop eax
push 0
cmp esi, eax
pop eax
jl 0xe042ec
xor esi, esi
mov eax, esi
inc eax
cmp eax, 0x178b
jg 0xe04350
cmp byte [eax + 0xdd3278], 0
jne 0xe0433d
jmp 0xe0435b
call fcn.00dfb84c
add edi, 0x3218fd12
or edi, 0xfd3fbb45
mov dword [ebp - 0x28], 0x34
mov edx, esi
mov dword [ebp - 0x24], 0x41
mov dword [ebp - 0x20], 0x49
mov dword [ebp - 0x1c], 0x1f
mov dword [ebp - 0x18], 0xffffff23
mov ecx, 0xdd3278
mov al, 0x66
sub al, 0x30
cmp al, 9
ja 0xe0439c
inc ecx
mov al, byte [ecx]
test al, al
jne 0xe0438d
jmp 0xe043a2
or edi, 0x5c5f5988
sub edx, dword [ebp + esi*4 - 0x28]
imul edi, edi, 0x9f948343
inc esi
push 5
pop eax
cmp esi, eax
jl 0xe04386
mov al, byte [ebp - 0x11]
mov dword [ebp - 0x54], edx
jmp 0xe043d1
sub al, 0x30
cmp al, 9
ja 0xe043d7
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
mov al, byte [eax]
test al, al
jne 0xe043bc
jmp 0xe043dd
sub edi, 0x54686956
imul eax, edi, 0x1bb57122
mov dword [0xe1a838], eax
call fcn.00dfb6e9
push 0x39
mov dword [ebp - 0xa8], 0x38
xor eax, eax
mov dword [ebp - 0xa4], 0x93
pop ecx
add ecx, dword [ebp + eax*4 - 0xa8]
inc eax
cmp eax, 2
jl 0xe04406
mov dword [ebp - 0xa4], ecx
mov ecx, dword [ebp - 0xd0]
imul ecx, dword [ebp - 0xd4]
add ecx, ecx
call fcn.00dee8ce
mov ecx, dword [ebp - 0xd8]
imul ecx, dword [ebp - 0xdc]
mov dword [ebp - 0x10], eax
call fcn.00dee8ce
mov ecx, dword [ebp - 0x48]
mov esi, eax
add ecx, ecx
call fcn.00dee8ce
lea ecx, [ebp - 0x234]
mov dword [ebp - 4], eax
call fcn.00e0520f
lea ecx, [ebp - 0x264]
mov edi, eax
call fcn.00e0523e
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 0xc], eax
call fcn.00e0523e
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x48], eax
call fcn.00e0523e
push dword [ebp - 0x48]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x4c], eax
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x90]
call fcn.00dee9ca
call eax
mov eax, dword [ebp - 0x5c]
add esp, 0xc
jmp 0xe044d0
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ecx + eax*4]
mov ecx, esi
call fcn.00e05cfe
mov edx, edi
mov ecx, esi
call fcn.00e05cfe
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0xac]
cmp eax, dword [ecx]
jb 0xe044b0
mov ecx, esi
call fcn.00e05863
mov ecx, dword [ebp - 0x10]
mov edx, esi
push eax
call fcn.00e05426
push dword [ebp - 0x10]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 4]
xor dword [0xe1a838], 0x583b0375
call fcn.00dfba10
mov ecx, edi
call fcn.00e05863
push eax
push dword [ebp - 0xb0]
push edi
call fcn.00e05117
mov ecx, dword [ebp - 0xc]
call fcn.00e05897
push eax
push dword [ebp - 0xb4]
push dword [ebp - 0xc]
call fcn.00e05117
mov ecx, dword [ebp - 0x48]
call fcn.00e05897
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x48]
call fcn.00e05117
mov ecx, dword [ebp - 0x4c]
call fcn.00e05897
push eax
push dword [ebp - 0xbc]
push dword [ebp - 0x4c]
call fcn.00e05117
mov ecx, edi
call fcn.00dee98d
mov ecx, dword [ebp - 0xc]
call fcn.00dee98d
mov ecx, dword [ebp - 0x48]
call fcn.00dee98d
mov ecx, dword [ebp - 0x4c]
call fcn.00dee98d
mov eax, dword [ebp - 0xc0]
imul eax, dword [ebp - 0x50]
mov edi, dword [ebp - 0x10]
add eax, eax
push eax
push dword [ebp - 0xc4]
push edi
call fcn.00e05117
mov eax, dword [ebp - 0x44]
add esp, 0x44
imul eax, dword [ebp - 0xc8]
push eax
push dword [ebp - 0xcc]
push esi
call fcn.00e05117
mov eax, dword [ebp - 0xa4]
add eax, eax
push eax
push dword [ebp - 0x54]
push dword [ebp - 4]
call fcn.00e05117
add esp, 0x18
mov ecx, edi
call fcn.00dee98d
mov ecx, esi
call fcn.00dee98d
imul eax, dword [0xe1a838], 0x1c48186f
mov ecx, dword [ebp - 4]
mov dword [0xe1a838], eax
call fcn.00dee98d
pop edi
pop esi
leave
ret