Function at 0x1000bbb0
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call
Get file size
Read .ini file
Read file on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xf0
mov eax, dword [0x1003800c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push 0
push 0x20
push 3
push 0
push 1
push 0x80000000
push str.DataLocalitemmodel.bmd
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
je 0x1000c60b
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
cmp eax, 0x1af14
jne 0x1000c604
push 0
lea eax, [ebp - 0xf0]
mov dword [ebp - 0xf0], 0
push eax
push 0x1af14
push 0x10057454
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1000c604
xor ecx, ecx
nop dword [eax + eax]
mov eax, ecx
shr eax, 8
xor al, 0xca
add al, byte [ecx + 0x10057454]
xor al, cl
xor al, 0x95
mov byte [ecx + 0x10057454], al
inc ecx
cmp ecx, 0x1af14
jb 0x1000bc30
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push str.Data_Local_help.bmd
call esi
push str.Data_Local_discord.bmd
call esi
push str.._LoginScreen.dll
call esi
push str.._Data_Local_effect.bmd
call esi
push str.EntryProc
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x1000bc8b
call eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 0x20
push 0xe611b2
call ebx
push 0x20
push 0x10057454
push 0xe611b2
call fcn.1001c1e0
add esp, 0xc
lea eax, [ebp - 0xf0]
push eax
push dword [ebp - 0xf0]
push 0x20
push 0xe611b2
call ebx
movzx esi, word [0x10057474]
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 2
push 0xe609e4
call ebx
lea eax, [ebp - 0xf0]
mov word [0xe609e4], si
push eax
push dword [ebp - 0xf0]
push 2
push 0xe609e4
call ebx
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 0x11
push 0xe61f70
call ebx
mov eax, dword [0x10057476]
mov ecx, 0xe61f70
mov dword [ecx], eax
mov eax, dword [0x1005747a]
mov dword [ecx + 4], eax
mov eax, dword [0x1005747e]
mov dword [ecx + 8], eax
mov eax, dword [0x10057482]
mov dword [ecx + 0xc], eax
mov al, byte [0x10057486]
mov byte [ecx + 0x10], al
lea eax, [ebp - 0xf0]
push eax
push dword [ebp - 0xf0]
push 0x11
push ecx
call ebx
mov eax, dword [0x10057488]
cmp eax, 3
jne 0x1000bd92
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 1
push 0x4030d4
call ebx
lea eax, [ebp - 0xf0]
mov byte [0x4030d4], 6
push eax
push dword [ebp - 0xf0]
push 1
push 0x4030d4
call ebx
mov eax, dword [0x10057488]
cmp eax, 2
jne 0x1000bdcb
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 1
push 0x4030d4
call ebx
lea eax, [ebp - 0xf0]
mov byte [0x4030d4], 5
push eax
push dword [ebp - 0xf0]
push 1
push 0x4030d4
call ebx
mov eax, dword [0x10057488]
cmp eax, 1
jne 0x1000bdff
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 1
push 0x4030d4
call ebx
lea eax, [ebp - 0xf0]
mov byte [0x4030d4], 4
push eax
push dword [ebp - 0xf0]
push 1
push 0x4030d4
call ebx
call fcn.1000d920
call fcn.10012f40
call fcn.10014e80
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 1
push 0x4d128f
call ebx
lea eax, [ebp - 0xf0]
mov byte [0x4d128f], 0x1d
push eax
push dword [ebp - 0xf0]
push 1
push 0x4d128f
call ebx
push 0x100147f0
push 0x4d13c2
push 0xe9
call fcn.10018b80
push 0x10014950
push 0x4d2782
push 0xe9
call fcn.10018b80
push 0x10014a70
push 0x830c3a
push 0xe9
call fcn.10018b80
add esp, 0x24
call fcn.10003990
push 0x10010200
push 0x82ac07
push 0xe8
call fcn.10018b80
push 0x10007d50
push 0x82b772
push 0xe8
call fcn.10018b80
push 0x10010110
push 0x82b3b7
push 0xe8
call fcn.10018b80
push 0x10010110
push 0x82b339
push 0xe8
call fcn.10018b80
push 0x10010110
push 0x82b2cb
push 0xe8
call fcn.10018b80
push 0x10010110
push 0x82b25d
push 0xe8
call fcn.10018b80
add esp, 0x48
push 0x10010110
push 0x82b100
push 0xe8
call fcn.10018b80
push 0x10010110
push 0x82b08b
push 0xe8
call fcn.10018b80
push 0x10010190
push 0x82b1fa
push 0xe8
call fcn.10018b80
push 0x10010190
push 0x82b18b
push 0xe8
call fcn.10018b80
push 0x10010250
push 0x8123d7
push 0xe8
call fcn.10018b80
call fcn.1000fd10
push 0x10006730
push 0x8494b0
push 0xe9
call fcn.10018b80
add esp, 0x48
push 0x10007120
push 0x849730
push 0xe9
call fcn.10018b80
push 0x100077c0
push 0x8499e0
push 0xe9
call fcn.10018b80
push 0x10007c40
push 0x8490f5
push 0xe8
call fcn.10018b80
push 0x10007c90
push 0x848e5d
push 0xe8
call fcn.10018b80
push 0x10007cc0
push 0x848eb2
push 0xe8
call fcn.10018b80
push 0x10007cf0
push 0x848f07
push 0xe8
call fcn.10018b80
add esp, 0x48
push 0x10007d20
push 0x848f4b
push 0xe8
call fcn.10018b80
push 0x10007d50
push 0x849087
push 0xe8
call fcn.10018b80
push 0x10005e00
push 0x5bb0b0
push 0xe9
call fcn.10018b80
push 0x10007e40
push 0x7a87db
push 0xe9
call fcn.10018b80
push 0x10007e20
push 0x7a877e
push 0xe9
call fcn.10018b80
push 0x10007e00
push 0x7a8721
push 0xe9
call fcn.10018b80
add esp, 0x48
push 0x10007de0
push 0x7a86c4
push 0xe9
call fcn.10018b80
push 0x10007dc0
push 0x7a866d
push 0xe9
call fcn.10018b80
push 0x10007db0
push 0x7a83a8
push 0xe8
call fcn.10018b80
push 0x10007d60
push 0x7a83fe
push 0xe8
call fcn.10018b80
push 0x10007d60
push 0x7a846a
push 0xe8
call fcn.10018b80
push 0x10007d60
push 0x7a84bd
push 0xe8
call fcn.10018b80
add esp, 0x48
push 0x10006020
push 0x772960
push 0xe8
call fcn.10018b80
push 0x10006040
push 0x7729b3
push 0xe8
call fcn.10018b80
push 0x10011a70
push 0x5f8c50
push 0xe9
call fcn.10018b80
push 0x10011620
push 0x50d905
push 0xe8
call fcn.10018b80
push 0x100114b0
push 0x5d01d0
push 0xe9
call fcn.10018b80
push 0x100115a0
push 0x5cefe7
push 0xe9
call fcn.10018b80
add esp, 0x48
push 0x100114f0
push 0x5cd419
push 0xe9
call fcn.10018b80
add esp, 0xc
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 1
push 0x576048
call ebx
lea eax, [ebp - 0xf0]
mov byte [0x576048], 8
push eax
push dword [ebp - 0xf0]
push 1
push 0x576048
call ebx
push 0x10013240
push 0x7d266e
push 0xe8
call fcn.10018b80
push 0x10013210
push 0x772460
push 0xe8
call fcn.10018b80
push 0x10013420
push 0x5fad70
push 0xe9
call fcn.10018b80
push 0x100134c0
push 0x5748ff
push 0xe9
call fcn.10018b80
push 0x10013510
push 0x574667
push 0xe9
call fcn.10018b80
push 0x10013460
push 0x574671
push 0xe9
call fcn.10018b80
add esp, 0x48
push 0x100135f0
push 0x574750
push 0xe9
call fcn.10018b80
push 0x100135b0
push 0x574d3d
push 0xe9
call fcn.10018b80
push 0x572370
push 0x572346
push 0xe9
call fcn.10018b80
push 0x574667
push 0x57464e
push 0xe9
call fcn.10018b80
push 0x10014120
push 0x664267
push 0xe8
call fcn.10018b80
push 0x10013d70
push 0x7dd304
push 0xe8
call fcn.10018b80
add esp, 0x48
push 0x10013d70
push 0x833b08
push 0xe8
call fcn.10018b80
push 0x100140b0
push 0x833be7
push 0xe8
call fcn.10018b80
push 0x1000e4c0
push 0x633fcb
push 0xff
call fcn.10018b80
push 0x1000e640
push 0x633fe3
push 0xff
call fcn.10018b80
push 0x1000e7d0
push 0x57ac07
push 0xff
call fcn.10018b80
push 0x1000e7d0
push 0x6083b9
push 0xff
call fcn.10018b80
add esp, 0x48
push 0x1000e8a0
push 0x777ff2
push 0xff
call fcn.10018b80
push 0x1000e8a0
push 0x778003
push 0xff
call fcn.10018b80
push 0x1000e8b0
push 0x5f7c2f
push 0xe9
call fcn.10018b80
push 0x1000e8e0
push 0x968137
push 0xe9
call fcn.10018b80
push 0x1000e900
push 0x968157
push 0xe9
call fcn.10018b80
add esp, 0x3c
mov edx, 0x10058d28
nop dword [eax + eax]
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx]
movups xmmword [ebp - 0x28], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ebp - 0x18], xmm0
cmp eax, 0x7cf
ja 0x1000c3ce
movups xmm0, xmmword [edx]
imul ecx, eax, 0x34
mov eax, dword [edx + 0x30]
add ecx, 0x1003913c
movups xmmword [ecx], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ecx + 0x20], xmm0
mov dword [ecx + 0x30], eax
add edx, 0x34
cmp edx, 0x10072368
jl 0x1000c390
call fcn.1000e200
mov edx, 0x10057f18
push edi
nop dword [eax]
nop dword [eax + eax]
mov ecx, 0x1e
lea edi, [ebp - 0xb0]
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xb0]
cmp ecx, 0x1d
ja 0x1000c421
mov eax, ecx
mov esi, edx
shl eax, 4
sub eax, ecx
mov ecx, 0x1e
lea edi, [eax*8 + 0x10053214]
rep movsd dword es:[edi], dword [esi]
add edx, 0x78
cmp edx, 0x10058d28
jl 0x1000c3f0
push 0x1000e920
push 0x58e650
push 0xe9
call fcn.10018b80
push 0x1000e970
push 0x8386b5
push 0xe9
call fcn.10018b80
push 0x1000e9d0
push 0x5c4025
push 0xe9
call fcn.10018b80
push 0x1000ea00
push 0x5f7c3b
push 0xe9
call fcn.10018b80
push 0x1000ea30
push 0x64b701
push 0xe9
call fcn.10018b80
push 0x1000ea60
push 0x8383a0
push 0xe9
call fcn.10018b80
add esp, 0x48
push 0x1000ea90
push 0x5f3f7e
push 0xe9
call fcn.10018b80
push 0x1000ead0
push 0x5f4a60
push 0xe9
call fcn.10018b80
add esp, 0x18
mov eax, 0x1005748c
nop word [eax + eax]
mov ecx, 0x2d
lea edi, [ebp - 0xec]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xec]
cmp ecx, 0xe
ja 0x1000c50f
imul edi, ecx, 0xb4
mov esi, eax
mov ecx, 0x2d
add edi, 0x10052784
rep movsd dword es:[edi], dword [esi]
add eax, 0xb4
cmp eax, 0x10057f18
jl 0x1000c4e0
call fcn.1000c810
call fcn.1000d310
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str.._settings.ini
push 0
push str.Season3
push str.Interface
call esi
pop edi
cmp eax, 1
jne 0x1000c54e
call fcn.10018040
call fcn.10008200
push str.._settings.ini
push 0
push str.MiniMapClassic
push str.Interface
call esi
cmp eax, 1
jne 0x1000c5e1
push 0x100112f0
push 0x82b772
push 0xe8
call fcn.10018b80
push 0x100112c0
push 0x62f870
push 0xe9
call fcn.10018b80
push 0x10010d50
push 0x82aba0
push 0xe9
call fcn.10018b80
add esp, 0x24
lea eax, [ebp - 0xf0]
push eax
push 0x40
push 0x2e
push 0x7d35a6
call ebx
push 0x2e
push 0x90
push 0x7d35a6
call fcn.1001a590
add esp, 0xc
lea eax, [ebp - 0xf0]
push eax
push dword [ebp - 0xf0]
push 0x2e
push 0x7d35a6
call ebx
push str.._settings.ini
push 0
push str.RemoveChar
push str.Interface
call esi
mov ecx, dword [ebp - 4]
pop ebx
xor ecx, ebp
pop esi
call fcn.10018df7
mov esp, ebp
pop ebp
ret
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]