Function at 0x14009a000
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
mov r14, qword [rcx]
lea rdi, [r14 + 0x10]
mov rax, qword [r14 + 0x18]
mov rbx, qword [r14 + 0x20]
test rax, rax
setne cl
test rbx, rbx
setne bpl
and bpl, cl
mov ecx, 0x9f63a401
nop word [rax + rax]
mov edx, dword [0x14021a920]
mov r8d, dword [0x14021a924]
mov r9d, edx
not r9d
and r9d, r8d
mov r10d, r8d
not r10d
and r10d, edx
imul r10d, r9d
mov r9d, edx
and r9d, r8d
or edx, r8d
imul edx, r9d
add edx, r10d
imul rdx, rcx
shr rdx, 0x3f
add edx, 0x9c2ea103
or edx, 0x35da52ba
cmp edx, 0xc291babc
ja 0x14009a040
test rax, rax
je 0x14009a55a
nop dword [rax + rax]
mov eax, dword [0x14021a928]
add eax, dword [0x14021a92c]
mov ecx, eax
xor ecx, 0x3a98bea0
add ecx, eax
and eax, 0xc567415f
sub ecx, eax
imul eax, ecx, 0x32dc5590
add eax, 0x58d403da
cmp eax, 0x88900610
jb 0x14009a0a0
nop
mov eax, dword [0x14021a930]
mov ecx, dword [0x14021a934]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0x280004
and eax, 8
or eax, r9d
or edx, r8d
and r8d, 0x280004
and ecx, 8
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
or edx, 0xffd7fff3
add edx, 0xf1892878
cmp edx, 0x1563d8cb
jb 0x14009a0d0
mov r15, qword [r14 + 0x28]
nop word cs:[rax + rax]
mov eax, dword [0x14021a938]
sub eax, dword [0x14021a93c]
mov ecx, eax
and ecx, 0xa5bf046d
mov edx, ecx
not edx
mov r8d, eax
and r8d, 0xa59e002c
and edx, 0x4061eec3
imul edx, r8d
and eax, 0x210441
or ecx, 0x4061eec3
imul ecx, eax
add ecx, edx
mov eax, ecx
xor eax, 0x6e91e408
and ecx, 0x116e1bf7
add ecx, ecx
sub ecx, eax
cmp ecx, 0x3adb907a
jb 0x14009a130
test rbx, rbx
je 0x14009a55a
nop
mov eax, dword [0x14021a940]
xor eax, dword [0x14021a944]
mov ecx, eax
xor ecx, 0x3d14f16
add ecx, eax
and eax, 0xc2eb0e9
sub ecx, eax
or ecx, 0xf510dab4
cmp ecx, 0x1e5ae892
je 0x14009a190
nop dword [rax + rax]
mov eax, dword [0x14021a94c]
mov ecx, eax
xor ecx, eax
not ecx
and ecx, dword [0x14021a948]
xor ecx, eax
add ecx, 0x3debb8d1
or ecx, 0xa55a0422
add ecx, 0x8b934d99
cmp ecx, 0x82e379e5
ja 0x14009a1c0
mov r12, qword [r15]
nop word cs:[rax + rax]
mov eax, dword [str.lyR]
mov ecx, dword [0x14021a954]
xor ecx, eax
not ecx
and ecx, eax
or ecx, 0xf7bf7fdf
cmp ecx, 0xf3bfa2a7
jb 0x14009a200
test r12, r12
je 0x14009a2c0
mov eax, dword [0x14021a958]
mov ecx, dword [0x14021a95c]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
or eax, 0x74662f50
xor eax, 0x905f92fd
mov ecx, eax
and ecx, 0x3c65666e
or eax, 0x3c65666e
add eax, ecx
cmp eax, 0x833ddc55
jb 0x14009a2b0
mov eax, dword [0x14021a960]
sub eax, dword [0x14021a964]
mov ecx, eax
xor ecx, 0xa759bf62
xor eax, 0x1824401c
or eax, 0xc39b35a3
add eax, ecx
inc eax
imul r13, rax, 0x1ae16171
shr r13, 0x3c
mov rcx, rbx
call r12
cmp r13d, 0x65322e46
jne 0x14009a2c0
mov rcx, rbx
call r12
jmp 0x14009a274
mov eax, dword [0x14021a968]
imul eax, dword [0x14021a96c]
add eax, 0x7bd72175
mov ecx, eax
not ecx
or eax, 0x9102c58
or ecx, 0xf6efd3a7
and ecx, eax
mov eax, ecx
not eax
or eax, 0x63323ede
add eax, ecx
inc eax
cmp eax, 0x73f49035
ja 0x14009a2c0
mov rax, qword [r15 + 8]
mov rcx, qword [r15 + 0x10]
nop
mov r8d, dword [0x14021a970]
mov edx, dword [0x14021a974]
mov r9d, r8d
not r9d
and r9d, edx
not edx
and edx, r8d
sub edx, r9d
mov r8d, edx
not r8d
or r8d, 0x82801a70
or edx, 0x460810d
and edx, r8d
not edx
or edx, 0x791f6482
mov r8d, edx
not r8d
mov r9d, r8d
and r9d, 0x84c01005
and edx, 0x7a3fcf7a
imul edx, r9d
mov r9d, r8d
and r9d, 0x2208b78
or r8d, 0x7a3fcf7a
imul r8d, r9d
add r8d, edx
cmp r8d, 0x6eed98f7
je 0x14009a300
test rax, rax
je 0x14009a55a
mov eax, dword [0x14021a978]
xor edx, edx
div dword [0x14021a97c]
nop
mov eax, dword [0x14021a980]
and eax, dword [0x14021a984]
mov edx, eax
not edx
and edx, 0x236ae9c8
mov r8d, eax
and r8d, 0xdc951637
imul r8d, edx
mov edx, eax
and edx, 0x236ae9c8
or eax, 0x236ae9c8
imul eax, edx
add eax, r8d
add eax, 0x96ea312b
mov edx, eax
not edx
mov r8d, eax
and r8d, 0x6c4aaebb
and edx, 0x93b55140
imul edx, r8d
mov r8d, eax
and r8d, 0x93b55140
or eax, 0x93b55140
imul eax, r8d
add eax, edx
cmp eax, 0xf6295911
ja 0x14009a390
mov eax, dword [0x14021a988]
add eax, dword [0x14021a98c]
xor eax, 0xc84d178b
imul rax, rax, 0x121bdd9d
shr rax, 0x3c
cmp eax, 0x2975fb9a
je 0x14009a400
cmp rcx, 0x11
jb 0x14009a4a3
nop dword [rax]
mov eax, dword [str.c_L]
sub eax, dword [0x14021a994]
mov ecx, eax
not ecx
and ecx, 0x866379cb
and eax, 0x799c8634
sub eax, ecx
imul rax, rax, 0x2fc21187
shr rax, 0x3d
or eax, 0x60793e30
cmp eax, 0x4eb801bd
jb 0x14009a430
nop word cs:[rax + rax]
mov eax, dword [0x14021a998]
xor edx, edx
div dword [0x14021a99c]
add eax, 0x545eac35
mov ecx, eax
or ecx, 0x44105000
and ecx, 0x4c385648
or eax, 0xff7f7e6c
add eax, ecx
cmp eax, 0xb83cc54f
je 0x14009a470
mov rbx, qword [rbx - 8]
mov eax, dword [0x14021a9a0]
mov ecx, dword [0x14021a9a4]
mov edx, eax
xor edx, ecx
not ecx
and ecx, eax
add ecx, ecx
sub ecx, edx
mov eax, ecx
xor eax, 0x90240394
xor ecx, 0x2d1380a
and ecx, 0x26d1f80b
and eax, 0xd92e07f4
sub eax, ecx
mov ecx, eax
not ecx
and ecx, 0xd0e0af4e
mov edx, eax
and edx, 0x2f1f50b1
imul edx, ecx
mov ecx, eax
and ecx, 0xd0e0af4e
or eax, 0xd0e0af4e
imul eax, ecx
add eax, edx
cmp eax, 0x20bb43c9
jae 0x14009a515
mov rcx, qword [0x14022cb48]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r15, qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
mov eax, dword [0x14021a9a8]
xor edx, edx
div dword [0x14021a9ac]
add eax, 0x764e1b70
imul r12, rax, 0x186cb3f
shr r12, 0x33
and r12d, 0xffffffe9
mov rcx, qword [0x14022cb48]
xor edx, edx
mov r8, rbx
call r15
cmp r12d, 0x71323560
ja 0x14009a520
mov eax, dword [0x14021a9b0]
imul eax, dword [0x14021a9b4]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x15d8cd65
and ecx, 0xa27329a
imul ecx, edx
mov edx, eax
and edx, 0xa27329a
or eax, 0xa27329a
imul eax, edx
add eax, ecx
or eax, 0xe6ee9083
cmp eax, 0xd9479d14
je 0x14009a5c5
mov eax, dword [0x14021a9b8]
xor eax, dword [0x14021a9bc]
xor eax, 0xcf98b2a4
imul eax, eax, 0x7e183342
add eax, 0x5c3f380d
mov qword [r14 + 0x18], 0
cmp eax, 0xa5bb0a76
jae 0x14009a5cf
mov qword [r14 + 0x18], 0
jmp 0x14009a59a
mov r15, qword [r14 + 0x10]
mov eax, 0x8de63771
nop dword [rax + rax]
mov ecx, dword [0x14021a9c0]
or ecx, dword [0x14021a9c4]
and ecx, 0x99a8d126
add ecx, 0x6553d587
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0xb8f6b05a
ja 0x14009a5e0
nop dword [rax + rax]
mov eax, dword [0x14021a9c8]
xor edx, edx
div dword [0x14021a9cc]
mov ecx, eax
xor ecx, 0x24000132
xor eax, 0xc2424000
or eax, 0x2d142b37
or ecx, 0xd2ebd4c8
and ecx, eax
mov eax, ecx
not eax
and eax, 0xc354ba37
mov edx, ecx
and edx, 0x3cab45c8
imul edx, eax
mov eax, ecx
and eax, 0xc354ba37
or ecx, 0xc354ba37
imul ecx, eax
add ecx, edx
cmp ecx, 0xbe5ce935
jb 0x14009a610
test r15, r15
je 0x14009ad50
test bpl, bpl
je 0x14009a7a0
nop dword [rax + rax]
mov eax, dword [0x14021a9d0]
imul eax, dword [0x14021a9d4]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x5fb62ac2
and ecx, 0xa049d53d
imul ecx, edx
mov edx, eax
and edx, 0xa049d53d
or eax, 0xa049d53d
imul eax, edx
add eax, ecx
or eax, 0x3ba60128
and eax, 0xbbb759ab
cmp eax, 0x4b388bb0
jb 0x14009a680
mov eax, dword [0x14021a9d8]
add eax, dword [0x14021a9dc]
mov ecx, eax
and ecx, 0x134e095b
xor eax, 0x134e095b
lea eax, [rax + rcx*2]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x365f5af9
and ecx, 0xc9a0a506
imul ecx, edx
mov edx, eax
and edx, 0xc9a0a506
or eax, 0xc9a0a506
imul eax, edx
add eax, ecx
cmp eax, 0x8ec26cbb
jne 0x14009a720
mov byte [r15 + 0x20], 1
nop word cs:[rax + rax]
mov eax, dword [0x14021a9e0]
mov ecx, dword [0x14021a9e4]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
imul rax, rax, 0x59ea96a3
shr rax, 0x3e
add eax, 0x7abe45b3
and eax, 0x3a000581
mov byte [r15 + 0x20], 1
cmp eax, 0x2e53e29e
je 0x14009a720
nop dword [rax]
mov eax, dword [0x14021a9e8]
mov ecx, dword [0x14021a9ec]
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
sub ecx, edx
xor ecx, 0x24008310
imul eax, ecx, 0x3db4680b
add eax, 0x25a7a0df
cmp eax, 0x810baa7e
ja 0x14009a770
lock dec qword [r15 + 0x18]
jne 0x14009a8f6
nop dword [rax + rax]
mov eax, dword [0x14021a9f0]
mov ecx, dword [0x14021a9f4]
mov edx, eax
and edx, ecx
or eax, ecx
add eax, edx
mov ecx, eax
not ecx
or ecx, 0x9ed06393
or eax, 0x612f9c6c
and eax, ecx
add eax, 0x368007a2
cmp eax, 0xb3ba0d38
jb 0x14009a7b0
mov rbx, qword [r15 + 0x10]
add rbx, 0x30
mov eax, dword [0x14021a9f8]
or eax, dword [0x14021a9fc]
add eax, 0xc7504d9a
not eax
or eax, 0x56f7b570
cmp eax, 0x4e9ef3cf
jae 0x14009a810
mov al, 1
xchg byte [rbx], al
nop dword [rax]
mov eax, dword [0x14021aa00]
xor edx, edx
div dword [0x14021aa04]
xor eax, 0x91040202
and eax, 0xdb3f5b82
imul rcx, rax, 0x10f0eb1f
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
mov cl, 1
xchg byte [rbx], cl
cmp eax, 0x8615ef80
ja 0x14009a810
nop word [rax + rax]
mov eax, dword [0x14021aa08]
sub eax, dword [0x14021aa0c]
mov edx, eax
and edx, 0x2c219e65
add edx, edx
neg edx
add eax, edx
add eax, 0x60cb3a12
not eax
and eax, 0x7b9589e3
cmp eax, 0xa5f44b38
ja 0x14009a850
cmp cl, 0xff
jne 0x14009a8f6
mov eax, dword [0x14021aa14]
add eax, dword [0x14021aa10]
or eax, 0x9b90d688
mov ecx, 0xaddce29d
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x242d85a3
je 0x14009a8ec
mov eax, dword [0x14021aa18]
mov ecx, dword [0x14021aa1c]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
or ecx, 0x102407a3
and ecx, 0x936457b3
mov r12d, 0xaa8abfa3
imul r12, rcx
shr r12, 0x3e
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
cmp r12d, 0x1344d4eb
jbe 0x14009a8f6
mov rcx, rbx
call fcn.140150110
jmp 0x14009a8a8
lock dec qword [r15]
sete cl
nop dword [rax]
mov eax, dword [0x14021aa20]
xor edx, edx
div dword [0x14021aa24]
and eax, 0xa6506645
add eax, 0x6fe3f846
cmp eax, 0xe3ee84a2
ja 0x14009a900
test cl, cl
je 0x14009a967
mov rcx, rdi
call fcn.1400fd0d0
nop dword [rax + rax]
mov eax, dword [0x14021aa28]
mov ecx, dword [0x14021aa2c]
not eax
not ecx
and ecx, eax
not ecx
add ecx, 0x70744825
mov eax, ecx
not eax
or eax, 0x3a1cd22
and ecx, 0x80c2080
and eax, 0x67a3df73
or eax, ecx
cmp eax, 0x80b38694
ja 0x14009a930
mov rcx, qword [r14 + 0x18]
mov eax, dword [0x14021aa30]
xor edx, edx
div dword [str.__zsM_]
nop dword [rax]
mov eax, dword [0x14021aa38]
mov edx, dword [0x14021aa3c]
not edx
add eax, edx
add eax, 0x4015dfb2
mov edx, eax
or edx, 0xaf8d0e1d
not eax
or eax, 0x5072f1e2
and eax, edx
cmp eax, 0xe106ae18
je 0x14009a980
test rcx, rcx
je 0x14009ad50
nop word cs:[rax + rax]
mov eax, dword [0x14021aa40]
mov ecx, dword [0x14021aa44]
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [rax + rdx*2]
add eax, 0x996b3053
mov ecx, eax
not ecx
or ecx, 0x2944b287
or eax, 0xd6bb4d78
and eax, ecx
cmp eax, 0x9fd21cf3
ja 0x14009a9c0
mov rdi, qword [r14 + 0x20]
mov rbx, qword [r14 + 0x28]
mov eax, dword [0x14021aa48]
xor edx, edx
div dword [0x14021aa4c]
nop dword [rax + rax]
mov eax, dword [0x14021aa50]
sub eax, dword [0x14021aa54]
mov ecx, eax
xor ecx, 0x1c5e0504
or eax, 0xe3a1fafb
and eax, ecx
mov ecx, eax
not ecx
and ecx, 0x68bfe11
mov edx, eax
and edx, 0x197401ee
imul edx, ecx
mov ecx, eax
and ecx, 0x68bfe11
or eax, 0x68bfe11
imul eax, ecx
add eax, edx
and eax, 0x19583018
cmp eax, 0x156faeb7
je 0x14009aa10
test rdi, rdi
je 0x14009ad50
mov r14, qword [rbx]
nop word [rax + rax]
mov eax, dword [0x14021aa58]
mov ecx, dword [0x14021aa5c]
mov edx, eax
and edx, ecx
add edx, edx
add eax, ecx
sub eax, edx
shr eax, 1
imul rax, rax, 0x2725a41f
shr rax, 0x3a
add eax, 0xf2d9b6c
and eax, 0x6298803
cmp eax, 0x9a609ab5
ja 0x14009aa70
test r14, r14
je 0x14009ab50
xor eax, eax
test al, al
je 0x14009aac0
mov rcx, rdi
call r14
nop dword [rax]
mov eax, dword [0x14021aa60]
mov ecx, dword [0x14021aa64]
mov edx, ecx
and edx, eax
add eax, ecx
sub eax, edx
or eax, 0x25965e90
imul r15, rax, 0x7d1aac2f
shr r15, 0x3d
mov eax, r15d
xor eax, 0xa56ad026
or r15d, 1
and r15d, eax
mov rcx, rdi
call r14
cmp r15d, 0xaa334a2a
je 0x14009aac0
nop word cs:[rax + rax]
mov eax, dword [0x14021aa68]
mov ecx, dword [0x14021aa6c]
mov edx, eax
and edx, ecx
or eax, ecx
not edx
and edx, eax
and edx, 0xf5ef5790
imul rax, rdx, 0xce83067
shr rax, 0x20
sub edx, eax
shr edx, 1
add edx, eax
shr edx, 0x1f
cmp edx, 0xfef21090
je 0x14009ab10
nop dword [rax + rax]
mov eax, dword [0x14021aa70]
xor edx, edx
div dword [0x14021aa74]
add eax, 0x2e7564fe
mov ecx, eax
not ecx
and ecx, 0x5ab01872
mov edx, eax
and edx, 0xa54fe78d
imul edx, ecx
mov ecx, eax
and ecx, 0x5ab01872
or eax, 0x5ab01872
imul eax, ecx
add eax, edx
add eax, 0xaf3f7638
cmp eax, 0x45a3d51a
jb 0x14009ab50
mov eax, 0x9649294b
nop dword [rax + rax]
mov ecx, dword [0x14021aa78]
mov edx, dword [0x14021aa7c]
xor edx, ecx
not edx
and edx, ecx
mov ecx, edx
xor ecx, 0xf9a7fce7
or edx, 0x6580318
and edx, ecx
add edx, 0x730b2c
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0xd77ee2b2
ja 0x14009aba0
cmp qword [rbx + 8], 0
je 0x14009ad50
mov rax, qword [rbx + 0x10]
nop word [rax + rax]
mov ecx, dword [0x14021aa80]
mov edx, dword [0x14021aa84]
mov r8d, ecx
and r8d, edx
add r8d, r8d
add ecx, edx
sub ecx, r8d
imul ecx, ecx, 0x8e75ca73
imul rcx, rcx, 0x1d36bd75
shr rcx, 0x3c
or ecx, 0xa1bd4b16
cmp ecx, 0x72d43e7d
je 0x14009abf0
mov ecx, 0xd43d72d1
nop
mov edx, dword [0x14021aa88]
mov r8d, dword [0x14021aa8c]
mov r9d, r8d
not r9d
mov r10d, edx
and r10d, r9d
or r9d, edx
not r9d
imul r9d, r10d
mov r10d, edx
and r10d, r8d
or edx, r8d
imul edx, r10d
add edx, r9d
imul rdx, rcx
shr rdx, 0x3f
or edx, 0x72c22502
cmp edx, 0x3a528886
jb 0x14009ac30
cmp rax, 0x11
jb 0x14009acdf
nop
mov eax, dword [0x14021aa90]
mov ecx, dword [0x14021aa94]
not eax
not ecx
or ecx, eax
not ecx
add ecx, 0x4dfc1bf
cmp ecx, 0x2aaca882
ja 0x14009ac80
mov rdi, qword [rdi - 8]
nop word cs:[rax + rax]
mov eax, dword [0x14021aa98]
or eax, dword [0x14021aa9c]
mov ecx, eax
xor ecx, 0xa8d38238
xor eax, 0x2c5d49f5
add eax, ecx
and ecx, 0x7b713432
sub eax, ecx
or eax, 0x1b848068
cmp eax, 0xc0314df3
je 0x14009acb0
mov eax, dword [0x14021aaa0]
sub eax, dword [0x14021aaa4]
or eax, 0x93bd6eb9
cmp eax, 0xf86cccfc
je 0x14009ad2f
mov ebx, dword [0x14021aaa8]
add ebx, dword [0x14021aaac]
and ebx, 0x3feafd19
add ebx, 0xb17c0b42
or ebx, 0x421606a2
mov rcx, qword [0x14022cb48]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp ebx, 0xfd5e13f1
jbe 0x14009ad50
mov rcx, qword [0x14022cb48]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x14009acf7
mov eax, dword [0x14021aab0]
mov ecx, dword [0x14021aab4]
not eax
not ecx
and ecx, eax
not ecx
imul eax, ecx, 0xaf5912d2
mov ecx, eax
not ecx
and ecx, 0x3c8aa8fb
mov edx, eax
and edx, 0xc3755704
imul edx, ecx
mov ecx, eax
and ecx, 0x3c8aa8fa
or eax, 0x3c8aa8fb
imul eax, ecx
add eax, edx
cmp eax, 0xd7bcf0ad
je 0x14009ad50
mov r8, qword [rsi]
nop dword [rax + rax]
mov eax, dword [0x14021aab8]
xor edx, edx
div dword [0x14021aabc]
mov ecx, eax
not ecx
or eax, 0x2b5a50de
or ecx, 0xd4a5af21
and ecx, eax
mov eax, ecx
xor eax, 0x2a28aa63
add eax, ecx
and ecx, 0x15d7559c
sub eax, ecx
and eax, 0x22362ff9
cmp eax, 0x15e1be7a
je 0x14009ada0
nop dword [rax]
mov eax, dword [0x14021aac0]
xor edx, edx
div dword [0x14021aac4]
imul eax, eax, 0x3246f29c
mov ecx, eax
not ecx
or ecx, 0x4346a15b
add ecx, eax
cmp ecx, 0x80f02720
je 0x14009ade0
cmp r8, 0xffffffffffffffff
je 0x14009aef0
lea rax, [r8 + 8]
nop word cs:[rax + rax]
mov ecx, dword [0x14021aac8]
imul ecx, dword [0x14021aacc]
mov edx, ecx
not edx
mov r9d, ecx
and r9d, 0x58c3f237
and edx, 0xa73c0dc8
imul edx, r9d
mov r9d, ecx
and r9d, 0xa73c0dc8
or ecx, 0xa73c0dc8
imul ecx, r9d
add ecx, edx
xor ecx, 0xcbe6f995
add ecx, 0xdae52f0c
cmp ecx, 0x59f3cd1a
jb 0x14009ae20
lock dec qword [rax]
jne 0x14009aef0
mov eax, dword [0x14021aad0]
sub eax, dword [0x14021aad4]
add eax, 0x357b8d8c
or eax, 0x149dcaa4
cmp eax, 0x2ae84b67
jne 0x14009aea0
mov rax, qword [0x14022cb48]
nop dword [rax]
mov eax, dword [0x14021aad8]
mov ecx, dword [0x14021aadc]
not ecx
not eax
mov edx, eax
or edx, ecx
not edx
and eax, ecx
or eax, edx
xor eax, 0x8dbec25d
imul rax, rax, 0x741b034d
shr rax, 0x3e
or eax, 0x306df7ca
mov rcx, qword [0x14022cb48]
cmp eax, 0x21de819f
jb 0x14009aea0
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x14021aae0]
or eax, dword [0x14021aae4]
xor eax, 0xf47b6495
mov ecx, eax
and ecx, 0xf5bef785
or eax, 0xf5bef785
add eax, ecx
imul eax, eax, 0x2f6bf66e
cmp eax, 0xd9f5f039
ja 0x14009aef0
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret