Function at 0xf3d0d1
Capabilities:
Encrypt data using rc4 prga
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
clc
lea esp, [esp - 0x114]
test edi, 0x6aba45c6
push edi
rcl di, 0x13
mov edi, dword [ebp + 8]
clc
test edi, edi
je 0xf3d118
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0xf3d118
mov eax, 0x5a4d
cmp ebp, 0x4efd2e6c
test bx, sp
test bh, 0xf8
cmp word [edi], ax
je 0xf58b72
xor eax, eax
mov edi, esp
pop edi
mov esp, ebp
cmovb ebp, ebp
xchg ebp, ebp
pop ebp
ret
mov cl, byte [esi + 2]
cmc
cmp si, 0x2a1e
test edi, esi
lea esi, [esi + 2]
cmp eax, 0x7ce4e28
stc
sub edx, edx
test cl, cl
je 0xf5086c
mov al, cl
cmp si, bp
test si, bx
sub al, 0x30
inc esi
cmp cx, bp
cmc
cmp al, 9
ja 0xf5086c
movsx eax, cl
shl cl, cl
mov cl, byte [esi]
cmp bl, bl
test eax, edi
lea edx, [edx + edx*4]
cmc
test cx, bp
lea edx, [eax + edx*2 - 0x30]
stc
test cl, cl
jne 0xf50836
push 0
push edx
push edi
call fcn.00f3d0d1
add esp, 0xc
pop esi
not ebx
bswap di
pop ebx
movsx edi, cx
pop edi
mov esp, ebp
pop ebp
ret
pop esi
setge bh
bswap eax
cmovns bx, bx
pop ebx
not eax
lea eax, [ecx + edi]
pop edi
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x3c]
clc
add edx, edi
cmp dword [edx], 0x4550
jne 0xf3d118
mov eax, dword [edx + 0x78]
mov dword [ebp - 4], eax
cmp ebp, 0x35ad1c3c
test eax, eax
je 0xf3d118
mov edx, dword [edx + 0x7c]
test cx, sp
test di, 0x7d49
push ebx
cmp bx, 0x1046
push esi
test edx, 0x37592055
cmp edi, 0x47e534c
or esi, 0xffffffff
mov dword [ebp - 0x10], edx
mov dword [ebp - 8], esi
cmc
stc
cmp ecx, 0xffff
ja 0xf683c7
sub ecx, dword [eax + edi + 0x10]
cmc
cmp ecx, dword [eax + edi + 0x14]
jae 0xf5ebfe
mov edx, dword [eax + edi + 0x1c]
lea ecx, [edx + ecx*4]
clc
mov ecx, dword [ecx + edi]
test ecx, ecx
jne 0xf5eba8
pop esi
ror di, 0x7f
pop ebx
movzx edi, sp
cmc
sub di, sp
sub eax, eax
pop edi
mov esp, ebp
not ebp
mov bp, dx
pop ebp
ret
mov ecx, dword [ebp - 4]
cmovbe dx, sp
mov dl, al
bswap eax
mov edx, dword [ecx + edi + 0x24]
mov eax, ebx
lea eax, [edx + esi*2]
movzx ecx, word [eax + edi]
movsx dx, cl
xchg dx, dx
lea edx, [ebx + 1]
mov dword [ebp - 8], ecx
mov dword [ebp + 8], edx
jmp 0xf5eb69
mov ecx, dword [ebp + 0xc]
cbw
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
btc esi, edi
sub esi, esi
lea esi, [ebx + eax]
bsr eax, ecx
mov eax, dword [ebp + 0x10]
push eax
and ah, 0x3e
rcr ax, 0x91
test ax, 0x5799
sar esi, 1
mov eax, dword [edx + esi*4]
clc
cmp edx, ebp
add eax, edi
call fcn.00f556cf
add esp, 4
cmp esp, 0x42030b4f
cmp eax, 0xffffffff
je 0xf5eb66
test eax, eax
je 0xf591ac
cmp eax, 1
jne 0xf5eb69
inc esi
mov dword [ebp + 8], esi
jmp 0xf5eb69
lea ebx, [esi - 1]
cmp dword [ebp + 8], ebx
jle 0xf5ac42
mov eax, dword [ebp - 4]
xor esi, esp
not esi
mov esi, dword [ebp - 8]
test dx, 0x51cb
stc
cmp esi, dword [eax + edi + 0x14]
jae 0xf5ebfe
mov ecx, dword [eax + edi + 0x1c]
lea edx, [ecx + esi*4]
btc ecx, 0xcc
sub ecx, 0x24bd39a3
mov ecx, dword [edx + edi]
test ecx, ecx
je 0xf5ebfe
cmp ecx, eax
jb 0xf52e47
mov edx, dword [ebp - 0x10]
clc
cmp bp, dx
lea edx, [edx + eax]
cmp cl, bl
test ax, 0x14cd
cmp ecx, edx
jae 0xf52e47
lea eax, [ecx + edi]
mov si, bx
clc
sbb cl, 0xee
mov cl, byte [eax]
mov esi, eax
test cl, cl
je 0xf5ebfe
mov edi, edi
clc
cmc
test ecx, esp
cmp cl, 0x2e
je 0xf998d6
mov cl, byte [esi + 1]
inc esi
cmp ax, bx
test ecx, ebp
test cl, cl
jne 0xf5ebe4
pop esi
rcr bx, 0x20
test di, sp
bt bx, 0xd2
pop ebx
rcr edi, 0x90
sub edi, esi
sub eax, eax
mov di, di
pop edi
mov esp, ebp
xchg bp, bp
pop ebp
ret
mov ebx, dword [eax + edi + 0x18]
test bp, ax
test ebx, ebx
je 0xf5eb82
mov edx, dword [eax + edi + 0x20]
dec ebx
cmc
add edx, edi
stc
mov dword [ebp + 8], 0
test ecx, eax
mov dword [ebp - 0xc], edx
stc
test ah, 0x3c
test ebx, ebx
jl 0xf5eb82
jmp 0xf5ac4a
mov ebx, esi
clc
cmp bp, 0x447e
sub ebx, eax
cmp di, 0x6677
cmp ebx, 0x104
jae 0xf5ebfe
xor ecx, ecx
clc
cmp esp, esi
test ebx, ebx
jbe 0xf9991d
lea edi, [ebp - 0x114]
sub edi, eax
mov dl, byte [eax]
test dl, dl
je 0xf9991d
mov byte [edi + eax], dl
inc ecx
inc eax
cmp ecx, ebx
jb 0xf99906
lea eax, [ebp - 0x114]
push eax
mov byte [ebp + ecx - 0x114], 0
mov eax, 0xa6967fa
mov ax, cx
lahf
mov eax, dword [sym.imp.kernel32.dll_GetModuleHandleA]
call eax
mov edi, eax
stc
cmp dh, 0xe4
test ebp, esi
test edi, edi
jne 0xf99973
lea ecx, [ebp - 0x114]
mov eax, edi
push ecx
movzx ax, ah
lahf
movsx ax, ch
mov eax, dword [sym.imp.kernel32.dll_LoadLibraryA_1]
call eax
mov edi, eax
cmp sp, si
cmc
test edi, edi
je 0xf5ebfe
cmp byte [esi + 1], 0x23
movzx ecx, sp
lea ecx, [esi + 1]
je 0xf50818
push 0
push ecx
push edi
call fcn.00f3d0d1
add esp, 0xc
pop esi
bswap edi
movzx ebx, si
pop ebx
movzx edi, di
movsx edi, cx
pop edi
mov esp, ebp
bswap bp
movzx ebp, ax
pop ebp
ret