Function at 0x1000c190
Capabilities:
Check os version
Encode data using xor
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10045d80
mov eax, dword fs:[0]
push eax
sub esp, 0x11c
mov eax, dword [0x100571c4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
push esi
call dword [sym.imp.KERNEL32.dll_DisableThreadLibraryCalls]
sub dword [ebp + 0xc], 1
jne 0x1000c839
push 0x94
lea eax, [ebp - 0x128]
mov dword [0x101a03bc], esi
push 0
push eax
call fcn.1002aef0
add esp, 0xc
mov dword [ebp - 0x128], 0x94
lea eax, [ebp - 0x128]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [ebp - 0x124], 6
ja 0x1000c21f
cmp dword [ebp - 0x120], 1
ja 0x1000c21f
mov byte [0x1019d8d0], 1
jmp 0x1000c22a
mov ecx, dword [0x101a03bc]
call fcn.1001dd00
push 0x1f278ef7
lea ecx, [ebp - 0x94]
call fcn.100132f0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
xorps xmm0, xmm0
mov word [ebp - 0x8c], 0
push 0x397da6b2
lea ecx, [ebp - 0x40]
movq qword [ebp - 0x94], xmm0
mov esi, eax
mov byte [ebp - 0x8a], 0
call fcn.10013380
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x1000c299
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x74696e49
push eax
push esi
mov byte [ebp - 0x38], 0
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x3c], 0
mov byte [ebp - 0x38], 0
jmp 0x1000c2bc
push 0x5cca9113
lea ecx, [ebp - 0x40]
call fcn.100133f0
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
xorps xmm0, xmm0
mov word [ebp - 0x38], 0
movq qword [ebp - 0x40], xmm0
call eax
push 0xff
push 0x1b
lea edx, [ebp - 0x30]
mov dword [ebp - 0x30], 0xffffffa1
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x28], 0xffff8b32
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x20], 0x78ffffff
mov dword [ebp - 0x1c], 0x8bffff89
mov word [ebp - 0x18], 0x8ff
mov byte [ebp - 0x16], 0x51
call fcn.1001b620
add esp, 8
test eax, eax
je 0x1000c7c9
mov eax, dword [eax + 1]
lea edx, [ebp - 0x34]
push 0xff
push 0x21
mov dword [0x1019db9c], eax
mov dword [ebp - 0x34], 0xffffffa1
mov dword [ebp - 0x30], 0xffff89ff
mov dword [ebp - 0x2c], 0x83ffffff
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x24], 0xffff02ff
mov dword [ebp - 0x20], 0xffffff83
mov dword [ebp - 0x1c], 0x7404ffff
mov dword [ebp - 0x18], 0x6affebff
mov byte [ebp - 0x14], 0
call fcn.1001b620
mov edi, dword [sym.imp.KERNEL32.dll_TerminateProcess]
add esp, 8
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [0x1019dba0], eax
test eax, eax
je 0x1000c381
mov eax, dword [eax + 1]
mov dword [0x1019dba0], eax
jmp 0x1000c3cc
mov edx, 0xba
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + 0x10050c50]
xor al, dl
mov byte [ebp + ecx - 0x24], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xf
jb 0x1000c390
lea eax, [ebp - 0x24]
mov byte [ebp - 0x15], 0
push eax
push 0
push 0x1019dc18
call fcn.100153a0
add esp, 0xc
push 0
call esi
push eax
call edi
jmp dword [pe_dos_header]
push 0xff
push 0x11
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], 0xffffff66
mov dword [ebp - 0x20], 0xff66ffff
mov dword [ebp - 0x1c], 0xff8b24ff
mov dword [ebp - 0x18], 0xffffffff
mov byte [ebp - 0x14], 0x51
call fcn.1001b620
add esp, 8
mov dword [0x1019dbc4], eax
test eax, eax
je 0x1000c411
mov eax, dword [eax + 2]
mov dword [0x1019dbc4], eax
jmp 0x1000c441
mov eax, 0x10050c60
lea ecx, [ebp - 0x40]
sub eax, 0x575d72e6
push eax
call fcn.10013470
push eax
push 0
push 0x1019dc18
call fcn.100153a0
add esp, 0xc
push 0
call esi
push eax
call edi
jmp dword [pe_dos_header]
push 0xff
push 0x19
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0xffff85dd
mov dword [ebp - 0x28], 0x58d9ffff
mov dword [ebp - 0x24], 0xd9c4eb04
mov dword [ebp - 0x20], 0xffdcffff
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x18], 0x9768
mov byte [ebp - 0x14], 0
call fcn.1001b620
add esp, 8
mov dword [0x1019fc98], eax
test eax, eax
je 0x1000c4e9
lea ecx, [eax + 9]
mov dword [0x1019fc5c], ecx
cmp byte [eax], 0xe9
jne 0x1000c4d6
push 0x66765b82
lea ecx, [ebp - 0x30]
call fcn.100134e0
push 0xbb8
push eax
push ecx
mov edx, 2
mov dword [ebp - 4], 0
mov ecx, 0x1019e0a8
call fcn.1001c800
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
call fcn.1001c390
mov eax, dword [0x1019fc98]
push 6
mov edx, 0x10006740
mov ecx, eax
call fcn.1001b500
add esp, 4
jmp 0x1000c52a
push 0x66765b82
lea ecx, [ebp - 0x30]
call fcn.100134e0
push 0xbb8
push eax
push ecx
mov edx, 2
mov dword [ebp - 4], 1
mov ecx, 0x1019e0a8
call fcn.1001c800
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
push 0
call esi
push eax
call edi
jmp dword [pe_dos_header]
push 0xff
push 0x47
lea edx, [ebp - 0x88]
mov dword [ebp - 0x88], 0xffffffff
mov dword [ebp - 0x84], 0xffffe8ff
mov dword [ebp - 0x80], 0xffe8ffff
mov dword [ebp - 0x7c], 0x8bffffff
mov dword [ebp - 0x78], 0xffffe8c8
mov dword [ebp - 0x74], 0xffe8ffff
mov dword [ebp - 0x70], 0xe8ffffff
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x68], 0xffffffe8
mov dword [ebp - 0x64], 0xffffe8ff
mov dword [ebp - 0x60], 0xffe8ffff
mov dword [ebp - 0x5c], 0xe8ffffff
mov dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x54], 0xffffffe8
mov dword [ebp - 0x50], 0xe8c88bff
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x48], 0xffffffe8
mov word [ebp - 0x44], 0x8bff
mov byte [ebp - 0x42], 0xc8
call fcn.1001b620
mov esi, eax
add esp, 8
mov dword [0x1019fc4c], esi
test esi, esi
je 0x1000c63e
mov dword [0x1019fc48], esi
mov edx, 0x10006940
mov ecx, dword [esi + 1]
add ecx, 5
mov dword [0x1019fc68], esi
add ecx, esi
mov dword [0x1019fc48], ecx
lea ecx, [esi + 0x16]
mov eax, dword [esi + 1]
add eax, 5
mov dword [0x1019fc94], ecx
add eax, esi
mov dword [0x1019fc68], eax
mov eax, dword [ecx + 1]
add ecx, 5
add eax, ecx
lea ecx, [esi + 5]
mov dword [0x1019fc94], eax
mov dword [0x1019fc48], ecx
mov eax, dword [ecx + 1]
add eax, 5
mov dword [0x1019fc60], ecx
add eax, ecx
mov ecx, esi
push 5
mov dword [0x1019fc48], eax
call fcn.1001b500
add esp, 4
jmp 0x1000c648
mov ecx, str.SS6_Attack_Speed
call fcn.1001b6e0
push 0xfe
push 0xb
lea edx, [ebp - 0x40]
mov dword [ebp - 0x40], 0xfefefe83
mov dword [ebp - 0x3c], 0x74fffefe
mov word [ebp - 0x38], 0x6afe
mov byte [ebp - 0x36], 0x1a
call fcn.1001b620
add esp, 8
mov dword [0x1019dba4], eax
test eax, eax
je 0x1000c685
mov eax, dword [eax + 2]
mov dword [0x1019dba4], eax
jmp 0x1000c68f
mov ecx, str.SS6_InDex_PLayer_Monster
call fcn.1001b6e0
push 0xff
push 0x17
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x8e68
mov dword [ebp - 0x28], 0xc16800
mov dword [ebp - 0x24], 0xff8d0000
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x1c], 0xffffffe8
mov word [ebp - 0x18], 0x6aff
mov byte [ebp - 0x16], 2
call fcn.1001b620
add esp, 8
test eax, eax
je 0x1000c7b6
lea ecx, [eax + 0x47]
mov dword [0x1019fc38], ecx
mov edx, dword [ecx + 1]
add edx, 5
add edx, ecx
lea ecx, [edx + 0xa]
mov dword [0x1019fc38], edx
mov dword [0x1019fc50], ecx
mov esi, dword [ecx + 1]
add ecx, 5
add esi, ecx
lea ecx, [esi + 0x2d]
mov dword [0x1019fc50], esi
mov dword [0x1019fc34], ecx
mov eax, dword [ecx + 1]
add ecx, 5
add eax, ecx
lea ecx, [edx + 0x25]
mov dword [0x1019fc34], eax
mov dword [0x1019fc64], ecx
mov eax, dword [ecx + 1]
add eax, 5
mov dword [0x1019d8c4], 0x10006520
add eax, ecx
mov dword [0x1019fc64], eax
cmp byte [edx], 0x55
je 0x1000c74a
call fcn.1001c390
mov esi, dword [0x1019fc50]
cmp byte [esi], 0x55
je 0x1000c754
call fcn.1001c390
mov eax, dword [0x1019fc64]
cmp byte [eax], 0x55
je 0x1000c763
call fcn.1001c390
sub esp, 8
push 0
push 0x1000c100
call fcn.1001dda0
call fcn.10006570
call fcn.10016510
push ecx
call fcn.10016550
call fcn.100166f0
mov ecx, dword [0x1019fc50]
push 0x76
call fcn.1001b470
mov ecx, dword [0x1019fc64]
push 0x1e0
call fcn.1001b470
mov ecx, dword [0x1019fc38]
push 0x33
call fcn.1001b470
add esp, 0xc
jmp 0x1000c81b
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call edi
jmp dword [pe_dos_header]
mov edx, 0x82
xor ecx, ecx
mov al, byte [ecx + 0x10050cb4]
xor al, dl
mov byte [ebp + ecx - 0x24], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xf
jb 0x1000c7d0
lea eax, [ebp - 0x24]
mov byte [ebp - 0x15], 0
push eax
push 0
push 0x1019dc18
call fcn.100153a0
add esp, 0xc
xorps xmm0, xmm0
movups xmmword [ebp - 0x24], xmm0
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp dword [pe_dos_header]
sub esp, 8
push 0
push 0x10006c80
call fcn.1001dda0
sub esp, 8
push 0
push 0x1000b1c0
call fcn.1001dda0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10027e1f
mov esp, ebp
pop ebp
ret 0xc