Function at 0x1003c7d0
Capabilities:
Allocate thread local storage

Disassembly:
mov eax, 0x10061c3d
call fcn.100600a0
sub esp, 0x38
push ebx
push esi
mov dword [ebp - 0x20], 0x2b6
cmp dword [ebp - 0x20], 0x3eb
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
jle 0x1003c877
xor esi, esi
mov dword [ebp - 0x1c], esi
xor edi, edi
mov dword [ebp - 0x18], edi
mov eax, esi
xor ebx, ebx
cdq
idiv edi
mov edi, edx
mov dword [ebp - 0x24], edi
mov eax, edi
xor esi, esi
cdq
idiv ebx
mov edi, edx
mov eax, edi
lea ecx, [ebp - 0x44]
and eax, esi
cdq
push edx
push eax
call fcn.10001a85
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003c831
mov eax, dword [eax]
push eax
call fcn.10049603
pop ecx
push 0
push 1
lea ecx, [ebp - 0x44]
call fcn.100048ea
inc esi
cmp esi, 0x7d2c
jl 0x1003c818
mov edi, dword [ebp - 0x24]
inc ebx
cmp ebx, 0x2946
jl 0x1003c80f
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0x452d
jl 0x1003c803
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x5a2e
jl 0x1003c7fe
cmp dword [ebp - 0x20], 0x10a
jge 0x1003c88b
push str.gpdcn_csq_xvpap_dxjeicw_juifkmoz_gkkt_smzgwpla_rcxt_mbtug_nmmybzmmd_eckyzz_nggdu
call fcn.10049603
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0x2c], 0
je 0x1003c9d6
mov dword [ebp - 0x1c], 0x2c4a
cmp dword [ebp - 0x1c], 0x2f7c
jle 0x1003c8f8
xor esi, esi
xor edi, edi
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov eax, ebx
cdq
idiv ecx
mov eax, edi
mov ecx, edx
sar eax, cl
mov ecx, 0x1007bb98
and eax, esi
cdq
push edx
push eax
call fcn.100042e3
mov ecx, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x20], ecx
cmp ecx, 0x662
jl 0x1003c8b4
inc ebx
cmp ebx, 0x7d21
jl 0x1003c8af
inc edi
cmp edi, 0x62f7
jl 0x1003c8ad
inc esi
cmp esi, 0x607
jl 0x1003c8ab
mov dword [ebp - 4], 2
cmp dword [ebp - 0x1c], 0x28d8
jge 0x1003c917
mov edx, str.xyiyuxwm_mmsvqpxcm_vuc_wnawdkyc_ikda_xjnmp
mov ecx, 0x1007bb98
call fcn.100067dc
mov ebx, dword [ebp + 0x20]
xor edi, edi
mov eax, dword [ebp + 0x28]
inc edi
mov ecx, dword [ebp + 0x24]
mov esi, dword [ebx]
mov eax, dword [eax]
mov edx, dword [ecx]
mov eax, dword [eax + esi*4]
inc dword [ecx]
cmp eax, edx
jg 0x1003c934
xor edi, edi
mov eax, dword [ebx]
xor edx, edx
mov ecx, dword [ebp + 0x28]
mov ecx, dword [ecx]
cmp dword [ecx + eax*4], 0xd538
mov eax, dword [ecx]
setne dl
sub eax, edx
xor edx, edx
sub eax, 7
cmp eax, 0x44688d23
mov eax, dword [ebp + 0x18]
setge dl
mov eax, dword [eax]
mov dword [eax], edx
mov esi, dword [ebx]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
add eax, edx
sub eax, ecx
neg eax
sbb eax, eax
xor ebx, ebx
inc eax
cmp eax, 0x7b6c411e
mov eax, dword [ebp + 0x28]
setge bl
sub ebx, ecx
mov eax, dword [eax]
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
sub ebx, dword [eax + esi*4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
cmp ebx, eax
mov eax, dword [ebp + 8]
setl dl
xor ecx, ecx
mov eax, dword [eax]
cmp edx, eax
mov eax, dword [ebp + 0x1c]
setl cl
mov dword [eax], ecx
xor ecx, ecx
mov eax, dword [eax]
cmp edi, eax
mov eax, dword [ebp + 0x10]
setge cl
mov dword [eax], ecx
jmp 0x1003c9dc
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret