Function at 0x100630c0
Capabilities:
Encrypt data using rc4 ksa
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x10163a82
mov eax, dword fs:[0]
push eax
sub esp, 0x160
mov eax, dword [0x101b7324]
xor eax, esp
mov dword [esp + 0x15c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101b7324]
xor eax, esp
push eax
lea eax, [esp + 0x174]
mov dword fs:[0], eax
mov eax, dword [esp + 0x188]
mov esi, dword [esp + 0x184]
xor edi, edi
push 0xff
lea ecx, [esp + 0x75]
push edi
mov dword [esp + 0x2c], edi
push ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x20], eax
mov byte [esp + 0x7c], 0
call fcn.10100550
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x1b0]
lea edx, [esp + 0x40]
push edx
mov edx, dword [esp + 0x1b0]
lea eax, [esp + 0x54]
push eax
mov eax, dword [esp + 0x1b0]
push ecx
mov ecx, dword [esp + 0x1b0]
push edx
mov edx, dword [esp + 0x3c]
push eax
push ecx
xor ebx, ebx
push edx
xor ebp, ebp
mov dword [esp + 0x4c], ebx
call fcn.10044740
add esp, 0x34
test eax, eax
jne 0x100631af
lea eax, [esp + 0x70]
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], edi
mov byte [esi + 4], bl
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10063192
sub eax, edx
push eax
lea eax, [esp + 0x74]
push eax
mov ecx, esi
call fcn.100099a0
jmp 0x100632c9
mov eax, dword [esp + 0x40]
test eax, eax
mov ecx, dword [esp + 0x3c]
jle 0x1006320e
mov edx, dword [esp + 0x18]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], eax
test ecx, ecx
jle 0x100631f7
mov dword [esp + 0x20], ecx
nop
mov eax, dword [edx]
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
add edi, ecx
movzx ecx, ah
movzx eax, al
add ebp, ecx
add ebx, eax
add edx, 4
sub dword [esp + 0x20], 1
jne 0x100631d0
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
add edx, dword [esp + 0x28]
sub dword [esp + 0x14], 1
mov dword [esp + 0x1c], edx
jne 0x100631c7
mov eax, dword [esp + 0x40]
imul ecx, eax
xor edx, edx
mov eax, edi
div ecx
xor edx, edx
mov edi, eax
mov eax, ebp
div ecx
xor edx, edx
mov ebp, eax
mov eax, ebx
div ecx
mov ecx, dword [esp + 0x18]
push ecx
mov ebx, eax
call fcn.100ff60b
push ebx
mov dl, 0x30
mov al, 0x78
push ebp
mov byte [esp + 0x6d], dl
mov byte [esp + 0x71], dl
mov byte [esp + 0x75], dl
push edi
lea edx, [esp + 0x70]
mov cl, 0x32
mov byte [esp + 0x73], al
mov byte [esp + 0x77], al
mov byte [esp + 0x7b], al
push edx
lea eax, [esp + 0x84]
push eax
mov dword [esp + 0x30], 0
mov byte [esp + 0x78], 0x25
mov byte [esp + 0x7a], cl
mov byte [esp + 0x7c], 0x25
mov byte [esp + 0x7e], cl
mov byte [esp + 0x80], 0x25
mov byte [esp + 0x82], cl
mov byte [esp + 0x84], 0
call fcn.10101330
add esp, 0x18
xor edi, edi
lea eax, [esp + 0x70]
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], edi
mov byte [esi + 4], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100632b1
sub eax, ecx
push eax
lea ecx, [esp + 0x74]
push ecx
mov ecx, esi
call fcn.100099a0
mov dword [esp + 0x17c], edi
mov dword [esp + 0x24], 1
mov eax, esi
mov ecx, dword [esp + 0x174]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x15c]
xor ecx, esp
call fcn.100ffae6
add esp, 0x16c
ret