Function at 0x10051d20
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x24
mov al, 0xaa
push ebx
mov byte [esp + 0x12], al
mov byte [esp + 0x1f], al
mov al, byte [0x10197a7c]
push ebp
push esi
push edi
test al, 1
mov byte [esp + 0x14], 0xf1
mov byte [esp + 0x15], 0x61
mov byte [esp + 0x16], 0x37
mov byte [esp + 0x17], 0x13
mov byte [esp + 0x18], 0x93
mov byte [esp + 0x19], 0x8e
mov byte [esp + 0x1a], 0x26
mov byte [esp + 0x1b], 0x98
mov byte [esp + 0x1c], 0xdc
mov byte [esp + 0x1d], 0xe6
mov byte [esp + 0x1f], 0x2c
mov byte [esp + 0x24], 0x90
mov byte [esp + 0x25], 5
mov byte [esp + 0x26], 0x41
mov byte [esp + 0x27], 0x72
mov byte [esp + 0x28], 0xe3
mov byte [esp + 0x29], 0xe7
mov byte [esp + 0x2a], 0x15
mov byte [esp + 0x2c], 0xf2
mov byte [esp + 0x2d], 0x82
mov byte [esp + 0x2e], 0xc6
mov byte [esp + 0x2f], 0x40
jne 0x10051e35
mov bl, al
push 0xd
or bl, 1
mov byte [0x10197a7c], bl
call fcn.1013c2df
add esp, 4
mov dword [0x10197a80], eax
xor edi, edi
mov bl, byte [esp + edi + 0x24]
movsx eax, byte [esp + edi + 0x14]
movsx esi, bl
test esi, esi
jne 0x10051ddd
mov esi, 8
cdq
idiv esi
mov ecx, edx
test ecx, ecx
je 0x10051e08
mov eax, ecx
cdq
mov ebp, eax
mov eax, esi
xor ebp, edx
sub ebp, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, ebp
jge 0x10051dfd
lea esi, [ebp + 0xc]
mov eax, ecx
cdq
idiv esi
mov ecx, eax
test ecx, ecx
jne 0x10051dfd
mov al, byte [esp + edi + 0x14]
xor bl, al
mov eax, dword [0x10197a80]
or bl, cl
mov byte [edi + eax], bl
inc edi
cmp edi, 0xc
jb 0x10051dc8
mov ecx, dword [0x10197a80]
push 0x10051fb0
mov byte [ecx + 0xc], 0
call fcn.1013c36b
add esp, 4
mov edx, dword [0x10197a80]
mov al, 0xe
mov byte [esp + 0x16], al
mov byte [esp + 0x1a], al
mov al, byte [0x10197a84]
mov cl, 0x7c
test al, 1
mov dword [esp + 0x10], edx
mov byte [esp + 0x24], 0x44
mov byte [esp + 0x25], 0xaf
mov byte [esp + 0x26], 0x77
mov byte [esp + 0x27], 0xa
mov byte [esp + 0x28], 0x92
mov byte [esp + 0x29], 0xd7
mov byte [esp + 0x2a], cl
mov byte [esp + 0x2b], 9
mov byte [esp + 0x2c], 0xc4
mov byte [esp + 0x2d], 0xf7
mov byte [esp + 0x2e], 0x5b
mov byte [esp + 0x2f], 0x34
mov byte [esp + 0x30], 0x2c
mov byte [esp + 0x31], 0x45
mov byte [esp + 0x32], 0x5f
mov byte [esp + 0x14], 7
mov byte [esp + 0x15], 0xdd
mov byte [esp + 0x17], 0x7a
mov byte [esp + 0x18], 0xe6
mov byte [esp + 0x19], 0x94
mov byte [esp + 0x1b], 0x6c
mov byte [esp + 0x1c], 0xa5
mov byte [esp + 0x1d], 0x83
mov byte [esp + 0x1e], 0x3e
mov byte [esp + 0x1f], cl
mov byte [esp + 0x20], 0x4d
mov byte [esp + 0x21], 0x36
mov byte [esp + 0x22], 0x37
jne 0x10051f6b
mov bl, al
push 0x10
or bl, 1
mov byte [0x10197a84], bl
call fcn.1013c2df
add esp, 4
mov dword [0x10197a88], eax
xor edi, edi
mov bl, byte [esp + edi + 0x14]
movsx eax, byte [esp + edi + 0x24]
movsx esi, bl
test esi, esi
jne 0x10051f13
mov esi, 8
cdq
idiv esi
mov ecx, edx
test ecx, ecx
je 0x10051f3e
mov eax, ecx
cdq
mov ebp, eax
mov eax, esi
xor ebp, edx
sub ebp, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, ebp
jge 0x10051f33
lea esi, [ebp + 0xc]
mov eax, ecx
cdq
idiv esi
mov ecx, eax
test ecx, ecx
jne 0x10051f33
mov al, byte [esp + edi + 0x24]
xor bl, al
mov eax, dword [0x10197a88]
or bl, cl
mov byte [edi + eax], bl
inc edi
cmp edi, 0xf
jb 0x10051efe
mov ecx, dword [0x10197a88]
push 0x10051fc0
mov byte [ecx + 0xf], 0
call fcn.1013c36b
add esp, 4
mov edx, dword [esp + 0x10]
mov esi, dword [0x10197a88]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x44]
push edx
push ecx
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret