Function at 0x4a80d0
Capabilities:
Get system information on windows

Disassembly:
mov eax, dword [0x4cf014]
mov ecx, dword [0x4cefd4]
sub esp, 0x24
push esi
push edi
push 0x555
push 0x4d9750
lea edx, [eax + ecx + 0xd506]
push 0
mov esi, 9
mov dword [0x4cf014], edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [0x4cefd4], eax
call fcn.0040aae0
mov ecx, dword [0x4cefe4]
mov edx, dword [0x4cf024]
lea edx, [edx + ecx - 2]
mov dword [0x4cefd4], eax
mov dword [0x4cf014], edx
mov edx, dword [0x4cf020]
movzx eax, ax
sub edx, eax
sub edx, ecx
mov ecx, dword [0x4cefec]
mov eax, 3
mov dword [0x4cefe4], edx
mov dword [0xde74c4], eax
lea esp, [esp]
mov edx, dword [eax*4 + 0x4cefe8]
imul esi, edx
cmp esi, ecx
je 0x4a8166
add eax, 1
cmp eax, 7
jl 0x4a8150
push ebx
mov dword [0xde74c4], eax
push ebp
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
movzx edx, al
mov dword [0x4cf024], eax
mov eax, dword [0x4cf014]
push str.Then_valley_Mi
sub eax, edx
push 0
sub eax, 5
push 0x1f0001
mov dword [0x4cf020], ecx
mov dword [0x4cefe4], eax
call dword [sym.imp.KERNEL32.dll_OpenMutexA]
mov ecx, dword [0x4cefe4]
mov ebx, dword [0x4cf024]
mov edx, dword [0x4cefd4]
mov edi, dword [0x4ceff0]
cmp edi, 0x82990
lea eax, [ebx + ecx]
movzx ecx, byte [0x4cf018]
lea ebp, [eax + edx - 0x46]
mov eax, dword [0x4cf020]
lea ecx, [ecx + eax + 0x5b]
mov dword [0x4cefe4], ecx
jne 0x4a8201
mov eax, dword [0x4cefec]
imul eax, ecx
lea ecx, [eax + eax + 0xd506]
mov dword [0x4cefe4], ecx
mov eax, ecx
imul eax, eax, 0x4d
add eax, edx
cmp edi, 0x82990
mov dword [0x4cf020], eax
jne 0x4a822a
mov esi, dword [0x4cefec]
imul esi, eax
lea eax, [esi + esi + 0xd506]
mov dword [0x4cf020], eax
mov eax, ecx
sub eax, edx
movzx edx, word [esp + 0x3c]
mov esi, ebx
sub esi, edx
sub eax, 0x1a
sub esi, ebp
cmp edi, 0x82990
mov edi, dword [0x4cefec]
mov dword [0x4cefd4], eax
jne 0x4a8261
mov edx, edi
imul edx, ecx
lea ecx, [edx + edx + 0xd506]
mov dword [0x4cefe4], ecx
mov edx, 3
mov dword [0xde74c4], edx
lea esp, [esp]
mov ebp, dword [edx*4 + 0x4cefe8]
imul eax, ebp
cmp eax, edi
je 0x4a8286
add edx, 1
cmp edx, 7
jl 0x4a8270
mov dword [0xde74c4], edx
mov edx, dword [0x4cf000]
cmp edx, 4
je 0x4a82cb
cmp edx, 0x46
je 0x4a82da
cmp edx, 0xc7
je 0x4a82b5
sub eax, ecx
lea ecx, [eax + eax + 0xfa29]
mov dword [0x4cefe4], ecx
jmp 0x4a82da
mov edx, ebx
sub edx, ecx
sub edx, eax
add edx, 0xfa6d
mov ecx, edx
mov dword [0x4cefe4], ecx
jmp 0x4a82da
movzx edx, cx
sub eax, edx
sub eax, ebx
mov ebx, eax
mov dword [0x4cf024], ebx
cmp dword [0x4cf004], ebx
jae 0x4a82e8
mov dword [0x4ceff4], ecx
imul ecx, ecx, 0x4d
add ecx, ebx
mov dword [0x4cf014], ecx
call fcn.004a7d20
mov edi, dword [0x4cf024]
cmp dword [0x4cf004], edi
mov edx, dword [0x4cefe4]
pop ebp
pop ebx
jae 0x4a8314
mov dword [0x4ceff4], edx
mov ecx, dword [0x4cf000]
cmp ecx, 4
lea eax, [edi + edx - 2]
je 0x4a834f
cmp ecx, 0x46
je 0x4a835f
cmp ecx, 0xc7
je 0x4a833b
sub eax, edx
lea edx, [eax + eax + 0xfa29]
jmp 0x4a835f
mov ecx, dword [0x4cf020]
sub ecx, edx
sub ecx, eax
add ecx, 0xfa6d
mov edx, ecx
jmp 0x4a835f
movzx ecx, dx
sub eax, ecx
sub eax, dword [0x4cf020]
mov dword [0x4cf020], eax
mov eax, edx
imul eax, eax, 0x4d
movzx ecx, si
neg ecx
sub ecx, eax
mov eax, 0xa
add dword [eax*4 + 0x4cefe8], ecx
sub eax, 1
cmp eax, 3
jg 0x4a8370
cmp edi, 0x4f6c69ed
mov dword [0xde74c4], eax
jne 0x4a8391
mov eax, 0x8f1d1692
lea eax, [ecx + esi + 0xd506]
mov ecx, dword [0x4cefd4]
mov edi, eax
sub edi, edx
lea ecx, [ecx + eax + 0xd506]
movzx edx, ax
sub edi, ecx
add edi, 0xfa6d
sub esi, edx
sub esi, ecx
mov dword [0x4cefe4], edi
pop edi
mov dword [0x4cf014], eax
mov dword [0x4cefd4], esi
mov eax, 1
pop esi
add esp, 0x24
ret 0xc