Function at 0x180001d50
Capabilities:
Access peb ldr_data

Disassembly:
push rbp
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov edx, 0x445c
mov rcx, 0xffffffffffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.180002f80
test eax, eax
js 0x18000293c
mov qword [rsp + 0x128], rbx
lea rdx, [rbp + 0x20]
mov qword [rsp + 0x130], rsi
xor ecx, ecx
mov qword [rsp + 0x138], rdi
mov qword [rsp + 0x108], r12
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf0], r15
mov qword [rbp + 0x20], 0xfffffffffe8287c0
call fcn.1800033fc
mov rax, qword gs:[0x30]
mov edx, 8
mov r8d, 0x38
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x180001df4
mov dword [rsp + 0x60], 0x380036
mov rax, qword gs:[0x30]
mov r13d, 0x40
mov r8d, r13d
mov edx, 8
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov qword [rbp - 0x48], rax
mov rsi, rax
test rax, rax
je 0x180001e32
mov dword [rbp - 0x50], 0x40003e
movzx r15d, r13w
jmp 0x180001e37
movzx r15d, word [rbp - 0x4e]
mov rax, qword gs:[0x30]
mov edx, 8
mov r8d, 0x208
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov qword [rsp + 0x78], rax
test rax, rax
je 0x180001e6b
mov dword [rsp + 0x70], 0x2080028
mov rax, qword gs:[0x30]
mov edx, 8
mov r8d, 0x298
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov qword [rbp - 0x78], rax
test rax, rax
je 0x180001e9d
mov dword [rbp - 0x80], 0x2980296
mov rax, qword gs:[0x30]
xor edx, edx
mov rdi, qword [rsp + 0x68]
mov r8d, 0x20
mov qword [rsp + 0xf8], r14
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
xor r12d, r12d
mov rbx, rax
test rax, rax
je 0x180001fc8
lea r14, [rax + 0x1a]
mov r9d, 0x20
lea rdx, [0x1800044a8]
mov byte [r14], 0xc5
mov r8, rax
mov dword [rax], 0x5499847b
lea rcx, [0x180004488]
mov dword [rax + 4], 0x32c3c542
mov dword [rax + 8], 0x2073e82f
mov dword [rax + 0xc], 0x4ca406c
mov dword [rax + 0x10], 0x2a3469ca
mov dword [rax + 0x14], 0xaef1157b
mov word [rax + 0x18], 0x9629
mov dword [rax + 0x1b], 0xdcbb78df
mov byte [rax + 0x1f], 0x7b
call fcn.180002950
lea rax, [rdi + 0x34]
mov ecx, r12d
cmp rdi, r14
ja 0x180001f47
cmp rax, rbx
jae 0x180001f80
movq xmm1, qword [rbx]
xorps xmm0, xmm0
movq xmm2, qword [rbx + 8]
mov ecx, 0x18
punpcklbw xmm1, xmm0
movdqu xmmword [rdi], xmm1
movq xmm1, qword [rbx + 0x10]
punpcklbw xmm2, xmm0
punpcklbw xmm1, xmm0
movdqu xmmword [rdi + 0x10], xmm2
movdqu xmmword [rdi + 0x20], xmm1
nop word [rax + rax]
movzx eax, byte [rbx + rcx]
mov word [rdi + rcx*2], ax
inc rcx
cmp rcx, 0x1b
jb 0x180001f80
mov qword [rbx], r12
mov r8, rbx
mov qword [rbx + 8], r12
xor edx, edx
mov qword [rbx + 0x10], r12
mov word [rbx + 0x18], r12w
mov byte [r14], r12b
mov dword [rbx + 0x1b], r12d
mov byte [rbx + 0x1f], r12b
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
mov rax, qword gs:[0x30]
xor edx, edx
mov r8d, 0x20
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov rbx, rax
test rax, rax
je 0x1800020d9
lea rdi, [rax + 0x1e]
mov r9d, 0x20
lea rdx, [0x180004510]
mov byte [rdi], 0x47
mov r8, rax
mov dword [rax], 0x4033ff3f
lea rcx, [0x1800044f0]
mov dword [rax + 4], 0x20e909ea
mov dword [rax + 8], 0xc4308e1
mov dword [rax + 0xc], 0x5b37de1e
mov dword [rax + 0x10], 0x1392e296
mov dword [rax + 0x14], 0xb4f01eee
mov dword [rax + 0x18], 0x295d1461
mov word [rax + 0x1c], 0x54cd
mov byte [rax + 0x1f], 0x17
call fcn.180002950
lea rax, [rsi + 0x3c]
mov rcx, r12
cmp rsi, rdi
ja 0x180002061
cmp rax, rbx
jae 0x180002091
movq xmm1, qword [rbx]
xorps xmm0, xmm0
movq xmm2, qword [rbx + 8]
mov ecx, 0x18
punpcklbw xmm1, xmm0
movdqu xmmword [rsi], xmm1
movq xmm1, qword [rbx + 0x10]
punpcklbw xmm2, xmm0
punpcklbw xmm1, xmm0
movdqu xmmword [rsi + 0x10], xmm2
movdqu xmmword [rsi + 0x20], xmm1
movzx eax, byte [rbx + rcx]
mov word [rsi + rcx*2], ax
inc rcx
cmp rcx, 0x1f
jb 0x180002091
mov qword [rbx], r12
mov r8, rbx
mov qword [rbx + 8], r12
xor edx, edx
mov qword [rbx + 0x10], r12
mov dword [rbx + 0x18], r12d
mov word [rbx + 0x1c], r12w
mov byte [rdi], r12b
mov byte [rbx + 0x1f], r12b
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
mov rax, qword gs:[0x30]
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov r8d, 0x20
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov rbx, rax
test rax, rax
je 0x1800021e8
lea r14, [rax + 0x13]
mov r9d, 0x20
lea rdx, [0x180004578]
mov byte [r14], 0x5c
mov r8, rax
mov dword [rax], 0xb07e852c
lea rcx, [0x180004558]
mov dword [rax + 4], 0x8b96cdd0
mov dword [rax + 8], 0xf90e7208
mov dword [rax + 0xc], 0xcdaea134
mov word [rax + 0x10], 0x48ae
mov byte [rax + 0x12], 0x93
mov dword [rax + 0x14], 0x8db423b1
mov dword [rax + 0x18], 0x2989be13
mov dword [rax + 0x1c], 0xd82962da
call fcn.180002950
lea rax, [rdi + 0x26]
mov rcx, r12
cmp rdi, r14
ja 0x180002178
cmp rax, rbx
jae 0x1800021a0
movq xmm1, qword [rbx]
xorps xmm0, xmm0
movq xmm2, qword [rbx + 8]
mov ecx, 0x10
punpcklbw xmm1, xmm0
punpcklbw xmm2, xmm0
movdqu xmmword [rdi], xmm1
movdqu xmmword [rdi + 0x10], xmm2
nop word [rax + rax]
movzx eax, byte [rbx + rcx]
mov word [rdi + rcx*2], ax
inc rcx
cmp rcx, 0x14
jb 0x1800021a0
mov qword [rbx], r12
mov r8, rbx
mov qword [rbx + 8], r12
xor edx, edx
mov word [rbx + 0x10], r12w
mov byte [rbx + 0x12], r12b
mov byte [r14], r12b
mov qword [rbx + 0x14], r12
mov dword [rbx + 0x1c], r12d
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
mov rax, qword gs:[0x30]
xor edx, edx
mov rdi, qword [rbp - 0x78]
mov r8d, 0x150
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov r14, qword [rsp + 0xf8]
mov rbx, rax
test rax, rax
je 0x18000235b
lea r8, [0x180004600]
mov rcx, rax
sub r8, rax
mov edx, 0x150
movzx eax, byte [r8 + rcx]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x180002231
mov r9d, 0x150
lea rdx, [0x1800045e0]
mov r8, rbx
lea rcx, [0x1800045c0]
call fcn.180002950
lea rax, [rbx + 0x14a]
mov rcx, r12
lea rdx, [rdi + 0x294]
cmp rdi, rax
ja 0x180002279
cmp rdx, rbx
jae 0x1800022e0
lea rax, [rbx + 0x10]
mov ecx, 0x140
lea rdx, [rdi + 0x20]
mov r8d, 0xa
nop dword [rax]
movq xmm1, qword [rax - 0x10]
xorps xmm0, xmm0
movq xmm2, qword [rax - 8]
lea rdx, [rdx + 0x40]
punpcklbw xmm1, xmm0
lea rax, [rax + 0x20]
punpcklbw xmm2, xmm0
movdqu xmmword [rdx - 0x60], xmm1
movq xmm1, qword [rax - 0x20]
punpcklbw xmm1, xmm0
movdqu xmmword [rdx - 0x50], xmm2
movq xmm2, qword [rax - 0x18]
punpcklbw xmm2, xmm0
movdqu xmmword [rdx - 0x40], xmm1
movdqu xmmword [rdx - 0x30], xmm2
sub r8, 1
jne 0x180002290
nop dword [rax]
movzx eax, byte [rbx + rcx]
mov word [rdi + rcx*2], ax
inc rcx
cmp rcx, 0x14b
jb 0x1800022e0
mov rax, rbx
xorps xmm0, xmm0
mov ecx, 2
nop
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
sub rcx, 1
jne 0x180002300
movups xmmword [rax], xmm0
mov r8, rbx
xor edx, edx
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
mov qword [rsp + 0x28], 0xffffffffffffffff
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x70]
mov dword [rsp + 0x20], 1
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x60]
call fcn.180002a50
movzx r8d, word [rsp + 0x62]
mov ebx, eax
test r8, r8
je 0x18000239c
mov rcx, qword [rsp + 0x68]
xor edx, edx
call fcn.180003330
mov rcx, qword gs:[0x30]
xor edx, edx
mov r8, qword [rsp + 0x68]
mov rcx, qword [rcx + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
test al, al
je 0x1800023c8
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x60], r12d
movzx r8d, r15w
mov r15, qword [rsp + 0xf0]
test r8, r8
je 0x1800023e3
xor edx, edx
mov rcx, rsi
call fcn.180003330
mov rax, qword gs:[0x30]
mov r8, rsi
xor edx, edx
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
movzx r8d, word [rsp + 0x72]
test r8, r8
je 0x180002416
mov rcx, qword [rsp + 0x78]
xor edx, edx
call fcn.180003330
mov rax, qword gs:[0x30]
xor edx, edx
mov r8, qword [rsp + 0x78]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
test al, al
je 0x180002442
mov qword [rsp + 0x78], r12
mov dword [rsp + 0x70], r12d
movzx r8d, word [rbp - 0x7e]
test r8, r8
je 0x180002457
mov rcx, qword [rbp - 0x78]
xor edx, edx
call fcn.180003330
mov rax, qword gs:[0x30]
xor edx, edx
mov r8, qword [rbp - 0x78]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
test al, al
je 0x180002480
mov qword [rbp - 0x78], r12
mov dword [rbp - 0x80], r12d
test ebx, ebx
js 0x180002497
lea rdx, [rbp + 0x20]
mov qword [rbp + 0x20], 0xfffffffffeced300
xor ecx, ecx
call fcn.1800033fc
mov rax, qword gs:[0x30]
mov edx, 8
mov r8d, 0x44
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov qword [rbp - 0x58], rax
test rax, rax
je 0x1800024c9
mov dword [rbp - 0x60], 0x440042
mov rax, qword gs:[0x30]
mov edx, 8
mov r8d, 0x4c
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov qword [rbp - 0x68], rax
test rax, rax
je 0x1800024fb
mov dword [rbp - 0x70], 0x4c004a
mov rax, qword gs:[0x30]
xor edx, edx
mov rsi, qword [rbp - 0x58]
mov r8d, 0x30
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov rdi, rax
test rax, rax
je 0x18000263b
lea rbx, [rax + 0x20]
mov r9d, 0x30
lea rdx, [0x1800043b8]
mov byte [rbx], 0x25
mov r8, rax
mov dword [rax], 0xf82dbe2
lea rcx, [0x180004398]
mov dword [rax + 4], 0x52380d95
mov dword [rax + 8], 0xb83daa38
mov dword [rax + 0xc], 0xaeac1654
mov dword [rax + 0x10], 0x6c229415
mov dword [rax + 0x14], 0x6421b28d
mov dword [rax + 0x18], 0x8b4bdb65
mov dword [rax + 0x1c], 0xb14df8a1
mov dword [rax + 0x21], 0x363440e8
mov dword [rax + 0x25], 0x9cc01768
mov dword [rax + 0x29], 0xe644558d
mov word [rax + 0x2d], 0x2f83
mov byte [rax + 0x2f], 0xdb
call fcn.180002950
lea rax, [rsi + 0x40]
mov rcx, r12
cmp rsi, rbx
ja 0x1800025b4
cmp rax, rdi
jae 0x180002600
movq xmm1, qword [rdi]
xorps xmm0, xmm0
movq xmm2, qword [rdi + 8]
mov ecx, 0x20
punpcklbw xmm1, xmm0
movdqu xmmword [rsi], xmm1
movq xmm1, qword [rdi + 0x10]
punpcklbw xmm2, xmm0
movdqu xmmword [rsi + 0x10], xmm2
movq xmm2, qword [rdi + 0x18]
punpcklbw xmm1, xmm0
punpcklbw xmm2, xmm0
movdqu xmmword [rsi + 0x20], xmm1
movdqu xmmword [rsi + 0x30], xmm2
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdi + rcx]
mov word [rsi + rcx*2], ax
inc rcx
cmp rcx, 0x21
jb 0x180002600
xorps xmm0, xmm0
mov r8, rdi
movups xmmword [rdi], xmm0
xor edx, edx
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
mov rax, qword gs:[0x30]
xor edx, edx
mov rsi, qword [rbp - 0x68]
mov r8d, 0x30
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37508]
mov rbx, rax
test rax, rax
je 0x18000277b
lea rdi, [rax + 0x24]
mov r9d, 0x30
lea rdx, [0x180004430]
mov byte [rdi], 0x1c
mov r8, rax
mov dword [rax], 0x99f5a461
lea rcx, [0x180004410]
mov dword [rax + 4], 0x82e8d128
mov dword [rax + 8], 0x109e7caf
mov dword [rax + 0xc], 0x96e93247
mov dword [rax + 0x10], 0xbd9bf7d4
mov dword [rax + 0x14], 0x6671fec
mov dword [rax + 0x18], 0x98e12824
mov dword [rax + 0x1c], 0x6bf82ba2
mov dword [rax + 0x20], 0x6e6f7de0
mov dword [rax + 0x25], 0x5c2de7dc
mov dword [rax + 0x29], 0xdefff04d
mov word [rax + 0x2d], 0x3d55
mov byte [rax + 0x2f], 0xc2
call fcn.180002950
lea rax, [rsi + 0x48]
mov rcx, r12
cmp rsi, rdi
ja 0x1800026f4
cmp rax, rbx
jae 0x180002740
movq xmm1, qword [rbx]
xorps xmm0, xmm0
movq xmm2, qword [rbx + 8]
mov ecx, 0x20
punpcklbw xmm1, xmm0
movdqu xmmword [rsi], xmm1
movq xmm1, qword [rbx + 0x10]
punpcklbw xmm2, xmm0
movdqu xmmword [rsi + 0x10], xmm2
movq xmm2, qword [rbx + 0x18]
punpcklbw xmm1, xmm0
punpcklbw xmm2, xmm0
movdqu xmmword [rsi + 0x20], xmm1
movdqu xmmword [rsi + 0x30], xmm2
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rbx]
mov word [rsi + rcx*2], ax
inc rcx
cmp rcx, 0x25
jb 0x180002740
xorps xmm0, xmm0
mov r8, rbx
movups xmmword [rbx], xmm0
xor edx, edx
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
lea rdi, [0x184eb60c0]
mov r9d, 0xd81400
mov r8, rdi
lea rdx, [0x180004778]
lea rcx, [0x180004758]
call fcn.180002950
mov dword [rsp + 0x50], r12d
lea rax, [rbp - 0x70]
mov qword [rsp + 0x48], r12
lea r9, [rbp - 0x50]
mov dword [rsp + 0x40], 0x20
lea r8, [rbp - 0x40]
mov dword [rsp + 0x38], 5
lea rcx, [rbp + 0x20]
xorps xmm0, xmm0
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], 0x80
mov edx, 0x120116
mov qword [rsp + 0x20], r12
mov qword [rbp - 0x40], 0x30
mov qword [rbp - 0x28], r13
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp + 0x20], r12
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], rax
movdqu xmmword [rbp - 0x20], xmm0
call entry0
mov r13, qword [rsp + 0x100]
mov ebx, eax
mov rsi, qword [rsp + 0x130]
test eax, eax
js 0x18000285d
mov rcx, qword [rbp + 0x20]
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], r12
xor r9d, r9d
mov qword [rsp + 0x38], r12
xor r8d, r8d
mov dword [rsp + 0x30], 0xd81400
xor edx, edx
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
call fcn.1800033cc
mov rcx, qword [rbp + 0x20]
mov ebx, eax
call fcn.1800033d8
movzx r8d, word [rbp - 0x6e]
test r8, r8
je 0x180002872
mov rcx, qword [rbp - 0x68]
xor edx, edx
call fcn.180003330
mov rax, qword gs:[0x30]
xor edx, edx
mov r8, qword [rbp - 0x68]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
test al, al
je 0x18000289b
mov qword [rbp - 0x68], r12
mov dword [rbp - 0x70], r12d
xor edx, edx
mov r8d, 0xd81400
mov rcx, rdi
call fcn.180003330
mov rdi, qword [rsp + 0x138]
test ebx, ebx
mov rbx, qword [rsp + 0x128]
js 0x180002934
lea r9, [rbp + 0x20]
mov qword [rbp + 0x20], r12
lea r8, [rbp - 0x60]
xor edx, edx
xor ecx, ecx
call qword [0x185c374e8]
test eax, eax
js 0x1800028e3
mov rcx, qword [rbp + 0x20]
call qword [0x185c374e0]
movzx r8d, word [rbp - 0x5e]
test r8, r8
je 0x1800028f8
mov rcx, qword [rbp - 0x58]
xor edx, edx
call fcn.180003330
mov rax, qword gs:[0x30]
xor edx, edx
mov r8, qword [rbp - 0x58]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [0x185c37500]
test al, al
je 0x180002921
mov qword [rbp - 0x58], r12
mov dword [rbp - 0x60], r12d
lea rdx, [rbp + 0x20]
mov qword [rbp + 0x20], 0xffffffffff676980
xor ecx, ecx
call fcn.1800033fc
mov r12, qword [rsp + 0x108]
add rsp, 0x110
pop rbp
ret