Function at 0x180037490
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov rax, qword [0x180110318]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rbx, qword [rbp - 0x59]
lea r12d, [rcx + 0x16]
mov eax, ecx
mov dword [rbp - 0x79], ecx
mov esi, dword [rbp - 0x79]
xor edi, edi
mov qword [rsp + 0x30], r9
mov r15d, ecx
mov qword [rbp - 0x51], rdx
mov r13, r8
mov qword [rbp - 0x61], rbx
lea rcx, [0x180000000]
cmp eax, r12d
jae 0x1800375f9
lea r14d, [rax - 0x5d]
mov edx, 0x6f63
mov r8d, 0x7777
nop
cmp r14d, 0x70
ja case.default.0x180037524
movzx eax, byte [rcx + r14 + 0x37d90]
mov ecx, dword [rcx + rax*4 + 0x37d34]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov r8d, 1
lea rdx, [0x180107eef]
lea rcx, [rbp + 0x11]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
jmp 0x1800375cc
test rbx, rbx
jne case.0x180037524.22
mov ecx, 0x12
mov eax, ecx
sub eax, 0x12
je 0x180037588
cmp eax, 1
jne 0x18003758d
mov rax, qword [rsp + 0x38]
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.180090270
mov rbx, qword [rsp + 0x120]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x38], rdi
inc ecx
cmp ecx, 0x14
jb 0x180037550
jmp case.0x180037524.22
mov dword [rbp + 0x16], 0x2e746964
jmp case.0x180037524.22
mov byte [rbp + 0x1a], dil
jmp case.0x180037524.22
mov word [rbp + 0x1a], dx
jmp case.0x180037524.22
mov byte [rbp + 0x1c], 0x6d
jmp case.0x180037524.22
mov rcx, qword [r13]
lea rdx, [rbp - 0x49]
mov r8d, 0x72
mov rax, qword [rcx + 8]
mov qword [rbp - 0x49], rax
call fcn.180032580
mov r9, qword [rsp + 0x30]
mov r8d, 0x7777
mov edx, 0x6f63
lea rcx, [0x180000000]
inc r15d
inc r14d
cmp r15d, r12d
jb 0x180037500
mov eax, dword [rbp - 0x79]
mov rdx, qword [rbp - 0x51]
lea r12d, [rax - 0x15]
cmp eax, r12d
jbe case.0x180037647.19
lea r15d, [rax - 0x53]
mov r8d, 0x1bb
mov r14d, 0x6e
lea r11, [0x18007b3f0]
mov r10d, 0x300
cmp r15d, 0x78
ja case.0x180037647.21
movzx eax, byte [rcx + r15 + 0x37e5c]
mov ecx, dword [rcx + rax*4 + 0x37e04]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rcx, qword [r13 + 0x30]
mov rax, qword [r13 + 0x38]
mov qword [r13 + 0x30], rax
mov qword [r13 + 0x38], rcx
jmp case.0x180037524.22
mov rax, qword [r13]
lea rdx, [rbp - 0x41]
mov r8d, 0xa1
mov qword [rbp - 0x41], rax
xor ecx, ecx
call fcn.180025a20
mov rbx, rax
mov qword [rbp - 0x61], rax
jmp 0x1800375cc
mov rax, qword [r13]
lea rdx, [rbp - 0x39]
mov qword [rsp + 0x28], rdi
xor r9d, r9d
mov r8d, 0xcc
mov qword [rbp - 0x39], rax
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.18005e800
test eax, eax
je 0x1800378e1
mov rax, qword [r13]
lea r8, [rbp - 0x31]
mov r9, qword [rsp + 0x30]
lea rdx, str.Intent
mov ecx, 0xa5
mov qword [rbp - 0x31], rax
call fcn.180025670
mov dword [rsp + 0x38], eax
jmp 0x1800375cc
mov r9, r13
xor r8d, r8d
xor edx, edx
mov ecx, 0xe4
call fcn.1800834d0
test al, al
jne 0x1800375cc
mov ecx, 0x42
mov eax, ecx
sub eax, 0x42
je 0x18003770a
cmp eax, 0x41
je case.0x180037647.19
jmp 0x18003770f
mov byte [rsp + 0x38], dil
add ecx, 0x41
cmp ecx, 0xc4
jb 0x1800376f8
jmp 0x1800375cc
mov rdx, qword [rbp - 0x29]
test rdx, rdx
jne 0x18003774c
mov ecx, 0x2e
nop dword [rax]
mov eax, ecx
sub eax, 0x2d
je case.0x180037647.19
cmp eax, 1
jne 0x180037745
mov byte [rsp + 0x38], dil
dec ecx
cmp ecx, 0x2c
ja 0x180037730
mov rax, rdx
xchg qword [0x180110400], rax
jmp 0x1800375d7
mov dword [rbp + 0x12], 0x6465722e
jmp case.0x180037524.22
mov qword [r13 + 0x80], r9
lea r8, [0x180088b20]
mov r9, r13
mov qword [rsp + 0x28], rdi
xor edx, edx
mov dword [rsp + 0x20], edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbp - 0x29], rax
jmp 0x1800375cc
mov rax, qword [r13]
test rax, rax
je case.0x180037647.19
mov rcx, qword [rax + 0x20]
lea rdx, [rbp - 0x59]
mov rax, qword [rax + 8]
mov r8d, 0x72
mov qword [rbp - 0x59], rax
jmp 0x1800375c7
cmp qword [r13 + 0x30], rdi
jne 0x180037861
mov ebx, 0xe5
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xe3
je 0x180037844
sub eax, 1
je 0x1800377ed
cmp eax, 1
jne 0x18003784f
mov rax, qword [r13 + 0x10]
mov qword [r13 + 0x30], rax
jmp 0x18003784f
mov ecx, dword [r13 + 0x28]
xor r9d, r9d
mov rdx, qword [r13 + 0x30]
lea rax, [rcx + rcx*2]
lea r8d, [rcx + rcx*2]
shl rax, 4
add rax, qword [r13 + 0x10]
lea ecx, [r9 + 8]
shl r8d, 4
mov qword [r13 + 0x38], rax
call qword [r13 + 0x20]
test eax, eax
je 0x18003784f
mov ecx, 0xbc
mov eax, ecx
sub eax, 0xbb
je case.0x180037647.19
cmp eax, 1
jne 0x180037838
mov byte [rsp + 0x38], dil
dec ecx
cmp ecx, 0xba
ja 0x180037821
jmp 0x18003784f
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
dec ebx
cmp ebx, 0xe2
ja 0x1800377d0
mov rbx, qword [rbp - 0x61]
mov eax, dword [r13 + 0x28]
xor r9d, r9d
mov rdx, qword [r13 + 0x38]
lea r8d, [rax + rax*2]
shl r8d, 4
lea ecx, [r9 + 8]
call qword [r13 + 0x20]
test eax, eax
je 0x1800375cc
mov byte [rsp + 0x38], dil
jmp case.0x180037647.19
mov qword [0x1801103f8], r13
jmp case.0x180037524.22
mov byte [rbp + 0x1d], dil
mov dword [rbp - 9], 0x6d6f63
jmp case.0x180037524.22
mov qword [rsp + 0x28], rdi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rdi
mov rdx, r13
mov ecx, 0x111
call fcn.1800165a0
jmp 0x1800375cc
mov word [rbp + 0xf], r8w
mov byte [rbp + 0x11], dil
jmp case.0x180037524.22
mov esi, edi
jmp case.0x180037524.22
mov dword [rsp + 0x38], 0x1030
jmp case.0x180037647.19
mov ecx, 0x113
mov eax, ecx
sub eax, 0x113
je 0x180037907
cmp eax, 0x51
je case.0x180037647.19
jmp 0x18003790c
mov byte [rsp + 0x38], 1
add ecx, 0x51
cmp ecx, 0x1b5
jb 0x1800378f3
mov byte [rsp + 0x38], 1
jmp case.0x180037647.21
test esi, esi
jne case.0x180037647.21
mov rax, qword [r9]
test rax, rax
je case.0x180037647.21
lea r8, [rbp - 0x69]
mov qword [rbp - 0x71], rbx
lea rdx, [rbp - 0x71]
mov qword [rbp - 0x69], rax
mov ecx, 0x10a
call fcn.18002ca70
mov rsi, rax
jmp 0x180037cf2
add r9, 0x40
mov qword [rsp + 0x28], rdi
xor edx, edx
mov qword [rsp + 0x20], rdi
mov r8d, 0x8f
lea rcx, [rbp - 0x21]
call fcn.180050670
jmp 0x180037cf2
mov rax, qword [rdx]
mov r9d, 0xff
lea rdx, [rbp - 0x71]
mov qword [rbp - 0x71], rax
mov r8, rbx
mov qword [rsp + 0x20], rdi
xor ecx, ecx
call fcn.180018fd0
test eax, eax
je 0x180037cf2
mov rax, rdi
jmp 0x180037561
mov word [r9 + 0x60], r8w
jmp case.0x180037647.21
mov r8d, 4
lea rdx, [0x180107f14]
lea rcx, [rbp + 7]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
lea rax, [rbp + 0xf]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], dil
jne 0x1800379d7
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp + 0xf]
call fcn.18008cfd0
jmp 0x180037cf2
mov r8d, 2
lea rdx, [0x180103600]
lea rcx, [rbp - 3]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov r8d, 1
lea rdx, [0x1801035a0]
lea rcx, [rbp - 9]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
jmp 0x180037cf2
mov byte [rbp + 7], dil
jmp case.0x180037647.21
cmp qword [r13 + 0x18], 0x10
mov rdx, r13
jb 0x180037a3d
mov rdx, qword [r13]
mov r8, qword [r13 + 0x10]
lea rcx, [r9 + 0x20]
call fcn.18008cc40
jmp 0x180037cf2
lea r9, str.Pages
mov qword [rbp - 0x71], rbx
lea r8, [rbp - 0x71]
mov ecx, 0xa5
lea rdx, str.Type
call fcn.180025670
mov r14, qword [rbp - 0x61]
lea rdx, [rbp - 0x71]
mov ebx, eax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
mov ecx, 0xeb
mov rax, qword [r14 + 8]
mov qword [rbp - 0x71], rax
call fcn.18000ee60
mov r9d, 0x96
mov qword [rbp - 0x69], r14
mov r8, rax
lea rdx, str.Kids
lea rcx, [rbp - 0x69]
call fcn.18003a680
add eax, ebx
add esi, eax
jmp 0x180037cec
mov rax, qword [rbx + 8]
lea r8, [rbp - 0x69]
lea rdx, [rbp - 0x71]
mov qword [rbp - 0x71], rax
mov ecx, 0x44
mov dword [rbp - 0x69], edi
call fcn.180078610
mov r9d, 0x96
mov qword [rbp - 0x69], rbx
mov r8, rax
lea rdx, str.Count
lea rcx, [rbp - 0x69]
call fcn.18003a680
add esi, eax
jmp 0x180037cf2
mov rcx, qword [r9 + 0x30]
lea rbx, [r9 + 0x20]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180037b2a
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180037b22
mov rax, qword [rbx]
mov word [rax + rcx], 0x2f
jmp 0x180037b3c
xor r8d, r8d
mov r9b, 0x2f
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180001dc0
lea rax, [rbp - 9]
mov r14, 0xffffffffffffffff
inc r14
cmp byte [rax + r14], dil
jne 0x180037b47
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp r14, rax
ja 0x180037b8f
lea rax, [rcx + r14]
mov qword [rbx + 0x10], rax
cmp rdx, 0x10
jb 0x180037b74
mov rbx, qword [rbx]
add rbx, rcx
lea rdx, [rbp - 9]
mov rcx, rbx
mov r8, r14
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + r14], dil
jmp 0x180037cec
lea r9, [rbp - 9]
jmp 0x180037cd9
mov ecx, 0x66
nop dword [rax]
mov eax, ecx
sub eax, 0x66
je 0x180037bb2
cmp eax, 1
je case.0x180037647.19
jmp 0x180037bb7
mov qword [rsp + 0x38], rbx
inc ecx
cmp ecx, 0x68
jb 0x180037ba0
mov rdx, qword [r9 + 0x30]
lea rcx, [r9 + 0x20]
mov r8, qword [rcx + 0x18]
cmp rdx, r8
jae 0x180037beb
lea rax, [rdx + 1]
mov qword [rcx + 0x10], rax
cmp r8, 0x10
jb 0x180037be0
mov rcx, qword [rcx]
mov word [rcx + rdx], 0x2f
jmp 0x180037cff
xor r8d, r8d
mov r9b, 0x2f
lea edx, [r8 + 1]
call fcn.180001dc0
jmp 0x180037cf2
test esi, esi
jne 0x1800379a3
jmp case.0x180037647.21
mov word [rbp - 6], 0x6d
jmp case.0x180037647.21
mov r8d, 2
lea rdx, [0x180103b10]
lea rcx, [rbp - 5]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov word [rbp - 4], r14w
jmp 0x180037cf2
or word [rbx + 6], r10w
mov qword [rbx + 0x20], r11
jmp case.0x180037647.21
mov rcx, qword [r9 + 0x30]
lea rbx, [r9 + 0x20]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180037c73
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180037c6b
mov rax, qword [rbx]
mov word [rax + rcx], 0x2e
jmp 0x180037c85
xor r8d, r8d
mov r9b, 0x2e
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180001dc0
lea rax, [rbp + 7]
mov r14, 0xffffffffffffffff
inc r14
cmp byte [rax + r14], dil
jne 0x180037c90
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp r14, rax
ja 0x180037cd5
lea rax, [rcx + r14]
mov qword [rbx + 0x10], rax
cmp rdx, 0x10
jb 0x180037cbd
mov rbx, qword [rbx]
add rbx, rcx
lea rdx, [rbp + 7]
mov rcx, rbx
mov r8, r14
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + r14], dil
jmp 0x180037cec
lea r9, [rbp + 7]
xor r8d, r8d
mov qword [rsp + 0x20], r14
mov rdx, r14
mov rcx, rbx
call fcn.180001f20
mov r14d, 0x6e
lea r11, [0x18007b3f0]
mov r10d, 0x300
mov r8d, 0x1bb
mov ebx, dword [rbp - 0x79]
dec r15d
dec ebx
mov dword [rbp - 0x79], ebx
cmp ebx, r12d
jbe case.0x180037647.19
mov rbx, qword [rbp - 0x61]
lea rcx, [0x180000000]
mov r9, qword [rsp + 0x30]
mov rdx, qword [rbp - 0x51]
jmp 0x180037623