Function at 0x4030a5
Capabilities:
Create thread
Get memory capacity

Disassembly:
sub esp, 0x18
push ebx
push esi
push edi
push 0x423158
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
push 0x64
pop ebx
sub ebx, dword [0x42315c]
xor esi, esi
push esi
mov edi, 0xffa80
mov dword [esp + 0x20], ebx
push edi
push dword [0x42316c]
push dword [0x423168]
call fcn.00407520
mov dword [esp + 0x20], eax
cmp dword [0x421004], esi
je 0x403542
cmp eax, dword [0x4237a8]
je 0x403534
push 0x417a80
push ebx
push eax
push 0x423050
push 0x64
push 0x4231c8
mov dword [0x4237a8], eax
call fcn.0040723c
add esp, 0x18
xor edx, edx
mov eax, edx
cmp eax, 0x12c
jae 0x4035a2
mov byte [eax + 0x423678], dl
inc eax
cmp eax, 0xfe
jle 0x40311d
push ebp
mov ebp, dword [0x423048]
push 0x63
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edx
pop eax
cmp dword [0x423154], edx
jne 0x403244
mov ecx, dword [0x423168]
mov eax, dword [0x42316c]
add ecx, 0x7fd40
push edx
push edi
adc eax, edx
push eax
push ecx
call fcn.00407520
mov ecx, dword [0x423178]
mov edi, eax
mov eax, dword [0x42317c]
add ecx, 0x7fd40
push 0
push 0xffa80
adc eax, 0
mov dword [0x423168], edi
push eax
mov esi, edx
push ecx
mov dword [0x42316c], esi
call fcn.00407520
mov ecx, dword [0x423160]
mov dword [0x423178], eax
add ecx, 0x7fd40
mov eax, dword [0x423164]
push 0
push 0xffa80
adc eax, 0
mov dword [0x42317c], edx
push eax
push ecx
call fcn.00407520
push 0
push 0x2710
push esi
push edi
mov dword [0x423160], eax
mov dword [0x423164], edx
call fcn.00407590
push 0
push 0x3e8
push edx
push eax
call fcn.00407520
push 0
push 0x3e8
push esi
push edi
mov dword [esp + 0x2c], eax
call fcn.00407590
push 0
push 0x64
push edx
push eax
call fcn.00407520
push 0
push 0x64
push esi
push edi
mov dword [esp + 0x28], eax
call fcn.00407590
push 0
push 0xa
push edx
push eax
call fcn.00407520
push 0
push 0xa
push esi
push edi
mov dword [esp + 0x24], eax
call fcn.00407590
mov ecx, dword [esp + 0x14]
mov edi, eax
jmp 0x403290
cmp ebx, 0x64
push 0xa
cmovae ebx, eax
xor edx, edx
pop ecx
mov eax, ebx
mov dword [esp + 0x20], ebx
div ecx
mov edi, ebx
mov ecx, eax
imul eax, ecx, 0xa
mov dword [esp + 0x14], ecx
sub edi, eax
cmp ebp, 2
jne 0x403290
mov word [0x4236ce], 0x4040
mov byte [0x4236c7], 0x40
mov byte [0x4236be], 4
mov byte [0x4236b6], 0x40
mov word [0x4236ae], 0x4040
xor esi, esi
sub ebp, esi
je 0x40339d
sub ebp, 1
je 0x403394
sub ebp, 1
jne 0x4033a6
mov ebx, dword [esp + 0x14]
mov ebp, 0x4236e3
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x403318
cmp dword [esp + 0x1c], eax
jne 0x403318
lea eax, [esp + 0x10]
push esi
test ebx, ebx
je 0x40330c
push ebx
push eax
call fcn.00403eaf
add esp, 0xc
mov ecx, ebp
sub ecx, dword [0x423154]
mov ax, word [eax]
push esi
push esi
mov word [ecx - 1], ax
lea eax, [esp + 0x18]
push edi
push eax
call fcn.00403eaf
add esp, 0xc
push eax
mov eax, 0x4236e4
sub eax, dword [0x423154]
push eax
call fcn.00405537
add esp, 0xc
jmp 0x40337c
push edi
push eax
call fcn.00403eaf
add esp, 0xc
jmp 0x40336e
push esi
push esi
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00403eaf
add esp, 0xc
push eax
mov eax, 0x4236e0
sub eax, dword [0x423154]
push eax
call fcn.00405537
add esp, 0xc
lea eax, [esp + 0x10]
push esi
push esi
push edi
push eax
call fcn.00403eaf
add esp, 0xc
push eax
mov eax, 0x4236e5
sub eax, dword [0x423154]
push eax
call fcn.00405537
push esi
lea eax, [esp + 0x20]
push ebx
push eax
call fcn.00403eaf
add esp, 0x18
mov ax, word [eax]
mov ecx, ebp
sub ecx, dword [0x423154]
mov word [ecx], ax
sub ebp, 8
inc esi
cmp ebp, 0x4236a3
jg 0x4032b5
mov ebx, dword [esp + 0x20]
xor esi, esi
jmp 0x4033a6
push edi
push ecx
call fcn.004055d4
jmp 0x4033a4
push edi
push ecx
call fcn.00405d44
pop ecx
pop ecx
movd xmm0, ebx
mov eax, ebx
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mov dword [0x423688], 0x33333303
mov dword [0x42368c], 0x30333333
mov dword [0x423680], 0x33333303
mov dword [0x423684], 0x30333333
pop ebp
addsd xmm0, qword [eax*8 + 0x418e90]
cvtpd2ps xmm0, xmm0
comiss xmm0, dword [0x418e38]
jbe 0x403400
mov byte [0x423688], 6
mov byte [0x423680], 6
comiss xmm0, dword [0x418e40]
jbe 0x403417
mov byte [0x423689], 0x63
mov byte [0x423681], 0x63
comiss xmm0, dword [0x418e44]
jbe 0x40342e
mov byte [0x423689], 0x66
mov byte [0x423681], 0x66
comiss xmm0, dword [0x418e4c]
jbe 0x403445
mov byte [0x42368a], 0x73
mov byte [0x423682], 0x73
comiss xmm0, dword [0x418e50]
jbe 0x40345c
mov byte [0x42368a], 0x77
mov byte [0x423682], 0x77
comiss xmm0, dword [0x418e54]
jbe 0x403473
mov byte [0x42368b], 0x73
mov byte [0x423683], 0x73
comiss xmm0, dword [0x418e5c]
jbe 0x40348a
mov byte [0x42368b], 0x77
mov byte [0x423683], 0x77
comiss xmm0, dword [0x418e60]
jbe 0x4034a1
mov byte [0x42368c], 0x43
mov byte [0x423684], 0x43
comiss xmm0, dword [0x418e68]
jbe 0x4034b8
mov byte [0x42368c], 0x44
mov byte [0x423684], 0x44
comiss xmm0, dword [0x418e6c]
jbe 0x4034cf
mov byte [0x42368d], 0x43
mov byte [0x423685], 0x43
comiss xmm0, dword [0x418e70]
jbe 0x4034e6
mov byte [0x42368d], 0x44
mov byte [0x423685], 0x44
comiss xmm0, dword [0x418e78]
jbe 0x4034fd
mov byte [0x42368e], 0x43
mov byte [0x423686], 0x43
comiss xmm0, dword [0x418e7c]
jbe 0x403514
mov byte [0x42368e], 0x44
mov byte [0x423686], 0x44
comiss xmm0, dword [0x418e84]
jbe 0x40352b
mov byte [0x42368f], 0x40
mov byte [0x423687], 0x40
call fcn.0040676d
mov eax, dword [esp + 0x20]
cmp ebx, dword [0x4237a4]
je 0x403542
mov dword [0x4237a4], ebx
cmp dword [0x42319c], 0
je 0x403598
cmp eax, dword [0x4231a0]
jge 0x403598
push esi
push str.RAMbooster
call dword [sym.imp.USER32.dll_FindWindowW]
test eax, eax
jne 0x403598
imul eax, dword [0x423198], 0xffa80
cmp dword [0x421004], 0
push 0x49
mov dword [0x423570], eax
pop eax
mov word [0x421008], ax
je 0x403598
lea eax, [esp + 0x20]
push eax
push esi
push esi
push 0x403bdd
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateThread]
pop edi
xor eax, eax
pop esi
inc eax
pop ebx
add esp, 0x18
ret
call fcn.00407389
int3