Function at 0x1000a160
Capabilities:
Clear file content
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
push ebx
push esi
mov esi, dword [ebp + 0x18]
lea ebx, [ecx + 4]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], esi
push edi
cmp ecx, ebx
jae 0x1000a2c1
mov al, byte [ebp + 0x1b]
lea edi, [ecx - 0x4f]
mov byte [ebp - 1], al
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x14], eax
cmp edi, 5
ja case.0x1000a19b.2
jmp dword [edi*4 + 0x1000a404]
lea eax, [ebp - 0x30]
mov byte [ebp - 0x30], 0
push eax
push 0x1001c593
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 4
push eax
push 0x51
call fcn.100026a0
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x1c], 5
push eax
push 0x1001c5cb
lea eax, [ebp - 0x1c]
push eax
push 0xc2
call fcn.10005410
lea eax, [ebp - 0x27]
mov byte [ebp - 0x27], 0
push eax
push 0x1001c5f1
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 1
push eax
push 0xc2
call fcn.10005410
add esp, 0x30
jmp case.0x1000a19b.2
mov eax, dword [ebp + 0x14]
push dword [eax]
push 0
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, eax
mov dword [ebp - 0x18], esi
jmp case.0x1000a19b.2
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x10]
mov byte [ebp - 0x26], 0
mov byte [ebp - 1], 1
mov eax, dword [eax]
cdq
sub eax, edx
sar eax, 1
lea ecx, [eax + 1]
call fcn.10001530
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov dword [ecx], eax
inc edi
lea ecx, [edi + 0x4f]
cmp ecx, ebx
jb 0x1000a192
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebp + 0x18]
mov dl, byte [ebp - 1]
lea ebx, [ecx + 0x198]
mov dword [ebp - 8], ebx
cmp ecx, ebx
jae case.0x1000a19b.1
mov bh, byte [ebp + 0x1b]
mov bl, byte [ebp + 0x1b]
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
cmp ecx, 0x11f
ja 0x1000a3ce
je 0x1000a33b
mov eax, ecx
sub eax, 0x53
je 0x1000a322
sub eax, 0x66
jne 0x1000a3e2
mov eax, dword [ebp + 0x10]
mov edx, esi
sub edx, dword [ebp + 0x14]
cmp edx, dword [eax]
jge 0x1000a2e7
mov al, byte [esi]
cmp al, 0x61
sbb cl, cl
and cl, 0xd9
add cl, 0x57
sub al, cl
test bh, bh
je 0x1000a2cf
mov bl, al
shl bl, 4
xor bh, bh
jmp 0x1000a2d8
mov dl, byte [ebp + 0x1b]
mov edi, dword [ebp + 0x18]
mov byte [ebp - 1], dl
mov dword [ebp - 0x14], edi
jmp 0x1000a257
or bl, al
mov bh, 1
je 0x1000a2d8
mov byte [edi], bl
inc edi
mov eax, dword [ebp + 0x10]
inc edx
inc esi
cmp edx, dword [eax]
jl 0x1000a2a6
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], edi
lea eax, [ebp - 0x30]
push eax
push 0x100
push 0
push 4
push 0
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
mov eax, dword [ebp - 8]
mov byte [edi], 0
jne 0x1000a31a
xor dl, dl
mov byte [ebp - 1], dl
jmp 0x1000a3e5
mov dl, byte [ebp - 1]
jmp 0x1000a3e5
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
mov bh, 1
movups xmmword [ebp - 0x54], xmm0
movups xmmword [ebp - 0x44], xmm0
jmp 0x1000a3e2
test dl, dl
je 0x1000a3e5
mov esi, dword [ebp - 0x1c]
mov eax, 6
xor edi, edi
mov dword [ebp - 0xc], eax
cmp edi, 5
ja case.default.0x1000a355
jmp dword [edi*4 + 0x1000a41c]
push esi
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
jmp 0x1000a3b7
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1000a3b7
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
jmp 0x1000a3b7
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
jmp 0x1000a3b7
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x20], ecx
jmp case.default.0x1000a355
xor edx, edx
mov eax, 0x64
div dword [ebp - 0x20]
lea eax, [edx + 0x400]
push eax
mov eax, 0x64
sub eax, edx
push eax
push 0
push 0xf001f
push esi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xc]
inc edi
sub eax, 1
mov dword [ebp - 0xc], eax
jne 0x1000a350
mov esi, dword [ebp - 0x10]
mov ecx, dword [ebp + 0x18]
mov dl, byte [ebp - 1]
jmp 0x1000a3e2
cmp ecx, 0x185
jne 0x1000a3e5
mov eax, edi
mov edi, dword [ebp + 8]
sub eax, dword [edi]
mov edi, dword [ebp + 0xc]
mov dword [edi], eax
mov eax, dword [ebp - 8]
mov edi, dword [ebp - 0x14]
add ecx, 0x66
mov dword [ebp + 0x18], ecx
cmp ecx, eax
jb 0x1000a274
mov esi, dword [ebp - 0x18]
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret