Function at 0x180580358
Capabilities:
Encode data using xor
Query environment variable

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xd8
movsx eax, byte [0x18001006b]
lea rcx, str.iso_8859_5
movzx r15d, word [0x1800100f8]
mov edi, 0xcb
mov bl, byte [0x1800100ac]
mov rdx, rcx
mov r13b, byte [0x180010078]
mov dword [rbp - 0x71], eax
mov al, byte [0x18001005a]
mov dword [rbp - 0x79], 0xc423
mov byte [rbp + 0x67], al
mov eax, 0xfd314684
mov dword [rsp + 0x38], 0xd706
mov qword [rbp - 0x51], rax
mov eax, 0x7568
mov word [rsp + 0x30], ax
mov eax, 0x8b46
mov word [rsp + 0x34], ax
movsx rax, byte [0x180010037]
mov qword [rbp - 0x41], rax
mov eax, 0x3a
movzx r12d, ax
mov word [rbp - 0x69], ax
movzx eax, word [0x180058554]
mov word [rbp - 0x75], ax
mov al, byte [0x1800100e4]
mov byte [rbp + 0x77], al
mov qword [rbp - 0x61], 0x266e1d4d
mov byte [rbp + 0x6f], 0x8d
movsxd rax, dword [0x180058550]
mov qword [rbp - 0x49], rax
movzx esi, byte [0x18001006a]
mov al, byte [0x1800100b0]
mov byte [rbp + 0x67], al
mov eax, 0xa33566b5
mov byte [rbp + 0x67], 0x21
mov qword [rbp + 0x67], rax
mov al, byte [0x18001005e]
mov eax, dword [0x180010088]
mov eax, dword [0x180058550]
mov dword [rbp + 0x67], eax
mov rax, qword [0x1800100c0]
movzx eax, word [0x18001007c]
mov word [rbp + 0x67], ax
mov eax, 0xffffc290
mov word [rbp + 0x67], ax
mov dword [rbp - 0x25], 0x9764e293
mov dword [rbp - 0x59], 0x3d
mov dword [rbp - 0x6d], edi
call qword [sym.imp.KERNEL32.dll_lstrcmpA]
mov dword [0x1800cc2ec], eax
lea r8d, [rdi + 0x15]
movzx eax, byte [0x18001007f]
xor r11d, r11d
mov ecx, dword [rsp + 0x38]
mov edx, 1
imul eax, eax, 0x9e
sub ecx, eax
mov eax, dword [0x1800cc2ec]
mov dword [rsp + 0x38], ecx
mov dword [rbp - 0x7d], eax
mov ecx, dword [rbp - 0x71]
mov eax, dword [rbp - 0x71]
sub ecx, eax
sub ecx, r8d
mov dword [rbp - 0x71], ecx
mov eax, dword [rbp - 0x79]
mov dword [0x1803676dc], eax
mov rax, qword [rbp - 0x51]
mov eax, dword [rbp - 0x7d]
add eax, 0x1ee
mov dword [rbp - 0x29], eax
movsx ecx, byte [0x18001007e]
mov eax, dword [0x18001008c]
cmp eax, ecx
je 0x18058051c
cmp word [0x1800100cc], 0x21
jg 0x180580584
cmp word [0x180058560], r11w
je 0x180580584
mov eax, dword [0x18001008c]
mov al, byte [0x18001005f]
shl al, 3
mov byte [rbp - 0x75], al
movzx eax, word [0x180058554]
jmp 0x180580584
movsx eax, word [0x1800100cc]
not eax
test eax, eax
je 0x180580535
cmp word [0x180010080], r11w
mov ecx, edx
je 0x180580538
mov ecx, r11d
mov eax, dword [rsp + 0x38]
cmp eax, ecx
je 0x180580584
movsx rcx, byte [0x18001006b]
mov r15d, r11d
mov al, byte [0x18001006b]
imul rcx, rsi
sub al, cl
mov byte [0x18001006b], al
movzx ecx, byte [0x180010033]
xor rcx, r8
not rcx
sub cl, byte [0x180010036]
mov byte [rbp + 0x67], cl
mov cl, byte [0x18001007f]
mov rax, qword [rbp - 0x51]
test cl, cl
cmove r15w, ax
mov eax, dword [rbp - 0x7d]
add r13b, dl
movzx r14d, byte [0x1803ddd32]
add eax, 0x120
mov dword [rbp + 0x67], eax
add rsi, rdx
mov eax, dword [rbp - 0x7d]
add eax, 0x9d
mov byte [rbp + 0x7f], r13b
mov dword [rbp - 9], eax
mov eax, 2
mov word [rsp + 0x30], ax
mov r9, qword [rbp - 0x61]
movsx eax, word [0x180010078]
xor r9b, 0xfd
movzx ecx, word [rsp + 0x30]
add eax, 0x72c7763e
cdqe
mov qword [0x1800100d0], rax
mov qword [rbp - 0x19], r14
test ecx, ecx
je 0x18058063b
sub ecx, edx
je 0x180580606
cmp ecx, edx
jne 0x18058065a
lea eax, [r15 - 6]
mov byte [0x18001006a], al
mov eax, dword [0x18001008c]
sub eax, dword [0x1800100dc]
mov dword [0x18001008c], eax
jmp 0x18058065a
movzx eax, word [0x1800100d0]
neg bl
not ax
sbb cx, cx
lea edi, [rcx + 0x3b]
add di, ax
movzx eax, word [0x1800100f4]
test ax, ax
mov dword [rbp - 0x6d], edi
mov eax, dword [rsp + 0x38]
jne 0x180580635
movzx eax, word [0x180058554]
mov dword [rsp + 0x38], eax
jmp 0x18058065a
add bl, 0x6c
movzx eax, r9b
mov ecx, 0x33ea
mov byte [rbp - 0x75], bl
sub ax, cx
mov word [rsp + 0x34], ax
mov qword [rbp - 0x61], 0x5f0b
mov eax, dword [0x1800cc2ec]
mov dword [rbp - 0x7d], eax
mov rax, qword [rbp - 0x49]
mov al, byte [0x18001007b]
mov eax, dword [rsp + 0x38]
mov eax, dword [rbp - 0x79]
movzx eax, word [0x1800100d8]
mov al, byte [0x18001007f]
mov byte [rbp + 0x67], r11b
mov eax, dword [rbp - 0x7d]
add eax, 0x276
mov dword [rbp - 0x1d], eax
mov eax, dword [rbp - 0x71]
shl eax, 8
mov qword [0x180058568], rax
mov rcx, qword [0x180058568]
mov eax, dword [0x1800100a8]
sub rcx, rax
mov rax, qword [0x180058568]
imul rax, rcx
mov qword [0x180058568], rax
movzx ecx, word [rsp + 0x30]
movzx eax, byte [0x18001005f]
sub cx, ax
mov eax, 0x7076
sub cx, ax
mov word [rsp + 0x30], cx
mov eax, dword [rbp - 0x7d]
add eax, 0x390
mov dword [rbp - 0x2d], eax
mov eax, dword [rbp - 0x7d]
add eax, 0x4e
mov dword [rbp - 0x21], eax
mov eax, dword [rbp - 0x79]
cmp dword [0x1800100f0], r11d
mov eax, r11d
movzx edx, word [0x1800100f8]
sete al
sub edx, eax
movzx eax, word [0x1800100f4]
movzx ecx, byte [0x180010033]
sub edx, eax
add ecx, edx
mov eax, r11d
mov edx, 0x3d
sete al
sub eax, dword [0x1800100e4]
cdqe
mov qword [0x180010098], rax
mov al, byte [0x18001006a]
sub al, r14b
mov byte [0x18001006a], al
mov eax, dword [0x1800cc2ec]
mov dword [rbp - 0x7d], eax
mov al, byte [0x18001007a]
cmp al, dl
ja 0x18058079e
mov rcx, qword [rbp - 0x61]
movsx rax, byte [0x18001005b]
sub rcx, rax
mov rax, qword [rbp - 0x61]
xor rax, rcx
movabs rcx, 0xfff4377287a94a28
add rcx, qword [str.bW_m]
mov qword [rbp - 0x61], rax
movzx eax, word [rsp + 0x34]
and ax, cx
mov ecx, 0xffffff65
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0x38]
sub ecx, eax
mov dword [rbp - 0x59], ecx
jmp 0x1805807ef
movzx eax, word [0x1800100f4]
mov edx, r11d
cmp ax, di
mov ecx, r11d
mov rax, qword [0x1800100c0]
setne dl
add edx, 0xfffffffe
cmp rax, 0x94
setge cl
imul ecx, edx
test ecx, ecx
je 0x1805807ef
mov ecx, dword [0x180058550]
mov eax, dword [0x180058550]
add ecx, 0xe3
add ecx, eax
movzx eax, word [0x1800cc2ec]
mov dword [rbp - 0x6d], eax
mov dword [0x180058550], ecx
mov eax, dword [rbp - 0x7d]
mov ebx, 1
dec dword [0x1800100a8]
add eax, 0x399
mov dword [rbp - 0x35], eax
mov r14d, 0x2d5
mov byte [0x18001007f], 0xa2
mov r10d, 0xe3
mov al, byte [0x18001007f]
mov cl, al
shl al, 3
add cl, al
mov al, byte [0x18001007b]
shl cl, 3
add cl, al
mov byte [0x18001007b], cl
mov eax, dword [rbp - 0x7d]
add eax, 0x254
mov dword [rbp - 0x31], eax
imul eax, dword [rbp - 0x59], 0xa3c0dda1
mov dword [rsp + 0x38], eax
mov qword [rbp - 0x41], 0xffffffff9764e376
mov eax, dword [rbp - 0x7d]
add eax, 0x2e0
mov dword [rbp - 0x39], eax
mov qword [0x180010098], 0x41fe
mov r8d, r14d
add r10w, r14w
mov eax, dword [0x180058550]
add r15b, 0x53
movzx edx, ax
mov ecx, 0x5b35
movzx eax, word [0x1800100f8]
sub r8d, ebx
imul edx, ecx
imul ecx, eax, 0x1e5e53b1
movsx edi, r15b
movzx r15d, dx
mov dword [rsp + 0x38], ecx
test r8d, r8d
jg 0x180580871
mov ecx, dword [rbp - 0x71]
movzx eax, byte [0x18001005f]
add ecx, 0xbd28
cmp eax, ecx
jne 0x180580991
movzx ecx, word [0x1800100f4]
add ecx, edi
cmp ecx, ebx
jne 0x180580991
movzx ecx, byte [0x180010033]
movsx eax, word [0x180010078]
cmp eax, ecx
jl 0x18058091f
mov rax, qword [rbp - 0x51]
sub r12w, ax
cmp word [0x180010080], r11w
je 0x1805808fa
movzx eax, word [rbp - 0x51]
jmp 0x1805808fe
movsx eax, byte [rbp + 0x6f]
movzx ecx, byte [0x18001006a]
mov word [0x1800100e0], ax
mov eax, dword [rsp + 0x38]
sub eax, ecx
not eax
cdqe
mov qword [rbp - 0x51], rax
jmp 0x18058085f
mov al, byte [0x18001007a]
test al, al
je 0x18058085f
movsx ecx, byte [rbp + 0x67]
movzx eax, word [rsp + 0x34]
sub cx, 0x38
mov r8, qword [0x180010098]
cmp word [0x180010078], r11w
not r8
mov word [0x1800100b0], cx
mov rcx, r11
sete cl
sub rcx, rax
mov eax, dword [rbp - 0x79]
mov rdx, qword [0x180010090]
add r8, rcx
mov rcx, r11
not r8
imul rdx, rcx
movzx ecx, word [0x1800100f4]
add rdx, r8
add rcx, rdx
mov qword [rbp - 0x49], rcx
movsx rsi, byte [0x18001006b]
jmp 0x18058085f
mov r14, qword [rbp - 0x19]
movzx eax, r9b
mov word [rbp - 0x69], r12w
cmp ax, r12w
ja 0x1805809cd
cmp word [0x180010080], r11w
je 0x180580aaf
movsxd rcx, dword [0x180058550]
call qword [sym.imp.USER32.dll_IsWindow]
mov byte [rbp - 0x75], al
mov al, byte [rbp + 0x6f]
mov eax, dword [rbp - 0x71]
jmp 0x180580aaf
cmp word [0x18001007c], r11w
jne 0x1805809e4
mov al, byte [0x18001006b]
mov ecx, r11d
test al, al
je 0x1805809e6
mov ecx, ebx
mov eax, dword [rbp - 0x71]
add eax, ecx
je 0x180580a22
movzx eax, word [rsp + 0x34]
mov ecx, 0x55ff
sub ax, cx
mov word [0x180058554], ax
movzx eax, r13b
imul r14, rax
movzx eax, word [0x180010078]
shl ax, 7
mov qword [rbp - 0x19], r14
mov word [rsp + 0x30], ax
jmp 0x180580aaf
mov eax, dword [rbp - 0x71]
mov edx, r11d
cmp rax, r14
mov ecx, r11d
mov rax, qword [0x180010090]
sete dl
cmp r14, rax
setne cl
cmp edx, ecx
jb 0x180580a72
movzx eax, r9b
sub rax, 0x77
mov qword [rbp - 0x51], rax
mov eax, 0x1e84
movzx ecx, byte [0x18001006a]
sub cx, ax
movsx eax, byte [rbp + 0x67]
add eax, 0x4ad3484d
mov word [0x1800100a0], cx
mov dword [rbp - 0x25], eax
jmp 0x180580aaf
test r10w, r10w
je 0x180580aaf
movsx ecx, byte [rbp + 0x67]
add cx, cx
mov word [0x1800100d8], cx
mov cl, r15b
mov eax, dword [rsp + 0x38]
sub cl, al
mov eax, dword [0x18001006c]
mov byte [0x18001005a], cl
movsx ecx, al
imul eax, ecx, 0x22
mov cl, byte [0x18001007e]
sub cl, al
mov byte [0x18001007e], cl
mov ecx, dword [rbp - 0x39]
mov edx, 0x142
mov eax, dword [rbp - 0x39]
add ecx, eax
mov eax, dword [rbp - 0x35]
sub edx, eax
xor edx, ecx
mov ecx, dword [rbp - 0x31]
mov eax, dword [rbp - 0x35]
or ecx, eax
mov eax, dword [rbp - 0x31]
sub ecx, eax
sub ecx, 0x283
cmp edx, ecx
je 0x180581fe4
movzx eax, word [0x18000f338]
lea rcx, [rbp + 7]
vmovsd xmm0, qword [str.x_iscii_ka]
mov word [rbp + 0xf], ax
mov al, byte [0x18000f33a]
mov byte [rbp + 0x11], al
vmovsd qword [rbp + 7], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [rbp - 0x79]
mov word [0x1800100b4], ax
mov word [0x180010078], bx
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
lea ecx, [rdi + 1]
mov dword [rbp - 0x1d], edi
mov dword [0x1800100dc], eax
mov r11d, edi
movsx eax, word [0x180010078]
mov edx, 4
cmp eax, ecx
jne 0x180580c4f
movzx r10d, dx
mov word [rbp - 0x7d], dx
mov ecx, 0x6452
movzx eax, r12w
xor rax, 0xee21
mov dword [rbp - 0x6d], r10d
mov qword [rbp - 0x61], rax
xor r10d, r10d
movzx edx, word [rsp + 0x34]
mov eax, edi
imul edx, ecx
sar eax, 6
mov word [rsp + 0x30], dx
mov dword [0x18001006c], eax
movzx ecx, byte [0x18001007f]
movzx eax, byte [0x18001005a]
shl ecx, 5
add eax, 0x9e2fd3a
mov dword [0x1800100dc], eax
movsx eax, word [0x1800100a0]
mov dword [0x180058550], ecx
mov ecx, dword [0x18001006c]
sub ecx, eax
cmp word [0x180010080], bx
mov dword [0x18001006c], ecx
jne 0x180580c52
mov rax, qword [rbp - 0x51]
test rax, rax
je 0x180580c0a
movsxd rax, dword [0x180058550]
mov ecx, r10d
movabs rdx, 0xf77905fa4a193
sub rdx, rax
mov rax, qword [rbp - 0x41]
add rax, rdx
movsx rdx, byte [rbp + 0x77]
movsx rax, byte [rbp + 0x77]
sete cl
sub rdx, rax
mov rax, qword [0x1800100c0]
sub dl, al
mov word [rbp - 0x6d], cx
mov byte [rbp + 0x77], dl
jmp 0x180580c52
movzx edx, word [0x1800100d8]
mov rax, qword [0x180058568]
movzx ecx, ax
mov eax, 0x21f7
imul ecx, edx
movzx ecx, cx
imul ecx, eax
cmp word [0x180058560], r10w
mov word [0x1800100d8], cx
movzx eax, word [rsp + 0x30]
jne 0x180580c43
movzx eax, word [rbp - 0x7d]
lea eax, [r14 - 0x14]
mov byte [0x18001005a], al
jmp 0x180580c52
xor r10d, r10d
movzx eax, word [0x180058554]
add qword [0x1800100e8], rax
mov eax, 0x6497
movsx ecx, byte [0x18001006b]
sub cx, ax
mov word [0x180010078], bx
movsx ebx, byte [rbp + 0x67]
mov eax, 0x3d35
add bx, ax
mov word [0x18001007c], cx
mov rax, qword [rbp - 0x61]
add eax, 0x11ffe7ec
mov dword [rsp + 0x38], eax
mov eax, dword [0x1800cc2ec]
mov dword [rbp - 0x7d], eax
call fcn.1800099ec
movsx ecx, word [0x1800100cc]
movzx r12d, ax
not ecx
test ecx, ecx
jne 0x180580cbd
mov cl, byte [rbp + 0x67]
mov r9d, r10d
jmp 0x180580cc3
mov r9d, 1
mov rcx, qword [rbp - 0x61]
mov rdx, r10
movzx eax, byte [rbp - 0x75]
mov r8d, r10d
cmp rax, rcx
mov rax, qword [rbp - 0x61]
mov ecx, r10d
setne dl
cmp rax, rdx
movzx eax, word [0x1800100b0]
setge r8b
cmp dword [rbp - 0x59], eax
setge cl
add ecx, r9d
cmp r8d, ecx
jbe 0x180580d5f
mov edx, dword [0x180058550]
mov ecx, dword [0x1800100a4]
movsx eax, word [0x18001007c]
and cl, 0xfc
add edx, eax
movzx eax, byte [0x18001005a]
sub eax, r11d
add cl, al
mov al, byte [0x1800cc2ec]
add cl, dl
mov byte [0x18001005b], al
mov byte [0x180010033], cl
mov eax, dword [0x180058550]
imul eax, r11d
movsxd rcx, eax
movsx eax, word [0x1800100b4]
not eax
movsxd rdx, eax
xor rdx, rcx
movzx ecx, word [rsp + 0x34]
mov rax, qword [rbp - 0x41]
add rcx, rdx
add eax, ecx
mov dword [rbp - 0x71], eax
mov eax, dword [rbp - 0x7d]
add eax, 0x364
mov dword [rbp - 0x31], eax
mov eax, dword [rbp - 0x7d]
add eax, 0x362
mov dword [rbp - 0x35], eax
mov eax, dword [rbp - 0x7d]
add eax, 0x2ca
mov dword [rbp - 5], eax
call fcn.180002628
mov ecx, dword [rbp - 9]
mov eax, dword [rbp - 0x29]
add ecx, eax
mov eax, dword [rbp - 0x29]
add eax, 0x33f
cmp eax, ecx
je 0x180580e43
mov eax, dword [rbp - 0x25]
neg eax
movzx eax, word [0x1800100dc]
sbb dx, dx
add ax, word [0x1800100b4]
add dx, 0x6d99
movzx ecx, ax
mov eax, dword [rbp - 0x71]
movzx r8d, dx
xor edx, edx
imul r8d, ecx
mov ecx, edx
test eax, eax
movzx eax, word [0x18001007c]
sete cl
add cx, word [0x1800100b4]
movzx ebx, cx
imul ebx, eax
movzx eax, word [rsp + 0x30]
not bx
sub bx, r8w
cmp eax, dword [rbp - 0x25]
movzx eax, bx
setle dl
xor ecx, ecx
cmp eax, edi
setl cl
test ecx, edx
je 0x180580e18
call qword [sym.imp.USER32.dll_GetCursor]
test rax, rax
je 0x180580e43
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetCaretPos]
jmp 0x180580e43
movzx eax, word [rsp + 0x34]
mov rcx, 0xffffffffffffffae
mov rax, qword [rbp - 0x51]
sub rcx, rax
mov rax, qword [rbp - 0x41]
add rax, rcx
mov qword [rbp - 0x41], rax
mov eax, dword [rbp - 0x79]
imul eax, eax, 0x88b3a433
mov qword [rbp - 0x49], rax
movsx rax, byte [0x18001005b]
mov qword [0x1800100b8], rax
xor eax, eax
cmp word [0x1800100cc], ax
mov ecx, eax
mov eax, dword [0x1800100a4]
sete cl
sub cx, ax
mov word [rsp + 0x34], cx
call fcn.18057f344
test al, al
je 0x180581377
movzx eax, word [0x180058554]
movzx ecx, byte [0x180010033]
mov rax, qword [0x180010090]
movzx r13d, word [rbp - 0x69]
imul rax, rcx
mov qword [0x180010090], rax
mov rax, qword [0x180058568]
sub rax, 0x4f0d
mov qword [0x180010098], rax
mov al, byte [rbp + 0x77]
mov rax, qword [0x180010098]
movzx eax, word [0x1800100d8]
mov al, byte [rbp + 0x67]
movsx eax, word [0x18001007c]
add eax, 0x28
mov dword [rbp - 0x79], eax
mov al, byte [0x1800100a8]
sub al, 0x5a
add r12b, al
mov eax, dword [0x1800cc2ec]
mov word [rbp - 0x7d], r12w
mov r12d, 0x1a
add dword [rbp - 0x59], r12d
mov dword [rbp - 0x39], eax
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
dec r12d
mov dword [0x1800100e4], eax
test r12d, r12d
jg 0x180580ef8
mov eax, dword [rbp - 0x39]
add eax, 0x193
mov dword [rbp + 0x6f], eax
call fcn.180009318
mov r14, qword [rbp - 0x19]
xor r12d, r12d
movzx r13d, byte [rbp + 0x7f]
mov byte [rbp + 0x6f], al
mov al, byte [rbp + 0x6f]
test al, al
js 0x180580fdf
movsx ecx, byte [rbp + 0x67]
mov edx, r13d
mov eax, dword [0x180010084]
sub ecx, eax
mov al, byte [rbp + 0x67]
movzx r8d, word [rbp - 0x7d]
xor al, cl
mov r10d, dword [rbp - 0x6d]
mov byte [rbp + 0x67], al
mov rsi, qword [rbp - 0x61]
movzx eax, word [rsp + 0x30]
add rsi, 0xd08c
add byte [0x180010037], al
movzx eax, r8b
mov r8d, 0x13b
imul edx, eax
movzx r9d, r10w
not edx
movzx eax, word [rsp + 0x34]
mov ecx, r12d
imul eax, r9d
cmp edx, eax
movsx eax, byte [0x18001005b]
sete cl
sub cx, ax
mov eax, 0x4e7a
sub cx, si
add cx, word [0x180010080]
add cx, ax
mov word [0x1800100cc], cx
mov cl, byte [rbp + 0x6f]
mov al, byte [rbp + 0x67]
xor cl, al
mov al, byte [rbp + 0x67]
add cl, al
mov al, byte [0x18001005b]
mov byte [rbp + 0x67], cl
not al
mov byte [0x18001007a], al
sub r8, 1
jne 0x180580f82
jmp 0x180581077
movzx eax, word [0x1800100d8]
test ax, ax
je 0x180581011
mov al, byte [rbp + 0x77]
mov ecx, 0x8c
inc al
add al, byte [rbp - 0x69]
mov byte [0x180010036], al
movzx eax, word [0x180010078]
sub ax, cx
mov word [0x18001007c], ax
jmp 0x180581073
test r14, r14
je 0x180581036
movzx r8d, word [rbp - 0x7d]
mov al, r8b
sub al, r15b
movzx ecx, al
movzx eax, r8b
imul eax, ecx
movzx eax, al
mov dword [0x180367a9c], eax
jmp 0x180581073
cmp byte [rbp - 0x75], r12b
je 0x180581073
movzx ecx, word [0x1800100b4]
mov al, byte [0x1800cc2ec]
mov byte [0x18001007f], al
movzx eax, word [str.bW_m]
add ax, cx
xor cx, ax
movsx rax, byte [rbp + 0x67]
mov word [0x1800100b4], cx
movsxd rcx, dword [rbp - 0x79]
and rcx, rax
mov qword [rbp - 0x61], rcx
mov r10d, dword [rbp - 0x6d]
mov eax, dword [rbp - 0x39]
add eax, 0x1e7
mov dword [rbp + 0x7f], eax
mov rax, qword [rbp - 0x61]
movzx eax, word [0x1800100d8]
call fcn.18000901c
movzx r9d, ax
mov eax, r12d
cmp r9d, 0x4a
mov dword [0x1800100dc], r9d
setb al
test eax, eax
jne 0x1805810cc
movzx eax, r10w
lea rcx, [rax + rax*4]
mov al, r13b
sub al, byte [0x1800100b8]
shl rcx, 5
or r13b, al
mov qword [0x180058568], rcx
jmp 0x1805810ef
movsx eax, byte [rbp + 0x67]
sub bx, ax
movzx eax, word [rsp + 0x30]
mov ecx, dword [rbp - 0x79]
imul ecx, eax
mov al, byte [0x18001005f]
and al, 0xdc
mov byte [0x180010037], al
mov dword [rbp - 0x79], ecx
mov eax, dword [rbp - 0x39]
add eax, 0x222
mov dword [rbp + 0x7f], eax
mov eax, dword [rbp + 0x7f]
mov ecx, dword [rbp + 0x7f]
or eax, 0x31d
sub ecx, eax
mov eax, dword [rbp + 0x7f]
sub ecx, eax
mov eax, dword [rbp + 0x7f]
cmp eax, ecx
je 0x18058137a
call fcn.180008a7c
mov ecx, r12d
mov word [0x18001007c], ax
mov al, byte [rbp + 0x6f]
mov r8d, r12d
test al, al
mov rdx, r12
mov rax, qword [rbp - 0x51]
sete cl
cmp dword [rbp - 0x59], ecx
mov ecx, r12d
setle r8b
cmp word [0x180010080], r12w
sete dl
cmp rdx, rax
sete cl
cmp ecx, r8d
je 0x1805811bd
cmp word [0x1800100a0], r12w
mov eax, dword [0x1800100f0]
mov qword [rbp - 0x51], 1
jne 0x180581177
movzx eax, byte [0x18001007f]
cdqe
mov qword [rbp - 0x51], rax
movsx eax, byte [rbp + 0x67]
sub word [0x18001007c], ax
mov rax, qword [rbp - 0x51]
test rax, rax
je 0x1805811ab
cmp rax, 1
jne 0x180581206
movzx eax, word [rsp + 0x34]
movzx ecx, word [rsp + 0x30]
sub cx, ax
mov word [rsp + 0x30], cx
jmp 0x180581206
mov eax, dword [rsp + 0x38]
add dil, dil
mov dword [rbp - 0x71], eax
mov al, byte [rbp + 0x6f]
sub dil, al
jmp 0x180581206
mov eax, dword [0x18001008c]
mov al, byte [rbp + 0x67]
mov rax, qword [0x180058568]
inc rax
mov qword [0x180058568], rax
movzx eax, r13b
mov word [0x1803d616c], ax
mov eax, dword [0x1800100a8]
inc eax
imul ecx, eax, 0x761a1c18
movzx eax, byte [0x18001005f]
add ecx, eax
mov eax, r12d
sete al
mov word [0x1800100cc], ax
movzx ecx, word [rsp + 0x30]
mov r9d, 0xffffc4c8
movsx eax, word [0x1800100b4]
not eax
mov word [0x18001007c], r9w
imul ecx, eax
mov rax, qword [rbp - 0x61]
mov r8d, dword [rbp - 0x79]
mov edx, dword [0x18001008c]
sub r8d, eax
mov eax, r12d
not ecx
imul r8d, ecx
mov ecx, r12d
cmp byte [0x18001005a], r12b
sete al
imul edx, eax
mov eax, dword [0x18001008c]
not r8d
test eax, eax
mov rax, qword [rbp - 0x51]
movabs rax, 0xa6bb9d6abb079
sete cl
sub edx, ecx
mov ecx, dword [str.bW_m]
add ecx, edx
xor ecx, r8d
mov dword [0x1800100a8], ecx
mov ecx, dword [0x1800100c8]
sub rcx, rax
mov rax, qword [rbp - 0x51]
add rax, rcx
movsx ecx, dil
mov qword [rbp - 0x51], rax
add ecx, 0xc4c8
movsx eax, word [0x18001007c]
cmp eax, ecx
jne 0x18058130f
mov edx, dword [rbp - 0x79]
movzx eax, word [0x1800100d8]
add edx, 0x7fb6efe9
cmp eax, edx
jne 0x18058130f
movsx edx, byte [0x18001007b]
movzx eax, byte [0x180010033]
cmp edx, eax
je 0x1805812f2
mov rcx, qword [rbp - 0x61]
movzx eax, bx
imul rcx, rax
movzx eax, byte [0x180412b0e]
and qword [str.bW_m], rax
mov qword [rbp - 0x61], rcx
mov al, byte [0x18001007b]
jmp 0x18058130f
mov rax, qword [rbp - 0x41]
add rax, 0x1d
mov qword [0x180010098], rax
movzx eax, byte [0x18001006a]
add word [0x1800100f8], ax
movzx eax, word [0x1800100f4]
movsx ecx, word [0x1800100b4]
mov word [0x1800100cc], ax
mov edx, ecx
movzx eax, word [0x180058560]
sub edx, eax
mov word [0x18001007c], r9w
movsx rax, word [0x1800100a0]
not edx
imul edx, ecx
imul edx, dword [0x1800100dc]
test edx, edx
sete dl
add rax, r14
sete cl
xor dl, cl
mov byte [0x18001006a], dl
movsx rcx, byte [rbp + 0x67]
call qword [sym.imp.USER32.dll_GetLastActivePopup]
mov ecx, eax
mov qword [str.bW_m], rcx
jmp 0x180581fe4
xor r12d, r12d
movzx ecx, word [0x1800100f4]
mov edx, r12d
movzx eax, word [rsp + 0x30]
cmp ax, cx
movzx eax, word [rsp + 0x30]
mov ecx, r12d
seta dl
cmp ax, 0x39
seta cl
cmp edx, ecx
jbe 0x180581403
mov ecx, dword [0x1800100c8]
mov rax, qword [rbp - 0x49]
cmp rcx, rax
jl 0x180581403
mov ecx, dword [0x1800100dc]
mov eax, 0x62db
mov rdx, qword [rbp - 0x51]
not ecx
not rdx
add rsi, rsi
add rdx, rcx
movsx ecx, byte [0x18001006b]
add cx, ax
movzx eax, dx
movzx edx, cx
movabs rcx, 0xd7823bb64d242
imul edx, eax
not dx
mov word [rsp + 0x34], dx
movsx rax, byte [rbp + 0x6f]
sub rsi, rax
movzx eax, word [rbp - 0x6d]
imul rax, rcx
add r14, rax
mov rax, qword [rbp - 0x41]
shl rax, 7
mov word [0x1800100b0], ax
mov eax, dword [0x180010088]
mov ecx, dword [0x18001006c]
neg eax
movabs rax, 0x4361eec340c61
mov qword [rbp - 0x11], r12
sbb rdx, rdx
neg rdx
dec rdx
add rdx, rax
movzx eax, r13b
imul ecx, eax
mov eax, dword [0x1800100a4]
mov qword [rbp - 1], 0x4844e
movsxd r8, ecx
mov ecx, r12d
imul r8, rdx
test eax, eax
movzx edx, bx
mov eax, edx
mov dword [rbp + 0x7f], edx
sete cl
sub eax, ecx
sub eax, r14d
not eax
xor eax, r8d
mov dword [0x18001006c], eax
call fcn.180008a7c
xor edx, edx
movzx r12d, ax
cmp r12d, 0x5f
mov ecx, edx
mov eax, edx
setbe cl
test r12d, r12d
sete al
cmp eax, ecx
jb 0x1805814ba
mov rax, qword [0x180428998]
mov ecx, 0x3da4
mov r13d, dword [rbp - 0x59]
mov qword [rbp - 0x61], rax
movzx eax, word [rbp - 0x6d]
sub ax, cx
mov word [0x1800100a0], ax
jmp 0x1805814cc
movsxd r13, dword [rbp - 0x59]
mov r12, rsi
mov r14, r13
sar r14, 2
shl r12, 5
mov dword [rsp + 0x28], 0x40
lea r9, [rbp - 1]
xor r8d, r8d
mov dword [rsp + 0x20], 0x3000
lea rdx, [rbp - 0x11]
or rcx, 0xffffffffffffffff
call fcn.18000e1c0
xor r11d, r11d
test r15w, r15w
je 0x180581535
mov rdx, qword [0x1800100b8]
mov al, byte [0x180010037]
mov cl, dl
sub cl, byte [0x180058560]
add al, al
sub al, r13b
movzx r13d, word [rbp - 0x69]
mov byte [0x180010037], al
mov al, r13b
add al, al
sar rdx, cl
mov qword [0x1800100b8], rdx
mov byte [0x180010036], al
jmp 0x18058153a
movzx r13d, word [rbp - 0x69]
mov ecx, dword [rbp - 0x21]
mov eax, dword [rbp - 0x2d]
sub ecx, eax
mov edx, dword [rbp - 0x21]
mov eax, dword [rbp - 0x2d]
sub edx, eax
mov eax, dword [rbp - 0x2d]
or edx, ecx
sub eax, 0x215
or eax, 0x39f
cmp edx, eax
je 0x180581817
movzx eax, byte [rbp - 0x75]
mov r8d, 0x72
shl ax, 4
mov word [rbp - 0x6d], ax
lea r13d, [r8 - 0x71]
movsx ecx, byte [rbp + 0x6f]
mov eax, 0xfd53
movzx edx, cx
imul edx, eax
mov rax, qword [rbp - 0x49]
mov eax, dword [0x180010084]
add eax, r13d
mov word [0x1800100e0], dx
mov dword [0x180010084], eax
sub r8, r13
jne 0x180581577
mov dword [0x1800100a8], 0x3c1a85a1
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessorNumber]
mov byte [rbp + 0x6f], al
xor r8d, r8d
mov al, byte [rbp + 0x6f]
test al, al
je 0x1805815ea
mov edx, dword [0x180010088]
movzx eax, di
xor edx, 0x85627c1f
not ax
xor ax, word [0x1800100e8]
mov word [0x180010078], ax
mov dword [0x1800100dc], edx
jmp 0x180581625
mov rax, qword [0x180058568]
movabs rdx, 0x8c79541120f26
add rax, rdx
movsxd rcx, r12d
add rcx, rax
mov qword [0x180058568], rcx
mov ecx, 0x7fd2
movzx eax, word [rsp + 0x30]
mov edx, dword [0x1800100dc]
sub ax, cx
mov word [0x1800100cc], ax
movzx r13d, word [rbp - 0x69]
mov ecx, edi
add ecx, dword [0x1800100a8]
cmp edx, ecx
jne 0x180581716
movsx rcx, word [0x1800100a0]
mov rax, qword [0x1800100c0]
cmp rcx, rax
jge 0x1805816cc
call fcn.180009318
xor r8d, r8d
mov byte [0x18001005f], al
test al, al
jne 0x180581704
movsx eax, byte [0x18001007b]
movzx edx, word [0x180058560]
add edx, eax
movsx eax, byte [0x18001005b]
not edx
imul edx, eax
movsx eax, byte [rbp + 0x77]
imul edx, r15d
movsxd r8, edx
movzx edx, r13w
sub dx, r14w
sub dx, ax
mov eax, 0x66b7
add dx, ax
not dx
add dx, r8w
mov word [0x1800100f4], dx
movzx ecx, word [0x1800100d8]
movzx eax, word [0x1800100d8]
xor rcx, rsi
add ax, cx
mov word [0x1800100d8], ax
xor r8d, r8d
jmp 0x180581704
movsx rcx, byte [rbp + 0x6f]
mov rax, qword [rbp - 0x49]
cmp rcx, rax
jle 0x180581704
mov rax, qword [rbp - 0x49]
sub al, 0x5d
mov byte [0x18001005b], al
movzx eax, byte [0x18001006a]
mov edx, dword [0x180058550]
add edx, eax
mov eax, dword [0x180058550]
imul eax, edx
mov dword [0x180058550], eax
movsx ecx, byte [0x18001007b]
sub cx, r13w
mov word [0x180010078], cx
movzx ecx, byte [0x18001005e]
mov eax, dword [0x1800100a4]
cmp eax, ecx
jg 0x180581762
mov edx, dword [0x180058550]
movsx ecx, byte [rbp + 0x77]
movzx eax, word [0x1800100f8]
add edx, eax
mov eax, dword [0x1800100a4]
imul ecx, edx
imul eax, ecx
mov ecx, r8d
test eax, eax
mov al, byte [0x180331e08]
sete cl
mov dword [0x1800100f0], ecx
mov byte [0x18001006b], al
jmp 0x18058179f
movsx eax, byte [0x18001007b]
cmp dword [rbp + 0x7f], eax
je 0x18058179f
mov eax, r13d
xor eax, 0xec
mov dword [rbp - 0x79], eax
movabs rax, 0xfff6e4d43ba6a282
movsxd rcx, dword [rsp + 0x38]
imul rcx, rax
mov qword [rbp - 0x49], rcx
movzx eax, word [rsp + 0x30]
neg ax
mov word [0x1800100f8], ax
movzx edi, byte [rbp - 0x75]
xor r12d, r12d
mov r14d, r12d
not edi
movsx edx, byte [rbp + 0x67]
lea r8, [0x180010100]
movsx eax, word [0x180010080]
mov ecx, r12d
not edx
mov qword [rsp + 0x20], r12
add eax, edi
mov r9d, 1
sete cl
add edx, ecx
movsx ecx, byte [rbp + 0x67]
mov rax, qword [rbp - 0x41]
add ecx, edx
mov rdx, qword [rbp - 0x11]
mov dword [0x1800100f0], ecx
movsxd rcx, r14d
add r8, rcx
mov byte [0x180010036], 0x9a
add rdx, rcx
mov qword [0x1804103f0], rax
or rcx, 0xffffffffffffffff
call fcn.18000e200
inc r14d
cmp r14d, 0x4844e
jb 0x1805817ab
xor r11d, r11d
mov rax, qword [rbp - 0x49]
mov r12d, dword [rbp + 0x7f]
call fcn.1800099ec
movzx r14d, ax
mov edx, r11d
cmp r14b, 0x23
mov ecx, r11d
seta dl
test r14b, r14b
setne cl
cmp ecx, edx
jne 0x1805818d8
mov ecx, dword [rsp + 0x38]
call fcn.180009168
movsx rsi, ax
test rsi, rsi
jne 0x1805818f0
movzx eax, r14b
cmp eax, 0x68814a0c
ja 0x1805818a4
cmp word [0x180010078], r11w
je 0x1805818a4
mov rcx, qword [rbp - 0x49]
mov eax, dword [0x1800100dc]
imul rcx, rax
mov rax, qword [rbp - 0x51]
imul rax, rcx
mov qword [0x1800100e8], rax
mov al, byte [0x18001006a]
mov byte [rbp + 0x6f], al
mov al, byte [rbp + 0x67]
sar al, 7
movsx eax, al
mov word [rsp + 0x34], ax
jmp 0x1805818f0
movzx eax, byte [0x180010033]
mov edx, r11d
cmp eax, 0x4214
mov ecx, r11d
movsx rax, byte [0x180010037]
setae dl
cmp rax, qword [0x1800100e8]
setb cl
cmp edx, ecx
jne 0x1805818f0
lea eax, [r13 + 0xc]
mov byte [rbp + 0x6f], al
jmp 0x1805818f0
mov eax, dword [0x1800cc2ec]
mov qword [str.bW_m], rax
mov qword [0x180010090], 0xd398
mov rcx, qword [rbp - 0x11]
mov edx, 0x4844e
call fcn.180579b70
mov rax, qword [rbp - 0x41]
add rax, 0xb4c6
mov qword [0x1800100d0], rax
mov rax, qword [0x1800100e8]
add rax, 0x17
mov qword [rbp - 0x49], rax
call fcn.18057bbd4
mov rcx, qword [rbp - 0x11]
lea rdx, [rbp - 1]
mov eax, 0xd481
mov dword [0x1800100c8], 0x52149840
mov word [0x1800100f4], ax
call fcn.18057e2c4
movzx ecx, byte [0x18001005f]
mov rdi, rax
cmp rcx, qword [0x1800100e8]
mov qword [rbp - 0x19], rax
je 0x18058198d
mov ecx, dword [0x18001006c]
movzx ecx, word [rsp + 0x30]
mov ecx, dword [0x18001006c]
test ecx, ecx
je 0x18058198d
mov al, byte [0x18001007a]
mov ecx, 0x5125ccb5
mov rax, qword [0x180010090]
sub ecx, r12d
add dword [0x1800100e4], ecx
mov ecx, dword [rbp - 0x35]
mov eax, dword [rbp - 0x31]
add ecx, eax
mov edx, dword [rbp - 0x31]
imul edx, ecx
mov ecx, dword [rbp - 5]
mov eax, dword [rbp - 0x35]
sub ecx, eax
cmp ecx, edx
je 0x180581f76
movsx eax, word [0x180010080]
add eax, r15d
cdqe
mov qword [rbp - 0x61], rax
mov rcx, qword [0x180058568]
mov rax, qword [rbp - 0x61]
movzx edx, al
movzx eax, cl
imul eax, edx
movzx eax, al
imul ecx, eax, 0xd8
mov byte [0x18001005e], cl
mov dword [0x180010084], 0x31
mov ecx, dword [0x18001008c]
call qword [sym.imp.USER32.dll_IsIconic]
mov byte [0x18001007f], al
xor ecx, ecx
mov al, byte [0x18001007f]
test al, al
je 0x180581a1e
mov rcx, qword [str.bW_m]
call qword [sym.imp.USER32.dll_GetDlgCtrlID]
mov eax, eax
xor r13d, r13d
mov qword [rbp - 0x49], rax
jmp 0x180581a76
mov rax, qword [str.bW_m]
not rax
test rax, rax
jne 0x180581a3a
movzx eax, word [rsp + 0x34]
mov r8d, ecx
test ax, ax
jne 0x180581a40
mov r8d, 1
mov rax, qword [rbp - 0x41]
test r13w, r13w
mov rdx, rcx
sete dl
xor r13d, r13d
cmp rax, rdx
sete cl
cmp ecx, r8d
jb 0x180581a76
mov ecx, dword [0x180010088]
mov eax, dword [0x180010088]
sub ecx, eax
mov eax, dword [rsp + 0x38]
sub ecx, eax
mov dword [0x180010088], ecx
mov eax, dword [rbp - 0x71]
mov esi, 2
movsx ecx, byte [rbp + 0x67]
mov al, byte [0x1800100b8]
add al, 0x1d
shl ecx, 7
add byte [0x18001005a], al
mov dword [0x1800100e4], ecx
mov rcx, qword [0x180010098]
mov eax, dword [0x1800100dc]
imul rcx, rax
mov rax, qword [0x180010098]
sub rax, rcx
mov ecx, r13d
mov qword [0x180010098], rax
mov eax, 0x51bf
add ax, word [0x1800100dc]
or word [0x180058560], ax
movsx eax, byte [0x180010037]
test r14b, r14b
sete cl
sub eax, ecx
mov dword [rbp - 0x79], eax
test rdi, rdi
je 0x180581f76
call fcn.18000901c
movzx r9d, ax
mov qword [rbp - 0x61], r9
mov rax, qword [rbp - 0x61]
test rax, rax
jns 0x180581b72
mov rax, qword [rbp - 0x49]
test rax, rax
je 0x180581b2a
mov eax, dword [0x1800cc2ec]
mov ecx, 0xce
mov dword [0x18001006c], eax
mov rax, qword [rbp - 0x61]
sub ax, cx
mov word [rsp + 0x30], ax
jmp 0x180581b72
mov al, byte [0x18001005e]
mov edx, r13d
test al, al
movsx eax, byte [0x18001006b]
sete dl
cmp edx, eax
je 0x180581b72
mov rax, qword [rbp - 0x49]
mov r15d, 8
imul ecx, eax, 0x2c3a
mov dword [0x1800100a8], ecx
movsxd rcx, dword [0x180010088]
movsx rax, word [0x180010080]
xor rax, rcx
mov qword [0x180010098], rax
movsx eax, word [0x180010080]
mov dword [0x18041ca2c], eax
mov eax, dword [rbp - 0x71]
test eax, eax
mov dword [0x1800100f0], 1
movzx ecx, bx
cmovne ecx, dword [rbp - 0x41]
mov dword [0x180010084], ecx
mov cl, byte [rbp + 0x6f]
mov al, byte [rbp + 0x77]
add cl, 0x63
and cl, al
mov eax, dword [0x1800cc2ec]
mov byte [rbp + 0x77], cl
mov dword [rbp + 0x6f], eax
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
movzx edi, word [rbp - 0x6d]
mov byte [0x180010033], al
mov eax, dword [rbp + 0x6f]
add eax, 0x258
mov dword [rbp + 0x7f], eax
movzx eax, word [0x1800100f4]
mov eax, dword [rbp + 0x6f]
add eax, 0x36a
mov dword [rbp + 0x7f], eax
mov eax, dword [rbp - 0x79]
add eax, edi
mov dword [rbp - 0x79], eax
movzx eax, byte [0x18001005f]
sub bx, ax
mov eax, 0x189
add bx, ax
movzx eax, r14b
cmp qword [str.bW_m], r13
cmovne ax, word [0x180010084]
mov word [0x180010078], ax
mov eax, dword [rbp + 0x6f]
mov r12b, byte [0x1800100b0]
add eax, 0x271
mov dword [rbp + 0x6f], eax
movzx eax, byte [0x18001005a]
cmp eax, dword [rbp - 0x1d]
mov byte [0x18001007b], 0x3a
sete al
sub r12b, al
mov eax, dword [rbp - 0x79]
mov edx, dword [rbp - 0x79]
add al, 0x4a
movzx r14d, al
inc edx
movsx eax, byte [0x18001007b]
cmp eax, edx
jne 0x180581cd3
mov eax, dword [0x1800100a4]
movsx ecx, byte [rbp + 0x77]
movzx r8d, word [0x1800100e0]
sub ecx, 0x1c2e9eb6
movzx edx, ax
movsx eax, word [0x1800100b4]
mov dword [0x1800100f0], ecx
add eax, 0x69
imul edx, r8d
mov ecx, 0xa7
or r8w, dx
mov word [0x1800100e0], r8w
mov dword [rbp - 0x71], eax
call qword [sym.imp.USER32.dll_GetDlgCtrlID]
mov word [0x1800100ac], ax
mov eax, 1
cmp word [0x1800100b0], ax
jne 0x180581cd3
mov rax, qword [0x180010098]
add ax, r15w
mov word [0x18001007c], ax
movsxd rax, dword [0x1800100a4]
mov qword [0x1800100d0], rax
mov byte [0x18001007b], 0x3a
mov eax, dword [rbp - 0x71]
sub eax, 0x85
mov qword [0x1800100c0], rax
movzx ecx, byte [0x18001006a]
add ecx, 0x2a9060e1
mov dword [0x180058550], ecx
movabs rcx, 0xfff459b9632c5f93
movzx eax, word [rsp + 0x34]
imul rax, rcx
test rax, rax
je 0x180581d25
movzx ecx, bx
call qword [sym.imp.USER32.dll_IsZoomed]
mov byte [0x18001006b], al
jmp 0x180581d35
mov rax, qword [rbp - 0x41]
mov byte [rbp + 0x6f], al
mov al, byte [rbp + 0x67]
sub al, sil
mov byte [rbp + 0x67], al
mov ecx, dword [rbp + 0x7f]
mov eax, dword [rbp + 0x7f]
add ecx, 0x197
cmp ecx, eax
je 0x180581f76
movsx eax, byte [0x180010037]
mov ecx, r14d
xor ecx, 0xe477ccf5
mov dword [0x18001008c], 4
imul ecx, eax
mov rax, qword [rbp - 0x49]
movzx edx, ax
mov eax, dword [0x18001008c]
movsxd r8, ecx
mov ecx, 0xf2b1
imul edx, ecx
mov word [0x1800100b0], dx
test eax, eax
je 0x180581e72
sub eax, 1
je 0x180581e3d
sub eax, 1
je 0x180581e0c
sub eax, 1
je 0x180581dda
cmp eax, 1
jne 0x180581ea1
mov rcx, qword [0x1800100e8]
mov eax, 0x8db
dec dword [0x1800100c8]
add ax, cx
cmp dword [0x1800100dc], r13d
mov word [0x18001007c], ax
jne 0x180581dd2
mov rcx, qword [rbp - 0x41]
mov dword [rbp - 0x79], ecx
jmp 0x180581ea1
movzx ecx, byte [0x18001005e]
movabs rax, 0x48559547969ae
and rcx, rax
mov qword [rbp - 0x49], rcx
mov ecx, 0xffffffe3
mov al, byte [0x18001007e]
sub cl, bl
add cl, al
mov byte [0x18001007e], cl
jmp 0x180581ea1
movzx ecx, byte [0x18001007f]
mov eax, 0x81e
sub cx, ax
mov eax, dword [rsp + 0x38]
add eax, 0x2ab382cd
mov word [0x1800100e0], cx
cdqe
mov qword [0x180058568], rax
mov qword [0x1803e1358], r8
jmp 0x180581ea1
mov ecx, dword [rsp + 0x38]
xor edi, 0xcdf55f09
mov eax, 0x99
movsx edx, r12b
add r15w, ax
not edi
mov eax, r13d
mov word [0x1800100cc], r15w
add edx, edi
inc ecx
add edx, ecx
sete al
mov dword [0x18001008c], eax
jmp 0x180581ea1
movzx eax, word [str.bW_m]
mov ecx, 0x703
xor word [0x1800100f8], ax
mov eax, dword [rsp + 0x38]
movsxd rsi, dword [rbp - 0x59]
movsx edx, ax
add rsi, 2
movsx ecx, cx
imul edx, ecx
mov word [0x18001007c], dx
movzx ecx, word [0x180058554]
mov edx, r13d
mov eax, dword [0x18001008c]
cmp eax, ecx
mov eax, dword [0x18001008c]
mov ecx, r13d
seta dl
cmp eax, 0x11
seta cl
cmp edx, ecx
jne 0x180581f1e
mov rax, qword [0x180058568]
movzx ecx, word [0x18001007c]
add ax, cx
and cx, ax
mov eax, dword [0x1800cc2ec]
mov word [0x18001007c], cx
mov dword [rbp - 0x79], eax
movsx eax, byte [0x18001006b]
movzx eax, ax
imul ecx, eax, 0x42
mov rax, qword [rbp - 0x61]
mov qword [0x1800100b8], 2
mov word [0x1800100b0], cx
imul ecx, eax, 0xc87e2420
mov dword [0x180010084], ecx
jmp 0x180581f69
movsx rax, word [0x180010080]
movabs rcx, 0x539e0722e3107
sub rax, rcx
cmp qword [0x1800100e8], r13
mov qword [0x180058568], rax
je 0x180581f48
mov al, byte [rbp + 0x77]
jmp 0x180581f4e
mov al, byte [0x1800100dc]
mov ecx, dword [0x180010088]
mov byte [0x18001005f], al
movsx eax, byte [0x18042ef5a]
add ecx, eax
mov dword [0x180010088], ecx
mov rcx, qword [rbp - 0x19]
or edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movzx r9d, r14b
mov r8d, 0xd4
movzx ecx, byte [0x18001006a]
mov rax, qword [rbp - 0x51]
sub eax, r9d
imul rcx, rsi
sub eax, ecx
not eax
mov dword [rsp + 0x38], eax
mov al, byte [0x18001005b]
sar al, 5
mov byte [rbp + 0x67], al
movzx eax, byte [0x18001007f]
mov rdx, qword [rbp - 0x41]
add rdx, rax
movzx eax, byte [0x18001007f]
movzx ecx, dl
mov edx, eax
imul edx, ecx
mov ecx, 1
mov byte [0x18001007f], dl
mov rax, qword [0x1800100c0]
add rax, rcx
mov qword [0x1800100c0], rax
sub r8, rcx
jne 0x180581f80
xor eax, eax
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret