Function at 0x10019e5a
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xbc
mov eax, 0x1003715a
call fcn.10035531
mov ebx, ecx
mov eax, dword [ebx]
mov dword [0x100471d8], eax
mov eax, dword [ebx + 0x14c]
cmp eax, dword [ebx + 0x150]
je 0x1001a51f
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount64]
call esi
sub eax, dword [ebx + 0x168]
mov ecx, eax
sbb edx, dword [ebx + 0x16c]
call fcn.10035bf0
cvtsd2ss xmm0, xmm0
divss xmm0, dword [0x1003ed00]
comiss xmm0, dword [0x1003ecac]
jb 0x1001a51f
call esi
mov dword [ebx + 0x168], eax
xor esi, esi
mov dword [ebx + 0x16c], edx
mov eax, dword [ebx + 0x150]
sub eax, dword [ebx + 0x14c]
push 0x68
cdq
pop ecx
idiv ecx
test eax, eax
je 0x10019f0f
push 0x68
xor ecx, ecx
pop edi
mov edx, dword [ebx + 0x14c]
mov eax, dword [edx + ecx + 0x1c]
test eax, eax
jle 0x10019ef6
dec eax
mov dword [edx + ecx + 0x1c], eax
mov eax, dword [ebx + 0x150]
inc esi
sub eax, dword [ebx + 0x14c]
add ecx, edi
cdq
idiv edi
cmp esi, eax
jb 0x10019ee3
push 0x68
pop ecx
mov eax, dword [ebx + 0x144]
cmp eax, dword [ebx + 0x148]
jle 0x10019f27
mov dword [ebx + 0x144], 1
mov eax, dword [ebx + 0x158]
cmp eax, dword [ebx + 0x15c]
je 0x1001a51f
mov eax, dword [ebx + 0x144]
shl eax, 2
mov dword [ebp - 0xc8], eax
lea edi, [eax - 4]
mov dword [ebp - 0xa0], edi
cmp edi, eax
jge 0x1001a51f
imul esi, edi, 0x68
lea eax, [ebx + 0x10]
push 0x18
pop edx
mov dword [ebp - 0x98], 0x3c
mov dword [ebp - 0xa4], esi
add eax, edx
mov dword [ebp - 0x9c], eax
mov eax, dword [ebx + 0x15c]
sub eax, dword [ebx + 0x158]
cdq
idiv ecx
dec eax
cmp edi, eax
jg 0x1001a51f
mov ecx, dword [ebx + 0x158]
cmp byte [ecx + esi + 0x62], 2
jne 0x1001a4f8
mov eax, dword [ecx + esi + 0x1c]
test eax, eax
jle 0x1001a4f8
dec eax
mov dword [ecx + esi + 0x1c], eax
mov eax, dword [ebx + 0x158]
cmp dword [eax + esi + 0x1c], 0
jl 0x1001a455
lea eax, [ebp - 0x3f]
mov word [ebp - 0x40], 0x51
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x3f], 0
call fcn.10002845
and dword [ebp - 4], 0
mov ecx, 0x15180
mov eax, dword [ebx + 0x158]
push ecx
push ecx
mov edi, dword [eax + esi + 0x1c]
mov eax, edi
cdq
idiv ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x94], xmm0
fld qword [ebp - 0x94]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
pop ecx
fstp qword [ebp - 0x94]
movsd xmm0, qword [ebp - 0x94]
pop ecx
call fcn.10035ac1
mov esi, eax
xor edx, edx
imul ecx, esi, 0x15180
mov eax, edi
push 0x18
mov dword [ebp - 0xa8], esi
sub eax, ecx
mov ecx, 0xe10
div ecx
pop ecx
xor edx, edx
div ecx
mov ecx, edx
call fcn.1001451b
call fcn.10035ac1
imul esi, esi, 0x18
xor edx, edx
mov dword [ebp - 0x90], eax
add esi, eax
mov eax, edi
imul ecx, esi, 0xe10
sub eax, ecx
div dword [ebp - 0x98]
xor edx, edx
div dword [ebp - 0x98]
mov ecx, edx
call fcn.1001451b
call fcn.10035ac1
imul ecx, esi, 0x3c
xor edx, edx
mov esi, eax
mov dword [ebp - 0xc4], eax
add ecx, esi
imul ecx, ecx, 0x3c
sub edi, ecx
mov eax, edi
div dword [ebp - 0x98]
mov ecx, edx
call fcn.1001451b
call fcn.10035ac1
mov ecx, dword [ebp - 0xa8]
mov edi, eax
test ecx, ecx
je 0x1001a15f
cmp ecx, 0xa
jae 0x1001a0dd
mov dl, 0x22
mov byte [ebp - 0x72], 0
mov al, 0x12
mov byte [ebp - 0x74], dl
xor al, dl
mov byte [ebp - 0x72], 0
mov byte [ebp - 0x73], al
lea eax, [ebp - 0x73]
jmp 0x1001a0ee
push 0x18
pop eax
mov byte [ebp - 0x44], al
lea eax, [ebp - 0x43]
mov byte [ebp - 0x43], 0
mov byte [ebp - 0x43], 0
push ecx
push eax
push 0x68
pop eax
mov cl, 0x1b
mov word [ebp - 0x60], 0x3e1b
mov byte [ebp - 0x5e], al
xor edx, edx
mov dword [ebp - 0x5d], 0x216e3e
xor cl, byte [ebp + edx - 0x5f]
mov byte [ebp + edx - 0x5f], cl
inc edx
cmp edx, 5
jae 0x1001a11a
mov cl, byte [ebp - 0x60]
jmp 0x1001a107
sub esp, 0x18
mov byte [ebp - 0x5a], 0
lea eax, [ebp - 0x5f]
mov ecx, esp
push eax
call fcn.10002845
lea eax, [ebp - 0xc0]
push eax
call fcn.10004ac0
add esp, 0x24
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 1
call fcn.1000560f
push 0
push 1
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0
call fcn.100026f1
mov ecx, dword [ebp - 0x90]
test ecx, ecx
je 0x1001a209
cmp ecx, 0xa
jae 0x1001a18b
mov dl, 0x67
mov byte [ebp - 0x76], 0
mov al, 0x57
mov byte [ebp - 0x78], dl
xor al, dl
mov byte [ebp - 0x76], 0
mov byte [ebp - 0x77], al
lea eax, [ebp - 0x77]
jmp 0x1001a198
mov word [ebp - 0x48], 0x76
lea eax, [ebp - 0x47]
mov byte [ebp - 0x47], 0
push ecx
push eax
mov cl, 0x38
mov dword [ebp - 0x68], 0x1d4b1d38
mov word [ebp - 0x64], 0x24d
xor edx, edx
mov byte [ebp - 0x62], 0
xor cl, byte [ebp + edx - 0x67]
mov byte [ebp + edx - 0x67], cl
inc edx
cmp edx, 5
jae 0x1001a1c2
mov cl, byte [ebp - 0x68]
jmp 0x1001a1af
sub esp, 0x18
mov byte [ebp - 0x62], 0
lea eax, [ebp - 0x67]
mov ecx, esp
push eax
call fcn.10002845
lea eax, [ebp - 0xc0]
push eax
call fcn.10004ac0
add esp, 0x24
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
call fcn.1000560f
push 0
push 1
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0
call fcn.100026f1
jmp 0x1001a24b
push 0x18
pop eax
mov cl, 0x28
mov byte [ebp - 0x33], al
mov byte [ebp - 0x34], cl
xor edx, edx
mov byte [ebp - 0x32], al
mov word [ebp - 0x31], 0x12
xor cl, byte [ebp + edx - 0x33]
mov byte [ebp + edx - 0x33], cl
inc edx
cmp edx, 3
jae 0x1001a232
mov cl, byte [ebp - 0x34]
jmp 0x1001a21f
lea ecx, [ebp - 0x33]
mov byte [ebp - 0x30], 0
call fcn.1000282d
push eax
lea eax, [ebp - 0x33]
push eax
lea ecx, [ebp - 0x28]
call fcn.10007f48
xor edx, edx
test esi, esi
je 0x1001a2f4
cmp esi, 0xa
jae 0x1001a26e
mov cl, 0x2b
mov byte [ebp - 0x7a], dl
mov al, 0x1b
mov byte [ebp - 0x7c], cl
xor al, cl
mov byte [ebp - 0x7b], al
lea eax, [ebp - 0x7b]
jmp 0x1001a27a
mov word [ebp - 0x4c], 0x4e
lea eax, [ebp - 0x4b]
mov byte [ebp - 0x4b], dl
push esi
push eax
mov eax, dword [ebp - 0x98]
mov cl, 0x19
mov byte [ebp - 0x70], cl
mov byte [ebp - 0x6f], al
mov byte [ebp - 0x6e], 0x6a
mov byte [ebp - 0x6d], al
mov word [ebp - 0x6c], 0x236c
mov byte [ebp - 0x6a], dl
xor cl, byte [ebp + edx - 0x6f]
mov byte [ebp + edx - 0x6f], cl
inc edx
cmp edx, 5
jae 0x1001a2ad
mov cl, byte [ebp - 0x70]
jmp 0x1001a29a
sub esp, 0x18
mov byte [ebp - 0x6a], 0
lea eax, [ebp - 0x6f]
mov ecx, esp
push eax
call fcn.10002845
lea eax, [ebp - 0xc0]
push eax
call fcn.10004ac0
add esp, 0x24
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.1000560f
push 0
push 1
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0
call fcn.100026f1
jmp 0x1001a32d
mov cl, 0x31
mov dword [ebp - 0x3c], 0xb010131
mov byte [ebp - 0x38], 0
xor cl, byte [ebp + edx - 0x3b]
mov byte [ebp + edx - 0x3b], cl
inc edx
cmp edx, 3
jae 0x1001a314
mov cl, byte [ebp - 0x3c]
jmp 0x1001a301
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x38], 0
call fcn.1000282d
push eax
lea eax, [ebp - 0x3b]
push eax
lea ecx, [ebp - 0x28]
call fcn.10007f48
xor edx, edx
test edi, edi
je 0x1001a3c7
cmp edi, 0xa
jae 0x1001a350
mov cl, 0xd
mov byte [ebp - 0x7e], dl
mov al, 0x3d
mov byte [ebp - 0x80], cl
xor al, cl
mov byte [ebp - 0x7f], al
lea eax, [ebp - 0x7f]
jmp 0x1001a35c
mov word [ebp - 0x50], 0x28
lea eax, [ebp - 0x4f]
mov byte [ebp - 0x4f], dl
push edi
push eax
mov cl, 0x75
mov dword [ebp - 0x58], 0x50065075
mov word [ebp - 0x54], 0
xor cl, byte [ebp + edx - 0x57]
mov byte [ebp + edx - 0x57], cl
inc edx
cmp edx, 4
jae 0x1001a380
mov cl, byte [ebp - 0x58]
jmp 0x1001a36d
sub esp, 0x18
mov byte [ebp - 0x53], 0
lea eax, [ebp - 0x57]
mov ecx, esp
push eax
call fcn.10002845
lea eax, [ebp - 0xc0]
push eax
call fcn.10004ac0
add esp, 0x24
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
call fcn.1000560f
push 0
push 1
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0
call fcn.100026f1
jmp 0x1001a3fc
mov cl, 0x2d
mov dword [ebp - 0x2c], 0x1d1d2d
xor cl, byte [ebp + edx - 0x2b]
mov byte [ebp + edx - 0x2b], cl
inc edx
cmp edx, 2
jae 0x1001a3e3
mov cl, byte [ebp - 0x2c]
jmp 0x1001a3d0
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x29], 0
call fcn.1000282d
push eax
lea eax, [ebp - 0x2b]
push eax
lea ecx, [ebp - 0x28]
call fcn.10007f48
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0xc0]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.10002845
mov ecx, dword [ebp - 0x9c]
lea edx, [ebp - 0xc0]
mov byte [ebp - 4], 5
mov ecx, dword [ecx]
call fcn.10009ed2
push 0
push 1
lea ecx, [ebp - 0xc0]
call fcn.100026f1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
push 0
push 1
call fcn.100026f1
mov esi, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xa0]
mov eax, dword [ebx + 0x158]
cmp dword [eax + esi + 0x1c], 0
jne 0x1001a4f8
push 0x18
mov cl, 0x4f
mov dword [ebp - 0x8a], 0x263b262e
pop eax
mov byte [ebp - 0x8c], cl
xor edx, edx
mov byte [ebp - 0x8b], al
mov dword [ebp - 0x86], 0x61612821
mov word [ebp - 0x82], 0x61
xor cl, byte [ebp + edx - 0x8b]
mov byte [ebp + edx - 0x8b], cl
inc edx
cmp edx, 0xa
jae 0x1001a4b2
mov cl, byte [ebp - 0x8c]
jmp 0x1001a496
lea eax, [ebp - 0x8b]
mov byte [ebp - 0x81], 0
push eax
lea ecx, [ebp - 0xc0]
call fcn.10002845
mov eax, dword [ebp - 0x9c]
lea edx, [ebp - 0xc0]
mov dword [ebp - 4], 6
mov ecx, dword [eax]
call fcn.10009ed2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xc0]
push 0
push 1
call fcn.100026f1
mov eax, dword [ebp - 0x9c]
inc edi
push 0x68
pop ecx
add esi, ecx
mov dword [ebp - 0xa0], edi
push 0x18
mov dword [ebp - 0xa4], esi
pop edx
cmp edi, dword [ebp - 0xc8]
jl 0x10019f72
call fcn.100354db
ret