Function at 0x47dcd4
Capabilities:
Generate random numbers via winapi

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xa8
mov eax, dword [0x5184d0]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x2c], eax
push edi
push 0x70
mov dword [eax], ebx
mov edi, ebx
lea eax, [ebp - 0xa4]
mov dword [ebp - 0x24], edx
push ebx
push eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x18], ebx
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x20]
mov edx, 0x41d5d0
push eax
push ebx
push ecx
push ebx
xor ecx, ecx
call fcn.004d80f8
mov ebx, dword [ebp - 0x20]
mov esi, eax
test esi, esi
je 0x47dd4c
push esi
push 0x16d60139
call dword [sym.imp.certcli.dll_Ordinal_357]
jmp 0x47df30
lea eax, [ebp - 0x18]
mov ecx, ebx
push eax
sub esp, 0x18
call fcn.004d3eb4
mov esi, eax
test esi, esi
je 0x47dd68
push esi
push 0x16e20139
jmp 0x47dd41
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
push 1
push 0xfffffffffffffff6
mov dword [ebp - 0x78], ecx
lea ecx, [ebp - 0x84]
pop edx
mov dword [ebp - 0x7c], eax
call fcn.004c6337
push 1
push 0xa
pop edx
lea ecx, [ebp - 0x7c]
call fcn.004c6337
lea eax, [ebp - 0x10]
push eax
push 6
pop esi
push esi
push dword [ebp - 0x24]
call dword [sym.imp.ADVAPI32.dll_CryptGenRandom]
test eax, eax
jne 0x47ddc8
call fcn.004c73cc
mov esi, eax
push esi
push 0x16ed0139
jmp 0x47dd41
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x10]
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x98]
push eax
push 0x8004
push 0
mov byte [ebp - 0xb], 0x72
mov dword [ebp - 0xa0], esi
call fcn.004db077
mov esi, eax
test esi, esi
je 0x47de02
push esi
push 0x16fa0139
jmp 0x47dd41
push 0x20
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
test esi, esi
jne 0x47de22
mov esi, 0x8007000e
push esi
push 0x17030139
jmp 0x47dd41
push 0x40b15c
push 0x10
pop edx
mov ecx, esi
call fcn.0043eb7d
push 0x41d648
push 0x10
pop edx
mov ecx, esi
call fcn.0043eadb
push ecx
lea eax, [ebp - 0x74]
mov edx, esi
push eax
lea eax, [ebp - 0x70]
push eax
push ecx
push 0x2000000
call fcn.004d9734
mov esi, eax
test esi, esi
je 0x47de67
push esi
push 0x17100139
jmp 0x47dd41
push ecx
lea eax, [ebp - 0x8c]
mov edx, 0x41d608
push eax
lea eax, [ebp - 0x88]
push eax
push ecx
push 0x2000000
call fcn.004d9734
mov esi, eax
test esi, esi
je 0x47de97
push esi
push 0x171a0139
jmp 0x47dd41
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0x14]
push ecx
mov edx, dword [eax + 0x18]
push ecx
push ecx
mov ecx, dword [ebp - 0x24]
call fcn.004c62a9
test eax, eax
jne 0x47dec2
call fcn.004c73cc
mov esi, eax
push esi
push 0x17240139
jmp 0x47df27
mov esi, dword [ebp - 0x14]
lea edi, [ebp - 0x6c]
push 6
pop ecx
rep movsd dword es:[edi], dword [esi]
push 2
pop edx
lea eax, [ebp - 0x30]
mov dword [ebp - 0xa4], edx
push eax
lea eax, [ebp - 0x1c]
push eax
push ecx
push 0
lea eax, [ebp - 0xa4]
push eax
call fcn.004c6016
test eax, eax
jne 0x47df00
call fcn.004c73cc
mov esi, eax
push esi
push 0x17340139
jmp 0x47df27
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push ecx
push dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
push dword [ebp - 0x1c]
push dword [ebp - 0x98]
call fcn.004c7db0
mov esi, eax
test esi, esi
je 0x47df2d
push esi
push 0x17400139
call dword [sym.imp.certcli.dll_Ordinal_357]
mov edi, dword [ebp - 0x14]
cmp dword [ebp - 0x1c], 0
je 0x47df3f
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0x70], 0
je 0x47df4e
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0x88], 0
je 0x47df63
push dword [ebp - 0x88]
call dword [sym.imp.KERNEL32.dll_LocalFree]
test edi, edi
je 0x47df6e
push edi
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0x18], 0
je 0x47df94
push 0
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
test ebx, ebx
je 0x47df9f
push 0x10
push 1
push 0
push ebx
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test ebx, ebx
je 0x47df9f
push ebx
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ecx, dword [ebp - 8]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005036b0
leave
ret 0xc