Function at 0x101185c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x3c
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov edx, dword [0x1025ad40]
xor edx, esp
mov dword [esp + 0x38], edx
xorps xmm0, xmm0
movups xmmword [esp + 0x28], xmm0
lea edx, [ecx + 0x37]
shr edx, 5
lea edi, [edx - 1]
and ecx, 0x1f
mov esi, eax
shl esi, cl
cmp ecx, 9
jb 0x10118602
mov dword [esp + edx*4 + 0x20], esi
neg cl
shr eax, cl
mov esi, eax
mov dword [esp + edx*4 + 0x24], esi
test edi, edi
je 0x101186d8
mov dword [esp], 0
mov ebp, 0xa09b5a53
jmp 0x1011862b
mov edi, dword [esp + 8]
mov dword [esp], ebx
mov esi, dword [esp + edi*4 + 0x28]
mov eax, esi
shr eax, 9
mov ecx, 0x44b83
mul ecx
shr edx, 7
imul eax, edx, 0x3b9aca00
mov dword [esp + 0xc], esi
mov ecx, esi
sub ecx, eax
mov dword [esp + edi*4 + 0x28], edx
mov dword [esp + 8], edi
mov eax, dword [esp + edi*4 + 0x24]
mov dword [esp + 4], eax
mov esi, ecx
shld esi, eax, 0x17
mov eax, esi
mul ebp
mov ebx, edx
mov eax, esi
mov edx, 0x44b82f
mul edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
shr ecx, 9
mov eax, ecx
mul ebp
mov ebp, edx
mov esi, eax
mov eax, ecx
mov ecx, 0x44b82f
mul ecx
add esi, ebx
adc eax, ebp
mov ebp, 0xa09b5a53
adc edx, 0
add esi, dword [esp + 0x10]
adc eax, dword [esp + 0x14]
adc edx, 0
shld edx, eax, 0x15
imul ecx, edx, 0xc4653600
add ecx, dword [esp + 4]
mov dword [esp + edi*4 + 0x24], edx
dec edi
jne 0x10118650
mov ebx, dword [esp]
mov dword [esp + ebx*4 + 0x18], ecx
inc ebx
cmp dword [esp + 0xc], 0x3b9ac9ff
ja 0x10118620
mov edi, dword [esp + 8]
dec edi
jne 0x10118624
jmp 0x101186da
xor ebx, ebx
mov edi, dword [esp + 0x54]
mov ecx, dword [esp + 0x28]
mov esi, 0xa
cmp ecx, 0x3b9ac9ff
ja 0x10118752
mov esi, 9
cmp ecx, 0x5f5e0ff
ja 0x10118752
mov esi, 8
cmp ecx, 0x98967f
ja 0x10118752
mov esi, 7
cmp ecx, 0xf423f
ja 0x10118752
mov esi, 6
cmp ecx, 0x1869f
ja 0x10118752
mov esi, 5
cmp ecx, 0x270f
ja 0x10118752
mov esi, 4
cmp ecx, 0x3e7
ja 0x10118752
mov esi, 3
cmp ecx, 0x63
ja 0x10118752
cmp ecx, 0xa
mov esi, 1
sbb esi, 0xffffffff
lea eax, [ebx + ebx*8]
add eax, esi
mov edx, edi
sub edx, dword [esp + 0x50]
mov ebp, 0x84
cmp edx, eax
jl 0x1011892f
xor ebp, ebp
cmp ecx, 0x2710
jae 0x101187a2
cmp ecx, 0x64
jae 0x1011881f
cmp ecx, 0xa
jb 0x10118858
mov edx, dword [esp + 0x50]
lea eax, [edx + esi]
sub eax, ebp
mov ebp, edx
movzx ecx, word [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [eax - 2], cx
jmp 0x10118862
mov dword [esp], ebx
mov eax, dword [esp + 0x50]
mov dword [esp + 4], esi
lea ebx, [esi + eax]
add ebx, 0xfffffffe
xor ebp, ebp
nop word cs:[eax + eax]
mov esi, ecx
mov eax, ecx
mov ecx, 0xd1b71759
mul ecx
mov ecx, edx
shr ecx, 0xd
imul edi, ecx, 0xffffd8f0
add edi, esi
mov eax, edi
mov edx, 0x51eb851f
mul edx
shr edx, 5
imul eax, edx, 0x64
sub edi, eax
movzx eax, word [edi + edi + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [ebx + ebp], ax
movzx eax, word [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [ebx + ebp - 2], ax
add ebp, 0xfffffffc
cmp esi, 0x5f5e0ff
ja 0x101187c0
neg ebp
mov ebx, dword [esp]
mov esi, dword [esp + 4]
cmp ecx, 0x64
jb 0x1011877d
movzx eax, cx
shr eax, 2
imul eax, eax, 0x147b
shr eax, 0x11
imul edx, eax, 0x64
sub ecx, edx
movzx ecx, cx
mov edx, dword [esp + 0x50]
add edx, esi
sub edx, ebp
movzx ecx, word [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [edx - 2], cx
or ebp, 2
mov ecx, eax
cmp ecx, 0xa
jae 0x10118786
add cl, 0x30
mov ebp, dword [esp + 0x50]
mov byte [ebp], cl
add ebp, esi
test ebx, ebx
jle 0x1011892b
inc ebx
jmp 0x1011888f
mov byte [ebp + 8], 0x30
mov dword [ebp + 4], 0x30303030
mov dword [ebp], 0x30303030
add ebp, 9
dec ebx
cmp ebx, 1
jbe 0x1011892b
mov edi, dword [esp + ebx*4 + 0x10]
test edi, edi
je 0x10118870
mov eax, edi
mov ecx, 0xd1b71759
mul ecx
mov ecx, edx
shr ecx, 0xd
mov dword [esp], ebx
imul ebx, ecx, 0xffffd8f0
add ebx, edi
mov eax, ebx
mov edx, 0x51eb851f
mul edx
mov esi, ebp
mov ebp, edx
shr ebp, 5
imul eax, ebp, 0x64
sub ebx, eax
movzx eax, word [ebx + ebx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [esi + 7], ax
mov eax, edi
mov edx, 0x55e63b89
mul edx
mov ebx, edx
shr ebx, 0x19
imul edi, ebx, 0xffffd8f0
add edi, ecx
mov eax, edi
mov ecx, 0x51eb851f
mul ecx
movzx eax, word [ebp + ebp + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov ebp, esi
mov word [esi + 5], ax
shr edx, 5
imul eax, edx, 0x64
sub edi, eax
movzx eax, word [edi + edi + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [esi + 3], ax
movzx eax, word [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [esi + 1], ax
add bl, 0x30
mov byte [esi], bl
mov ebx, dword [esp]
jmp 0x10118882
mov edi, ebp
xor ebp, ebp
mov ecx, dword [esp + 0x38]
xor ecx, esp
call fcn.10157981
mov eax, edi
mov edx, ebp
add esp, 0x3c
pop esi
pop edi
pop ebx
pop ebp
ret