Function at 0x100310bc
Capabilities:
Create thread

Disassembly:
push 0x44
mov eax, 0x10036649
call fcn.10035c81
movss xmm1, dword [0x10041698]
push 6
pop ecx
call fcn.10012768
push ecx
push 1
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x43a70000
mov ecx, str.auto_use
mov dword [ebp - 0x10], 0x43060000
call fcn.1000e25e
pop ecx
pop ecx
test al, al
je 0x10031466
mov eax, dword fs:[0x2c]
xor ebx, ebx
mov ecx, dword [0x10045d1c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10065e3c]
cmp eax, dword [ecx + 4]
jle 0x10031157
mov esi, 0x10065e3c
push esi
call fcn.10035007
cmp dword [0x10065e3c], 0xffffffff
pop ecx
jne 0x10031157
push 0x10036afc
mov dword [0x10065e24], ebx
mov dword [0x10065e28], ebx
mov dword [0x10065e2c], ebx
call fcn.10034f76
pop ecx
push esi
call fcn.10034fb6
pop ecx
movaps xmm0, xmmword [str.1_b_1_b_1_b_]
lea edx, [ebp - 0x1c]
push 3
pop ecx
movups xmmword [ebp - 0x1c], xmm0
call fcn.10012667
xorps xmm0, xmm0
lea edx, [ebp - 0x1c]
push 0xe
pop ecx
movups xmmword [ebp - 0x1c], xmm0
call fcn.10012667
and dword [ebp - 0x14], ebx
lea edx, [ebp - 0x14]
push ecx
push ebx
mov ecx, str.autouse_list
mov dword [ebp - 0x10], 0x42bc0000
call fcn.1000e25e
pop ecx
pop ecx
test al, al
je 0x10031263
mov eax, dword [0x10065e28]
lea ecx, [ebp - 0x38]
sub eax, dword [0x10065e24]
movss xmm2, dword [0x10041734]
sar eax, 2
push eax
call fcn.10009964
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], ebx
call fcn.10009a10
test al, al
je 0x1003124f
mov esi, dword [ebp - 0x28]
cmp esi, dword [ebp - 0x24]
jge 0x10031241
and dword [ebp - 0x14], 0
and dword [ebp - 0x10], 0
push esi
mov ecx, 0x10065e24
call fcn.1000659a
lea ecx, [ebp - 0x50]
imul edx, dword [eax], 0x1d0
add edx, dword [0x10045f24]
call fcn.100065ec
mov byte [ebp - 4], 1
cmp dword [eax + 0x14], 0xf
jbe 0x1003120b
mov eax, dword [eax]
cmp dword [0x10045608], esi
lea ecx, [ebp - 0x14]
push ecx
push 2
sete dl
mov ecx, eax
call fcn.1002c78d
pop ecx
pop ecx
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0
mov bl, al
call fcn.10001abf
test bl, bl
je 0x1003123b
mov dword [0x10045608], esi
inc esi
cmp esi, dword [ebp - 0x24]
jl 0x100311e0
lea ecx, [ebp - 0x38]
call fcn.10009a10
test al, al
jne 0x100311d0
xor ebx, ebx
lea ecx, [ebp - 0x38]
call fcn.100099da
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38]
call fcn.10001602
call fcn.1000e2d3
xor ecx, ecx
inc ecx
call fcn.100126ad
xor ecx, ecx
inc ecx
call fcn.100126ad
and dword [ebp - 0x10], 0
lea edx, [ebp - 0x14]
push ebx
mov ecx, str.Delete
mov dword [ebp - 0x14], 0x42700000
call fcn.10025ac9
pop ecx
test al, al
je 0x100312c5
mov ecx, dword [0x10045608]
cmp ecx, 0xffffffff
je 0x100312c5
mov eax, dword [0x10065e24]
lea edx, [eax + ecx*4]
mov eax, dword [0x10065e28]
lea ecx, [edx + 4]
sub eax, ecx
push eax
push ecx
push edx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
sub dword [0x10065e28], 4
movss xmm1, dword [0x10041734]
xorps xmm0, xmm0
call fcn.100131de
mov eax, dword [0x10045f74]
mov esi, 0x10065e08
push ecx
push ecx
push 1
or dword [eax + 0x1a84], 1
mov edx, str.Slot
push 0xa
push esi
mov ecx, str.autouse_item
mov dword [eax + 0x1a88], 0x42700000
call fcn.10028895
movss xmm1, dword [0x10041734]
add esp, 0x14
xorps xmm0, xmm0
call fcn.100131de
and dword [ebp - 0x10], 0
lea edx, [ebp - 0x14]
push ebx
mov ecx, 0x10041034
mov dword [ebp - 0x14], 0x42700000
call fcn.10025ac9
pop ecx
test al, al
je 0x100313e5
push ebx
push ebx
mov ebx, dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoul]
push esi
call ebx
add esp, 0xc
lea ecx, [ebp - 0x38]
push ecx
mov ecx, eax
call fcn.10005a99
pop ecx
push 5
pop ecx
mov esi, eax
lea edi, [ebp - 0x20]
rep movsd dword es:[edi], dword [esi]
cmp word [ebp - 0x20], 0
jbe 0x100313e3
push 0
push 0
push 0x10065e08
call ebx
add esp, 0xc
lea ecx, [ebp - 0x38]
push ecx
mov ecx, eax
call fcn.10005a99
pop ecx
push 5
pop ecx
mov esi, eax
lea edi, [ebp - 0x20]
rep movsd dword es:[edi], dword [esi]
cmp word [ebp - 0x20], 0
jbe 0x100313e3
push 0
push 0
push 0x10065e08
call ebx
add esp, 0xc
lea edx, [ebp - 0x38]
mov ecx, eax
push edx
call fcn.10005a99
pop ecx
push 5
mov esi, eax
lea edi, [ebp - 0x20]
mov eax, dword [0x10065e28]
pop ecx
rep movsd dword es:[edi], dword [esi]
movzx ecx, word [ebp - 0x20]
mov dword [ebp - 0x10], ecx
cmp eax, dword [0x10065e2c]
je 0x100313d4
mov dword [eax], ecx
add dword [0x10065e28], 4
jmp 0x100313e3
lea ecx, [ebp - 0x10]
push ecx
push eax
mov ecx, 0x10065e24
call fcn.10031496
xor ebx, ebx
movss xmm1, dword [0x10041734]
xorps xmm0, xmm0
call fcn.100131de
movss xmm0, dword [0x10041654]
call fcn.10012d19
mov esi, 0x10065e50
mov ecx, str.Auto_Use
mov edx, esi
call fcn.10026abf
test al, al
je 0x10031454
cmp byte [0x10065e50], 0
je 0x10031448
push ebx
push ebx
push esi
push 0x100062d1
push ebx
push ebx
mov byte [0x10065e51], 2
mov dword [0x10065e54], 0x10065e24
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [0x10065e58], eax
jmp 0x10031454
push dword [0x10065e58]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
movss xmm0, dword [0x1004164c]
call fcn.10012d19
call fcn.1000e2d3
xor ecx, ecx
inc ecx
call fcn.10012868
call fcn.10035c5e
ret