Function at 0x406d60
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
mov r11, rsp
sub rsp, 0x1f8
mov qword [rsp + 0x178], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov qword [r11 - 8], rsi
mov qword [r11 - 0x10], rdi
mov qword [r11 - 0x18], r12
mov qword [r11 - 0x20], r13
mov rax, qword [0x00455290]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
mov r12, rdx
mov rdi, rcx
mov qword [r11 - 0x78], rcx
xor r13d, r13d
mov qword [r11 - 0x138], r13
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], r13
mov word [rsp + 0x30], 0x44
lea rax, [rsp + 0x38]
mov qword [r11 - 0x48], rax
mov qword [r11 - 0x40], r13
movaps xmm0, xmmword [r11 - 0x48]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
lea r8d, [r13 + 1]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rsi, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x406e1b
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
cmp rsi, rdx
ja 0x406e25
cmp rsi, rbx
jae 0x406e34
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x64
test rbx, rbx
je 0x406e71
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x406e71
mov word [rdx], 0x64
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x406f20
mov rsi, rdx
cmp rbx, rdx
jbe 0x406e88
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x406eb9
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x406eb9
cmp rbx, rdx
jbe 0x406eb1
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x406ebc
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x406f02
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x406f11
cmp rax, rbx
jae 0x406f20
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x76
test rbx, rbx
je 0x406f5d
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x406f5d
mov word [rdx], 0x76
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x40700c
mov rsi, rdx
cmp rbx, rdx
jbe 0x406f74
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x406fa5
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x406fa5
cmp rbx, rdx
jbe 0x406f9d
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x406fa8
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x406fee
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x406ffd
cmp rax, rbx
jae 0x40700c
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x43
test rbx, rbx
je 0x407049
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x407049
mov word [rdx], 0x43
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x4070f8
mov rsi, rdx
cmp rbx, rdx
jbe 0x407060
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x407091
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x407091
cmp rbx, rdx
jbe 0x407089
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x407094
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x4070da
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x4070e9
cmp rax, rbx
jae 0x4070f8
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x62
test rbx, rbx
je 0x407135
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x407135
mov word [rdx], 0x62
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x4071e4
mov rsi, rdx
cmp rbx, rdx
jbe 0x40714c
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x40717d
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x40717d
cmp rbx, rdx
jbe 0x407175
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x407180
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x4071c6
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x4071d5
cmp rax, rbx
jae 0x4071e4
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x64
test rbx, rbx
je 0x407221
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x407221
mov word [rdx], 0x64
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x4072d0
mov rsi, rdx
cmp rbx, rdx
jbe 0x407238
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x407269
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x407269
cmp rbx, rdx
jbe 0x407261
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x40726c
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x4072b2
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x4072c1
cmp rax, rbx
jae 0x4072d0
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x63
test rbx, rbx
je 0x40730d
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x40730d
mov word [rdx], 0x63
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x4073bc
mov rsi, rdx
cmp rbx, rdx
jbe 0x407324
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x407355
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x407355
cmp rbx, rdx
jbe 0x40734d
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x407358
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x40739e
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x4073ad
cmp rax, rbx
jae 0x4073bc
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x59
test rbx, rbx
je 0x4073f9
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x4073f9
mov word [rdx], 0x59
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x4074a8
mov rsi, rdx
cmp rbx, rdx
jbe 0x407410
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x407441
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x407441
cmp rbx, rdx
jbe 0x407439
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x407444
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x40748a
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x407499
cmp rax, rbx
jae 0x4074a8
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x71
test rbx, rbx
je 0x4074e5
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x4074e5
mov word [rdx], 0x71
add rdx, 2
mov qword [rsp + 0x48], rdx
mov rbx, qword [rsp + 0x40]
jmp 0x407594
mov rsi, rdx
cmp rbx, rdx
jbe 0x4074fc
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x40752d
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x40752d
cmp rbx, rdx
jbe 0x407525
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x407530
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov rbx, qword [rsp + 0x40]
mov rbp, rbx
mov rdx, qword [rsp + 0x48]
cmp rbx, rdx
jbe 0x407576
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rbp + rsi*2]
cmp rax, rdx
ja 0x407585
cmp rax, rbx
jae 0x407594
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rsp + 0x30], 0x78
test rbx, rbx
je 0x4075cc
mov rcx, rdx
sub rcx, rbx
sar rcx, 1
mov rax, qword [rsp + 0x50]
sub rax, rbx
sar rax, 1
cmp rcx, rax
jae 0x4075cc
mov word [rdx], 0x78
lea rax, [rdx + 2]
mov qword [rsp + 0x48], rax
jmp 0x407670
mov rsi, rdx
cmp rbx, rdx
jbe 0x4075e3
call fcn.00427b10
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
test rbx, rbx
je 0x407614
mov rax, rdx
sub rax, rbx
sar rax, 1
je 0x407614
cmp rbx, rdx
jbe 0x40760c
call fcn.00427b10
sub rsi, rbx
sar rsi, 1
jmp 0x407617
mov rsi, r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r9, [rsp + 0x30]
mov r8d, 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.0040ab30
mov r11, qword [rsp + 0x40]
mov rbx, r11
mov rax, qword [rsp + 0x48]
cmp r11, rax
jbe 0x40765d
call fcn.00427b10
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
lea rcx, [rbx + rsi*2]
cmp rcx, rax
ja 0x40766b
cmp rcx, r11
jae 0x407670
call fcn.00427b10
mov word [rsp + 0x30], 0x54
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x6c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x4d
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.0040a0f0
mov word [rsp + 0x1b0], 0x4d
mov word [rsp + 0x1b2], 0x7a
mov word [rsp + 0x1b4], 0x70
mov word [rsp + 0x1b6], 0x6f
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x60]
call fcn.00409f30
mov r9d, 4
lea r8, [rsp + 0x1b0]
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.00401280
nop
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], r13
mov word [rsp + 0x30], 0x48
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x4e
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x4d
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x54
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x4c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x5a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x59
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x45
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.0040a0f0
mov word [rsp + 0x1b0], 0x70
mov word [rsp + 0x1b2], 0x5a
mov word [rsp + 0x1b4], 0x48
mov word [rsp + 0x1b6], 0x61
lea r9, [0x00448200]
mov edx, 1
xor ecx, ecx
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x158]
call fcn.00409f30
mov r9d, 4
lea r8, [rsp + 0x1b0]
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.00401280
mov rbx, rax
mov qword [rsp + 0x128], 0xf
mov qword [rsp + 0x120], r13
mov byte [rsp + 0x110], 0
mov r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x108]
call fcn.0040a3c0
cmp qword [rbx + 0x20], 0x10
jb 0x4078a5
mov rbx, qword [rbx + 8]
jmp 0x4078a9
add rbx, 8
lea rdx, [rsp + 0x108]
mov rcx, r12
call fcn.00401b70
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0x20], rcx
mov r9d, 0xf003f
xor r8d, r8d
mov rdx, rbx
mov rcx, 0xffffffff80000001
call rax
nop
cmp qword [rsp + 0x150], 0x10
jb 0x4078f4
mov rcx, qword [rsp + 0x138]
call fcn.0040be18
cmp qword [rsp + 0xc0], 0
jne 0x40799e
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x407915
call fcn.0040be18
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], r13
cmp qword [rsp + 0x1a8], 0x10
jb 0x407945
mov rcx, qword [rsp + 0x190]
call fcn.0040be18
mov qword [rsp + 0x1a8], 0xf
mov qword [rsp + 0x1a0], r13
mov byte [rsp + 0x190], 0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x407970
call fcn.0040be18
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x40798d
call fcn.0040be18
mov qword [rdi + 8], r13
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], r13
jmp 0x4081f8
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x98], r13
mov word [rsp + 0x30], 0x44
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x7a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x72
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x5a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x70
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x78
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x48
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x76
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x77
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x62
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x70
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x49
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x6a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x56
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.0040a0f0
mov word [rsp + 0x1b0], 0x6d
mov word [rsp + 0x1b2], 0x56
mov word [rsp + 0x1b4], 0x4c
mov word [rsp + 0x1b6], 0x48
mov word [rsp + 0x1b8], 0x4c
mov word [rsp + 0x1ba], 0x65
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x158]
call fcn.00409f30
mov r9d, 6
lea r8, [rsp + 0x1b0]
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.00401280
nop
mov r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.0040a3c0
nop
cmp qword [rsp + 0x150], 0x10
jb 0x407bb7
mov rcx, qword [rsp + 0x138]
call fcn.0040be18
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0x100], r13
mov word [rsp + 0x30], 0x69
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x61
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x4c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x74
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x66
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x67
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe8]
call fcn.0040a0f0
mov word [rsp + 0x1b0], 0x58
mov word [rsp + 0x1b2], 0x4c
mov word [rsp + 0x1b4], 0x49
mov word [rsp + 0x1b6], 0x74
mov word [rsp + 0x1b8], 0x4d
mov word [rsp + 0x1ba], 0x67
lea r9, [0x00448200]
mov edx, 1
xor ecx, ecx
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x158]
call fcn.00409f30
mov r9d, 6
lea r8, [rsp + 0x1b0]
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.00401280
mov rsi, rax
mov qword [rsp + 0x128], 0xf
mov qword [rsp + 0x120], r13
mov byte [rsp + 0x110], 0
mov r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x108]
call fcn.0040a3c0
mov rcx, qword [rdi + 8]
test rcx, rcx
jne 0x407d37
mov rbx, r13
jmp 0x407d3e
mov rbx, qword [rdi + 0x10]
sub rbx, rcx
test rcx, rcx
je 0x407d4c
mov rax, qword [rdi + 0x10]
sub rax, rcx
jne 0x407d51
call fcn.00427b10
mov rbp, qword [rdi + 8]
cmp qword [rsi + 0x20], 0x10
jb 0x407d62
mov rsi, qword [rsi + 8]
jmp 0x407d66
add rsi, 8
lea rdx, [rsp + 0x108]
mov rcx, r12
call fcn.00401b70
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbp
mov r9d, 3
xor r8d, r8d
mov rdx, rsi
mov rcx, qword [rsp + 0xc0]
call rax
test eax, eax
setne bl
cmp qword [rsp + 0x150], 0x10
jb 0x407db2
mov rcx, qword [rsp + 0x138]
call fcn.0040be18
test bl, bl
je 0x407ea9
mov rcx, qword [rsp + 0xf0]
test rcx, rcx
je 0x407dcc
call fcn.0040be18
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0x100], r13
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x407df6
call fcn.0040be18
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x98], r13
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x407e20
call fcn.0040be18
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], r13
cmp qword [rsp + 0x1a8], 0x10
jb 0x407e50
mov rcx, qword [rsp + 0x190]
call fcn.0040be18
mov qword [rsp + 0x1a8], 0xf
mov qword [rsp + 0x1a0], r13
mov byte [rsp + 0x190], 0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x407e7b
call fcn.0040be18
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x407e98
call fcn.0040be18
mov qword [rdi + 8], r13
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], r13
jmp 0x4081f8
mov qword [rsp + 0xd0], r13
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe0], r13
mov word [rsp + 0x30], 0x49
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x70
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x6c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x42
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x69
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x70
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x6a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x70
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x50
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x64
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x30], 0x76
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xc8]
call fcn.0040a0f0
mov word [rsp + 0x1b0], 0x72
mov word [rsp + 0x1b2], 0x4c
mov word [rsp + 0x1b4], 0x46
mov word [rsp + 0x1b6], 0x5a
mov word [rsp + 0x1b8], 0x58
mov word [rsp + 0x1ba], 0x42
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x158]
call fcn.00409f30
mov r9d, 6
lea r8, [rsp + 0x1b0]
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.00401280
nop
mov r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.0040a3c0
nop
cmp qword [rsp + 0x150], 0x10
jb 0x408077
mov rcx, qword [rsp + 0x138]
call fcn.0040be18
lea r9, [0x00448200]
mov edx, 1
xor ecx, ecx
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
mov qword [rsp + 0x128], 0xf
mov qword [rsp + 0x120], r13
mov byte [rsp + 0x110], 0
mov r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x108]
call fcn.0040a3c0
lea rdx, [rsp + 0x108]
mov rcx, r12
call fcn.00401b70
mov rcx, qword [rsp + 0xc0]
call rax
nop
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x4080f6
call fcn.0040be18
mov qword [rsp + 0xd0], r13
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe0], r13
mov rcx, qword [rsp + 0xf0]
test rcx, rcx
je 0x408120
call fcn.0040be18
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0x100], r13
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x40814a
call fcn.0040be18
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x98], r13
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x408174
call fcn.0040be18
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], r13
cmp qword [rsp + 0x1a8], 0x10
jb 0x4081a4
mov rcx, qword [rsp + 0x190]
call fcn.0040be18
mov qword [rsp + 0x1a8], 0xf
mov qword [rsp + 0x1a0], r13
mov byte [rsp + 0x190], 0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x4081cf
call fcn.0040be18
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x4081ec
call fcn.0040be18
mov qword [rdi + 8], r13
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], r13
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.00427520
mov rbx, qword [rsp + 0x210]
mov rbp, qword [rsp + 0x218]
mov rsi, qword [rsp + 0x1f0]
mov rdi, qword [rsp + 0x1e8]
mov r12, qword [rsp + 0x1e0]
mov r13, qword [rsp + 0x1d8]
add rsp, 0x1f8
ret