Function at 0x10040ecf
Capabilities:
Get memory capacity

Disassembly:
mov eax, 0x1006262c
call fcn.100608e8
sub esp, 0xf8
mov dword [ebp - 0x5c], edx
mov byte [ebp - 0x54], cl
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
test cl, cl
je 0x100417a2
mov dword [ebp - 0x18], 0x3af
xor ebx, ebx
cmp dword [ebp - 0x18], 0x6a4
mov edi, 0x1007cdd8
jle 0x10040f3e
mov esi, ebx
mov ecx, ebx
mov dword [ebp - 0x20], ebx
mov eax, esi
shl eax, cl
mov ecx, edi
cdq
push edx
push eax
call fcn.10005d27
mov ecx, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x20], ecx
cmp ecx, 0x3b47
jl 0x10040f11
inc esi
cmp esi, 0x3b0d
jl 0x10040f0c
push ebx
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
xor eax, eax
mov dword [ebp - 0xb0], 7
mov dword [ebp - 0xb4], ebx
mov word [ebp - 0xc4], ax
mov dword [ebp - 4], ebx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x18], 0x13f
jge 0x10040f96
mov edx, str.sbcc_qiawhwxji_eur_xwbjfqhl_gxpk_kpi_uezy_ohcslyqdf_wxbabfnp_yae_dzhus_wzpalpm_rnuiotdc_jfvrc
mov ecx, edi
call fcn.100089dc
jmp 0x10040f96
lea eax, [ebp - 0x5c]
mov dword [ebp - 4], ebx
push eax
push ecx
lea eax, [ebp - 0xc4]
mov cl, 1
push 0x61b0
push eax
call fcn.10041972
mov dword [ebp - 0x40], 0x53d06ce1
add esp, 0x10
mov dword [ebp - 0x2c], 0xd21dfe4b
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x38], 0x2cd
cmp dword [ebp - 0x38], 0x42b
jle 0x10041030
mov dword [ebp - 0x34], ebx
mov ecx, ebx
mov dword [ebp - 0x50], 0x5745
mov dword [ebp - 0x20], ecx
mov esi, ebx
mov eax, ebx
mov dword [ebp - 0x18], ebx
add eax, esi
and eax, ecx
mov ecx, edi
cdq
push edx
push eax
call fcn.10005d27
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x73a9
jl 0x10040fef
inc esi
cmp esi, 0x5df6
jl 0x10040fea
mov esi, dword [ebp - 0x34]
add ecx, esi
dec dword [ebp - 0x50]
mov dword [ebp - 0x20], ecx
jne 0x10040fe8
inc esi
mov dword [ebp - 0x34], esi
cmp esi, 0x6d66
jl 0x10040fdc
mov dword [ebp - 0x30], 0x1c03809d
mov byte [ebp - 4], 3
cmp dword [ebp - 0x38], 0x1e6
jge 0x10041073
mov edx, str.pvx_rqiochqs_qgh_bjybhztvq_ylkpyyri_ryt
mov ecx, edi
call fcn.100089dc
jmp 0x10041073
mov dword [ebp - 4], ebx
mov dword [ebp - 0x30], 0xfffffffc
mov dword [ebp - 0x30], 0xcd9d75
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x24], 0x57e8
cmp dword [ebp - 0x24], 0x5b73
jle 0x100410f8
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x50], 0x3c0
mov esi, dword [ebp - 0x20]
mov eax, ebx
mov dword [ebp - 0x34], eax
add eax, esi
mov dword [ebp - 0x38], 0x2eb8
mov dword [ebp - 0x30], eax
mov esi, eax
mov eax, esi
mov ecx, edi
cdq
push edx
push eax
call fcn.10005d27
dec esi
dec dword [ebp - 0x38]
jne 0x100410be
mov eax, dword [ebp - 0x34]
mov esi, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x36bd
jl 0x100410b0
mov esi, dword [ebp - 0x18]
add dword [ebp - 0x20], esi
dec dword [ebp - 0x50]
jne 0x100410a8
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x1a07
jl 0x1004109e
mov dword [ebp - 0x30], 7
mov byte [ebp - 4], 5
cmp dword [ebp - 0x24], 0x54ef
jge 0x1004113b
mov edx, str.ldmeqkgjf_dwfyerr_weqmbskik_acyrd_xvqfecdrt_mstc_wdkgbpux
mov ecx, edi
call fcn.100089dc
jmp 0x1004113b
push 1
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], ebx
call fcn.10006036
mov byte [ebp - 4], 7
mov dword [ebp - 0x30], 0xa2ff
mov dword [ebp - 0x24], 0xfffe
mov dword [ebp - 0x28], ebx
jmp 0x10041173
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x100], 0xffffffff
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 4
jl 0x10041162
lea eax, [ebp - 0x28]
push eax
push 1
push 0x4cca
push 0x6c2a
push ecx
push ecx
lea ecx, [ebp - 0x8c]
call fcn.1004027a
xor ecx, ecx
mov dword [ebp - 0x28], ebx
add esp, 0x18
inc ecx
jmp 0x100411ae
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x90], ecx
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ecx
jl 0x100411a1
cmp dword [ebp - 0x40], ebx
je 0x100411ce
lea eax, [ebp - 0x41]
mov byte [ebp - 0x41], bl
push eax
push ecx
push ebx
call fcn.10040090
add esp, 0xc
jmp 0x10041276
push 4
lea ecx, [ebp - 0x74]
call fcn.10006036
push 0xfffffffffffffff7
pop esi
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 8
push eax
push 0x76f6
mov dword [ebp - 0x40], 0x1836ccb0
lea edx, [ebp - 0x74]
push ecx
mov dword [ebp - 0x40], 0x39cb61d2
mov dword [ebp - 0x40], esi
mov dword [ebp - 0xac], 0x8aa2
push ebx
call fcn.10041eb1
add esp, 0x10
mov dword [ebp - 0x4c], ebx
jmp 0x10041222
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0xc8], esi
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 1
jl 0x10041215
push ebx
lea eax, [ebp - 0xac]
xor dl, dl
push 0x4a02
push eax
mov ecx, 0x5e15
call fcn.100418b1
add esp, 0xc
mov edx, 0x2cd1
push 0x17ea
push 0x7c39
push ecx
push 1
call fcn.10041eb1
add esp, 0x10
cmp dword [ebp - 0x74], 0
je 0x10041276
push dword [ebp - 0x74]
call fcn.10048c99
pop ecx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
mov eax, dword [ebp - 0x2c]
add eax, 0x4257
jne 0x1004128c
cmp dword [ebp - 0xfc], ebx
jne 0x1004128c
mov edx, ebx
jmp 0x1004128f
xor edx, edx
inc edx
mov eax, dword [ebp - 0x30]
xor ecx, ecx
inc ecx
sub ecx, eax
je 0x1004129c
mov eax, dword [ebp - 0x24]
lea eax, [edx - 1]
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x8c], 0
je 0x100412cf
push dword [ebp - 0x8c]
call fcn.10048c99
pop ecx
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], ebx
mov eax, dword [0x108202c4]
test al, 1
jne 0x100412f8
or eax, 1
mov dword [0x108202c4], eax
push 0x7ad
mov byte [ebp - 4], 9
call fcn.10030d8f
pop ecx
mov word [0x108202d8], ax
mov byte [ebp - 4], bl
mov dword [ebp - 0x18], 0x87df2f4a
push 2
mov dword [ebp - 0x2c], 0x6cd8
mov dword [ebp - 0x18], ebx
pop esi
jmp 0x1004131f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe4], 0xfffb
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1004130e
mov byte [ebp - 0x39], bl
cmp byte [ebp - 0x39], 0
je 0x100413e7
mov dword [ebp - 0x34], 0x3bcd
cmp dword [ebp - 0x34], 0x3fb3
jle 0x10041395
mov esi, ebx
mov dword [ebp - 0x38], ebx
mov ecx, ebx
mov dword [ebp - 0x24], ebx
mov eax, esi
mov dword [ebp - 0x2c], ebx
cdq
mov esi, ebx
idiv ecx
mov eax, edx
mov dword [ebp - 0x40], eax
mov ecx, esi
sar eax, cl
mov ecx, edi
cdq
push edx
push eax
call fcn.10005d27
mov eax, dword [ebp - 0x40]
inc esi
cmp esi, 0x269
jl 0x1004135a
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x38]
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 0x425c
jl 0x1004134b
inc esi
mov dword [ebp - 0x38], esi
cmp esi, 0x6b2b
jl 0x10041346
push 2
pop esi
push ecx
push ecx
push ebx
mov edx, 0x3107
mov ecx, 0x4dd7
call fcn.10040224
add esp, 0xc
mov byte [ebp - 4], 0xa
cmp dword [ebp - 0x34], 0x39ad
jge 0x100413e4
mov edx, str.muxjiexh_xsthyx_vjk_bipospzda_ick_jdgnl_wvdqlp
mov ecx, edi
call fcn.100089dc
jmp 0x100413e4
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x18], ebx
jl 0x10041450
push ebx
mov dword [ebp - 0x2c], 0xb2e809b4
mov dl, 1
push 0x20c2
mov dword [ebp - 0x2c], 0xffffffff
mov ecx, 0x44fd
mov dword [ebp - 0x2c], 0x13281d21
push 0x578d
call fcn.100418b1
mov eax, dword [ebp - 0x18]
xor ecx, ecx
add esp, 0xc
mov edx, 0x52c6
mov eax, dword [ebp + eax*4 - 0xe4]
test eax, eax
push 0x3842
sete cl
mov dword [ebp - 0x2c], ecx
xor cl, cl
push 1
call fcn.10040ecf
dec dword [ebp - 0x18]
pop ecx
pop ecx
jns 0x100413f3
mov eax, dword [0x108202c4]
test al, 2
jne 0x10041478
or eax, esi
mov dword [0x108202c4], eax
push 0x2cdd
mov byte [ebp - 4], 0xc
call fcn.10030d8f
pop ecx
mov word [0x108202d0], ax
mov byte [ebp - 4], bl
push esi
lea ecx, [ebp - 0x68]
call fcn.10006036
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x58], 0x638ecf54
mov dword [ebp - 0x18], ebx
jmp 0x100414a1
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x68]
mov dword [eax + ecx*4], 0xb90d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10041491
lea eax, [ebp - 0x68]
mov dl, 1
push eax
lea eax, [ebp - 0x58]
push eax
push 0xe95
call fcn.10040257
add esp, 0xc
lea eax, [ebp - 0x58]
xor dl, dl
mov cl, 1
push 0x251f
push eax
push 0x4c31
push 1
call fcn.100403fc
add esp, 0x10
mov byte [ebp - 4], bl
cmp dword [ebp - 0x68], 0
je 0x100414f4
push dword [ebp - 0x68]
call fcn.10048c99
pop ecx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov edi, dword [ebp - 0x5c]
test edi, edi
je 0x1004160c
push 0x1a
pop esi
call fcn.1004006f
push 0x34
pop ecx
xor edx, edx
div ecx
push 1
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x2c], edx
call fcn.10006036
push 1
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0xe
call fcn.10006036
push ecx
push ecx
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x80]
mov dword [ebp - 0x40], 0x600d5493
lea ecx, [ebp - 0x48]
push 1
call fcn.10040224
add esp, 0xc
mov dword [ebp - 0x48], ebx
jmp 0x10041561
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x9c]
mov dword [eax + ecx*4], 0x12f3
inc dword [ebp - 0x48]
cmp dword [ebp - 0x48], 1
jl 0x1004154e
xor cl, cl
call fcn.10041850
mov edx, dword [ebp - 0x80]
xor eax, eax
cmp dword [edx], 0x9593
setl al
cmp eax, 4
jb 0x1004158b
cmp dword [edx], 0
je 0x1004158b
xor ecx, ecx
inc ecx
jmp 0x1004158d
mov ecx, ebx
sub ecx, dword [edx]
xor eax, eax
cmp ecx, dword [edx]
setle al
xor ecx, ecx
cmp eax, dword [edx]
mov eax, dword [ebp - 0x9c]
setge cl
push eax
sub ecx, dword [eax]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [edx], ecx
call fcn.10048c99
pop ecx
mov byte [ebp - 4], bl
push dword [ebp - 0x80]
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x94], ebx
call fcn.10048c99
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
pop ecx
cmp eax, esi
jge 0x100415ea
movzx edx, word [0x108202d8]
jmp 0x100415f4
cdq
idiv esi
movzx eax, word [0x108202d0]
add edx, eax
lea ecx, [ebp - 0xc4]
push edx
call fcn.10030dbf
dec edi
jne 0x10041502
push 2
pop esi
xor eax, eax
lea ecx, [ebp - 0xd4]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], 0xfffffffb
mov dword [ebp - 0x24], ebx
push 4
call fcn.10006036
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x1c], ebx
jmp 0x10041646
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xdc], 0x24891023
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10041635
mov dword [ebp - 0x1c], ebx
jmp 0x10041661
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa8], 1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10041650
mov dword [ebp - 0x1c], ebx
jmp 0x1004167d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xf0], 1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1004166c
push ecx
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xd4]
call fcn.10041c39
inc dword [ebp - 0xa8]
xor ebx, ebx
pop ecx
mov ecx, dword [ebp - 0xa8]
mov dword [ebp - 0xdc], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setle bl
xor edx, edx
imul ebx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setl dl
xor eax, eax
cmp ebx, edx
setne al
cmp eax, 0x55f992db
jne 0x100416da
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x20]
cmp eax, 1
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
sub edx, 0x5906bb24
cmp edx, eax
setne cl
xor eax, eax
cmp eax, ecx
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 0x5f0e
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp eax, edx
setle cl
xor edx, edx
cmp ecx, 0xffffffff
setl dl
xor ecx, ecx
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
cmp edx, eax
setge cl
cmp ecx, 6
jg 0x10041744
cmp dword [ebp - 0xa8], 0
jne 0x10041744
xor edx, edx
jmp 0x10041747
xor edx, edx
inc edx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setl cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0xd4]
push ecx
setl dl
mov dword [ebp - 0xe8], edx
mov byte [ebp - 4], 0
lea eax, [edx + 0x4bb9]
mov dword [ecx], eax
call fcn.10048c99
pop ecx
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0xc4]
cmp ecx, eax
je 0x10041791
push 0xffffffffffffffff
push 0
push eax
call fcn.10006976
push 0
push 1
lea ecx, [ebp - 0xc4]
call fcn.10006b7b
jmp 0x100417c2
push 0x7ad3
lea eax, [ebp - 0x3a]
mov byte [ebp - 0x3a], 0
push eax
push ecx
mov edx, 0x6910
mov ecx, 0x4fbd
call fcn.10041ef6
add esp, 0xc
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret