Function at 0x10009495
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0x18], 0x53
mov eax, dword [esp + 0x18]
xor al, 0x37
mov byte [esp + 0x1c], al
mov eax, dword [esp + 0x18]
inc al
xor al, 0x34
mov byte [esp + 0x1d], al
mov eax, dword [esp + 0x18]
add al, 2
xor al, 0x2e
mov byte [esp + 0x1e], al
mov eax, dword [esp + 0x18]
add al, 3
xor al, 0x2e
mov byte [esp + 0x1f], al
mov eax, dword [esp + 0x18]
add al, 4
xor al, 0x42
mov byte [esp + 0x20], al
mov eax, dword [esp + 0x18]
add al, 5
xor al, 0x33
mov byte [esp + 0x21], al
mov eax, dword [esp + 0x18]
add al, 6
xor al, 0x35
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x18]
add al, 7
xor al, 0x31
mov byte [esp + 0x23], al
mov eax, dword [esp + 0x18]
add al, 8
xor al, 0x38
mov byte [esp + 0x24], al
mov eax, dword [esp + 0x18]
add al, 9
xor al, 0x38
mov byte [esp + 0x25], al
mov eax, dword [esp + 0x18]
add al, 0xa
xor al, 0x35
mov byte [esp + 0x26], al
mov eax, dword [esp + 0x18]
add al, 0xb
xor al, 0x44
xor ebx, ebx
mov byte [esp + 0x27], al
mov al, byte [esp + 0x1c]
mov edx, ebx
push 0xc
mov byte [esp + 0x2c], bl
pop esi
mov al, byte [esp + edx + 0x1c]
mov ecx, dword [esp + 0x18]
add cl, dl
xor cl, al
mov byte [esp + edx + 0x1c], cl
inc edx
cmp edx, esi
jb 0x10009548
mov byte [esp + 0x28], bl
lea eax, [esp + 0x1c]
mov dword [esp + 0x10], eax
mov edx, ebx
mov dword [esp + 0x54], 0x63
mov byte [esp + 0x58], 0x54
mov byte [esp + 0x59], 0x57
mov byte [esp + 0x5a], 0x4d
mov byte [esp + 0x5b], 0x4d
mov byte [esp + 0x5c], 0x20
mov byte [esp + 0x5d], 0x55
mov byte [esp + 0x5e], 0x57
mov byte [esp + 0x5f], 0x56
mov byte [esp + 0x60], 0x25
mov byte [esp + 0x61], 0x25
mov byte [esp + 0x62], 0x56
mov byte [esp + 0x63], 0x52
mov al, byte [esp + 0x58]
mov byte [esp + 0x64], bl
mov al, byte [esp + edx + 0x58]
mov ecx, dword [esp + 0x54]
xor cl, al
mov byte [esp + edx + 0x58], cl
inc edx
cmp edx, esi
jb 0x100095b7
mov byte [esp + 0x64], bl
lea eax, [esp + 0x58]
mov dword [esp + 0x14], eax
mov edx, ebx
mov dword [esp + 0x2c], 0x68
mov eax, dword [esp + 0x2c]
xor al, 0x35
mov byte [esp + 0x30], al
mov eax, dword [esp + 0x2c]
inc al
xor al, 0x31
mov byte [esp + 0x31], al
mov eax, dword [esp + 0x2c]
add al, 2
push 0x46
pop ecx
xor al, cl
mov byte [esp + 0x32], al
mov eax, dword [esp + 0x2c]
add al, 3
xor al, cl
mov byte [esp + 0x33], al
mov eax, dword [esp + 0x2c]
add al, 4
xor al, 0x37
mov byte [esp + 0x34], al
mov eax, dword [esp + 0x2c]
add al, 5
xor al, 0x35
mov byte [esp + 0x35], al
mov eax, dword [esp + 0x2c]
add al, 6
xor al, 0x30
mov byte [esp + 0x36], al
mov eax, dword [esp + 0x2c]
add al, 7
xor al, 0x38
mov byte [esp + 0x37], al
mov eax, dword [esp + 0x2c]
add al, 8
xor al, cl
mov byte [esp + 0x38], al
mov eax, dword [esp + 0x2c]
add al, 9
xor al, cl
mov byte [esp + 0x39], al
mov eax, dword [esp + 0x2c]
add al, 0xa
xor al, 0x64
mov byte [esp + 0x3a], al
mov eax, dword [esp + 0x2c]
add al, 0xb
mov byte [esp + 0x3c], bl
xor al, 0x30
mov byte [esp + 0x3b], al
mov al, byte [esp + 0x30]
mov al, byte [esp + edx + 0x30]
mov ecx, dword [esp + 0x2c]
add cl, dl
xor cl, al
mov byte [esp + edx + 0x30], cl
inc edx
cmp edx, esi
jb 0x10009679
mov byte [esp + 0x3c], bl
lea eax, [esp + 0x30]
mov dword [esp + 0x68], eax
mov edx, ebx
mov dword [esp + 0x6c], 0x10009123
mov dword [esp + 0x70], ebx
mov dword [esp + 0x40], 0x75
mov eax, dword [esp + 0x40]
push 0x46
pop ecx
xor al, cl
mov byte [esp + 0x44], al
mov eax, dword [esp + 0x40]
inc al
xor al, cl
mov byte [esp + 0x45], al
mov eax, dword [esp + 0x40]
add al, 2
xor al, 0x39
mov byte [esp + 0x46], al
mov eax, dword [esp + 0x40]
add al, 3
xor al, 0x35
mov byte [esp + 0x47], al
mov eax, dword [esp + 0x40]
add al, 4
xor al, 0x31
mov byte [esp + 0x48], al
mov eax, dword [esp + 0x40]
add al, 5
xor al, 0x38
mov byte [esp + 0x49], al
mov eax, dword [esp + 0x40]
add al, 6
xor al, cl
mov byte [esp + 0x4a], al
mov eax, dword [esp + 0x40]
add al, 7
xor al, 0x44
mov byte [esp + 0x4b], al
mov eax, dword [esp + 0x40]
add al, 8
xor al, cl
mov byte [esp + 0x4c], al
mov eax, dword [esp + 0x40]
add al, 9
xor al, cl
mov byte [esp + 0x4d], al
mov eax, dword [esp + 0x40]
add al, 0xa
xor al, cl
mov byte [esp + 0x4e], al
mov eax, dword [esp + 0x40]
add al, 0xb
mov byte [esp + 0x50], bl
xor al, cl
mov byte [esp + 0x4f], al
mov al, byte [esp + 0x44]
mov al, byte [esp + edx + 0x44]
mov ecx, dword [esp + 0x40]
add cl, dl
xor cl, al
mov byte [esp + edx + 0x44], cl
inc edx
cmp edx, esi
jb 0x10009749
lea eax, [esp + 0x44]
mov byte [esp + 0x50], bl
mov dword [esp + 0x74], eax
mov esi, ebx
mov dword [esp + 0x78], 0x10009226
mov dword [esp + 0x7c], ebx
push ecx
push dword [esp + esi*4 + 0x14]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.10059000
test eax, eax
jne 0x10009794
inc esi
cmp esi, 2
jb 0x10009778
jmp 0x100097a7
push 1
lea edx, [esp + 0x10]
mov byte [esp + 0x10], 0xeb
mov ecx, eax
call fcn.100581a0
pop ecx
lea esi, [esp + 0x68]
push ecx
push dword [esi]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.10059000
mov ecx, eax
test ecx, ecx
jne 0x100097ca
inc ebx
add esi, 0xc
cmp ebx, 2
jb 0x100097ab
jmp 0x100097d9
imul eax, ebx, 0xc
push dword [esp + eax + 0x6c]
push ecx
mov ecx, edi
call fcn.10057100
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8