Function at 0x10010960
Capabilities:
Allocate or change rwx memory
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x7c
mov eax, dword [0x101cc114]
xor eax, esp
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x80]
mov al, 0x41
mov dl, 0x57
push ebx
mov bl, 0x56
mov byte [esp + 0x26], dl
mov byte [esp + 0x36], dl
mov dl, 0x48
push ebp
mov ebp, dword [esp + 0x90]
mov byte [esp + 0x29], bl
mov byte [esp + 0x38], bl
xor ebx, ebx
mov byte [esp + 0x46], dl
mov byte [esp + 0x4f], dl
mov byte [esp + 0x53], dl
mov dl, 0x89
push esi
mov dword [esp + 0x1c], ecx
mov byte [esp + 0x28], 0x90
mov byte [esp + 0x29], 0x53
mov byte [esp + 0x2a], 0x51
mov byte [esp + 0x2b], 0x52
mov byte [esp + 0x2c], 0x55
mov byte [esp + 0x2f], al
mov byte [esp + 0x30], 0x50
mov byte [esp + 0x31], al
mov byte [esp + 0x32], 0x51
mov byte [esp + 0x33], al
mov byte [esp + 0x34], 0x52
mov byte [esp + 0x35], al
mov byte [esp + 0x36], 0x53
mov byte [esp + 0x37], al
mov byte [esp + 0x38], 0x54
mov byte [esp + 0x39], al
mov byte [esp + 0x3a], 0x55
mov byte [esp + 0x3b], al
mov byte [esp + 0x3d], al
mov byte [esp + 0x3f], 0x9c
mov byte [esp + 0x40], 0xc7
mov byte [esp + 0x41], 5
mov byte [esp + 0x42], bl
mov byte [esp + 0x43], bl
mov byte [esp + 0x44], bl
mov byte [esp + 0x45], bl
mov byte [esp + 0x46], 1
mov byte [esp + 0x47], bl
mov byte [esp + 0x48], bl
mov byte [esp + 0x49], bl
mov byte [esp + 0x4b], 0x83
mov byte [esp + 0x4c], 0xec
mov byte [esp + 0x4d], 0x20
mov byte [esp + 0x4e], 0xe8
mov byte [esp + 0x4f], 0x2e
mov byte [esp + 0x50], bl
mov byte [esp + 0x51], bl
mov byte [esp + 0x52], bl
mov byte [esp + 0x54], 0x83
mov byte [esp + 0x55], 0xc4
mov byte [esp + 0x56], 0x20
mov byte [esp + 0x58], dl
mov byte [esp + 0x59], 5
mov byte [esp + 0x5a], bl
mov byte [esp + 0x5b], bl
mov byte [esp + 0x5c], bl
mov byte [esp + 0x5d], bl
mov byte [esp + 0x5e], 0xb8
mov byte [esp + 0x5f], 1
mov byte [esp + 0x60], bl
mov byte [esp + 0x61], bl
mov byte [esp + 0x62], bl
mov byte [esp + 0x63], dl
mov byte [esp + 0x64], 5
mov byte [esp + 0x65], bl
mov byte [esp + 0x66], bl
mov byte [esp + 0x67], bl
mov byte [esp + 0x68], bl
mov byte [esp + 0x69], 0x9d
mov byte [esp + 0x6a], al
mov byte [esp + 0x6b], 0x5f
mov byte [esp + 0x6c], al
mov dl, 0x5a
mov byte [esp + 0x6d], 0x5e
mov byte [esp + 0x6e], al
mov byte [esp + 0x6f], 0x5d
mov byte [esp + 0x70], al
mov byte [esp + 0x71], 0x5c
mov byte [esp + 0x72], al
mov byte [esp + 0x73], 0x5b
mov byte [esp + 0x74], al
mov byte [esp + 0x75], dl
mov byte [esp + 0x76], al
mov byte [esp + 0x77], 0x59
mov byte [esp + 0x78], al
mov byte [esp + 0x79], 0x58
mov byte [esp + 0x7a], 0x5f
mov byte [esp + 0x7b], 0x5e
mov byte [esp + 0x7c], 0x5d
mov byte [esp + 0x7d], dl
mov byte [esp + 0x7e], 0x59
mov byte [esp + 0x7f], 0x5b
mov byte [esp + 0x80], 0xc3
push eax
pop eax
mov ebp, ebp
mov eax, ecx
lea esi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10010b30
sub eax, esi
xchg ebx, eax
xchg ebx, eax
push edx
pop edx
lea esi, [eax + 0x6a]
push eax
pop eax
mov ecx, ecx
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
mov edx, eax
or edx, ecx
jne 0x10010b85
mov ecx, dword [esp + 0x90]
push 0x40
push 0x3000
lea eax, [esi + 0x64]
push eax
push ebx
push ebx
push ecx
call fcn.1006e5b0
mov ecx, eax
add esp, 0x18
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ah, ah
jmp 0x10010b91
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov ecx, eax
mov edx, ecx
or edx, dword [esp + 0x14]
jne 0x10010bad
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.10117937
add esp, 0x7c
ret
push edi
push edx
pop edx
mov eax, esi
cdq
mov edi, eax
add edi, ecx
adc edx, dword [esp + 0x18]
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edx
mov bl, bl
cmp dword [0x102d0d9c], 3
jne 0x10010be9
mov eax, dword [esp + 0x9c]
or eax, dword [esp + 0xa0]
jne 0x10010be9
call fcn.10037db0
mov bh, bh
mov ecx, dword [esp + 0x14]
mov eax, edi
sub eax, ecx
lea ecx, [eax - 0x32]
mov dword [esp + 0x46], ecx
mov edx, edx
lea edx, [eax - 0x42]
mov dword [esp + 0x5e], edx
mov esi, esi
add eax, 0xffffffbb
mov dword [esp + 0x69], eax
xchg ebx, eax
xchg ebx, eax
push 0x40
push 0x3000
push esi
push ebx
call dword [sym.imp.KERNEL32.DLL_VirtualAlloc]
mov edi, eax
mov dword [esp + 0x1c], edi
push eax
pop eax
cmp edi, ebx
jne 0x10010c6a
mov eax, dword [esp + 0x9c]
or eax, dword [esp + 0xa0]
jne 0x10010c55
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x94]
push 0x8000
push ebx
push eax
push ecx
push edx
call fcn.1006e6a0
add esp, 0x14
mov dh, dh
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.10117937
add esp, 0x7c
ret
push esi
push ebx
push edi
call fcn.101183f0
add esp, 0xc
mov cl, cl
mov dword [esp + 0x10], ebx
mov ebx, ebx
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x94]
lea eax, [esp + 0x10]
push eax
push esi
mov esi, dword [esp + 0x1c]
push edi
push ecx
push esi
push edx
call fcn.10068510
add esp, 0x18
test eax, eax
jne 0x10010cf4
mov eax, dword [esp + 0x9c]
or eax, dword [esp + 0xa0]
jne 0x10010cd0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x94]
push 0x8000
push ebx
push eax
push esi
push ecx
call fcn.1006e6a0
add esp, 0x14
mov ecx, ecx
push 0x8000
push ebx
push edi
call dword [sym.imp.KERNEL32.DLL_VirtualFree]
mov bl, bl
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.10117937
add esp, 0x7c
ret
mov ecx, 0x16
lea esi, [esp + 0x2c]
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edi, edi
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
add edx, 0x59
push 1
mov eax, esi
add eax, 0x59
push edx
mov ecx, edi
adc ecx, ebx
push ecx
mov ecx, dword [esp + 0x2c]
push eax
call fcn.1000e800
add esp, 0x10
xchg ebx, eax
xchg ebx, eax
mov dl, byte [0x101b749c]
mov ecx, dword [esp + 0x1c]
mov byte [eax + ecx + 0x59], dl
mov dh, dh
add eax, 0x5a
mov dword [esp + 0x20], eax
mov ebp, ebp
lea edx, [esp + 0x10]
push edx
push eax
mov eax, dword [esp + 0x9c]
push ecx
push edi
push esi
push eax
call fcn.10068510
add esp, 0x18
test eax, eax
jne 0x10010db5
mov eax, dword [esp + 0x9c]
or eax, dword [esp + 0xa0]
jne 0x10010d8d
mov ecx, dword [esp + 0x94]
push 0x8000
push ebx
push edi
push esi
push ecx
call fcn.1006e6a0
add esp, 0x14
mov ebp, ebp
mov edx, dword [esp + 0x1c]
push 0x8000
push ebx
push edx
call dword [sym.imp.KERNEL32.DLL_VirtualFree]
mov edi, edi
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.10117937
add esp, 0x7c
ret
mov eax, dword [esp + 0x1c]
push 0x8000
push ebx
push eax
call dword [sym.imp.KERNEL32.DLL_VirtualFree]
mov al, al
mov dword [ebp], esi
mov dword [ebp + 4], edi
mov bh, bh
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], edi
push eax
pop eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x14], ecx
push ebx
pop ebx
mov edx, eax
add edx, 0xfffffff0
mov esi, ecx
adc esi, 0xffffffff
mov dword [ebp + 0x18], edx
mov dword [ebp + 0x1c], esi
mov edi, edi
mov edx, eax
add edx, 0xfffffff4
mov esi, ecx
adc esi, 0xffffffff
mov dword [ebp + 0x20], edx
mov dword [ebp + 0x24], esi
push edx
pop edx
add eax, 0xfffffffc
adc ecx, 0xffffffff
mov dword [ebp + 0x28], eax
mov dword [ebp + 0x2c], ecx
mov bh, bh
mov eax, dword [esp + 0x20]
mov dword [ebp + 0x30], eax
mov ecx, ecx
mov dword [ebp + 0x34], 0x64
push ebx
pop ebx
xchg ebx, eax
xchg ebx, eax
mov ecx, dword [esp + 0x88]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
mov eax, 1
call fcn.10117937
add esp, 0x7c
ret