Function at 0x441dd0
Capabilities:
Generate random numbers via winapi

Disassembly:
sub esp, 0x10c
push ebx
push ebp
push esi
mov esi, ecx
push edi
test esi, esi
je 0x442040
push 0x100
push 0x1fe
xor eax, eax
mov ebp, str.SOFTWAREMetaQuotes_Software
push esi
push 0x467fd0
mov edx, ebp
mov word [esi], ax
mov ecx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.00403acb
add esp, 0x10
xor edi, edi
mov ebx, SysReAllocStringLen
test al, al
je 0x441ebd
push esi
call fcn.00429dc0
pop ecx
cmp edx, edi
jl 0x441ebd
jg 0x441e38
cmp eax, 0x2710
jb 0x441ebd
push 0x100
push 0xfe
lea eax, [esp + 0x20]
mov edx, ebp
push eax
push 0x467fd0
mov ecx, ebx
call fcn.00403acb
add esp, 0x10
test al, al
je 0x441e91
mov ecx, esi
lea eax, [esp + 0x18]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x441e88
test dx, dx
je 0x441e84
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x441e88
add eax, 4
add ecx, 4
test dx, dx
jne 0x441e62
mov eax, edi
jmp 0x441e8d
sbb eax, eax
or eax, 1
test eax, eax
je 0x441ec2
mov ecx, ebx
call fcn.00403a97
test al, al
jne 0x441ea7
push ecx
mov edx, ebp
mov ecx, ebx
call fcn.00403a3f
pop ecx
push ecx
push esi
push ecx
push 0x467fd0
mov edx, ebp
mov ecx, ebx
call fcn.004039b8
add esp, 0x10
jmp 0x441ec2
xor eax, eax
mov word [esi], ax
cmp word [esi], di
jne 0x441f31
push 0x100
push 0x1fe
push esi
push 0x467fd0
mov edx, ebp
mov ecx, ebx
call fcn.00403acb
add esp, 0x10
test al, al
je 0x441f2c
push esi
call fcn.00429dc0
pop ecx
cmp edx, edi
jl 0x441f2c
jg 0x441efb
cmp eax, 0x2710
jb 0x441f2c
mov ebx, reloc.OLEAUT32.dll_SysReAllocString
mov ecx, ebx
call fcn.00403a97
test al, al
jne 0x441f16
push ecx
mov edx, ebp
mov ecx, ebx
call fcn.00403a3f
pop ecx
push ecx
push esi
push ecx
push 0x467fd0
mov edx, ebp
mov ecx, ebx
call fcn.004039b8
add esp, 0x10
jmp 0x441f31
xor eax, eax
mov word [esi], ax
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x441f36
sub ecx, edx
mov edx, edi
sar ecx, 1
push 9
pop ebx
je 0x441f5e
mov ax, word [esi + edx*2]
sub ax, 0x30
cmp ax, bx
ja 0x441f7a
inc edx
cmp edx, ecx
jb 0x441f4c
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x441f63
sub ecx, edx
sar ecx, 1
cmp ecx, ebx
jae 0x442040
push edi
call fcn.00429e44
pop ecx
push 2
mov edi, eax
mov ebx, edx
push 8
lea eax, [esp + 0x18]
add edi, 0xab5b7200
push eax
push 0
adc ebx, 0xffffffff
call dword [sym.imp.bcrypt.dll_BCryptGenRandom]
test eax, eax
je 0x441fb5
call dword [sym.imp.KERNEL32.DLL_GetTickCount64]
mov ecx, eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
jmp 0x441fb9
mov ecx, dword [esp + 0x10]
and ecx, 0x1ffffff
xor eax, eax
or ecx, ebx
or eax, edi
or ecx, 0x44000000
push ecx
push eax
push str._I64u
push 0xffffffffffffffff
push 0xff
push esi
call fcn.00401e4a
add esp, 0x18
mov ebx, reloc.OLEAUT32.dll_SysReAllocString
mov ecx, ebx
call fcn.00403a97
test al, al
jne 0x441ffd
push ecx
mov edx, ebp
mov ecx, ebx
call fcn.00403a3f
pop ecx
push ecx
push esi
push ecx
push 0x467fd0
mov edx, ebp
mov ecx, ebx
call fcn.004039b8
add esp, 0x10
mov edi, SysReAllocStringLen
mov ecx, edi
call fcn.00403a97
test al, al
jne 0x44202c
push ecx
mov edx, ebp
mov ecx, edi
call fcn.00403a3f
pop ecx
push ecx
push esi
push ecx
push 0x467fd0
mov edx, ebp
mov ecx, edi
call fcn.004039b8
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10c
ret