Function at 0x1400495e0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rdi, rdx
mov rsi, rcx
mov eax, 0xd205d587
nop word cs:[rax + rax]
mov ecx, dword [0x141f335c0]
xor ecx, dword [0x141f335c4]
or ecx, 0xb29dea1
add ecx, 0x34644251
shr ecx, 1
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0xeb472617
ja 0x140049600
xor eax, eax
nop dword [rax]
test al, al
jne 0x140049630
cmp rdi, 8
jae 0x14004979b
lea rax, [0x141f21c08]
mov r8d, dword [rax + rdi*4]
nop dword [rax]
mov eax, dword [0x141f33700]
add eax, dword [0x141f33704]
and eax, 0x7560f627
add eax, 0x74e61e2f
xor eax, 0x4284c6b3
cmp eax, 0xab2bcc66
jb 0x140049650
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140049680
mov rcx, qword [rsi + 0xa0]
cmp rcx, 0x28
ja 0x140049a78
mov eax, dword [0x141f33708]
xor edx, edx
div dword [0x141f3370c]
nop word cs:[rax + rax]
mov eax, dword [0x141f33710]
and eax, dword [0x141f33714]
and eax, 0x13089914
add eax, 0x7e3ae9a4
cmp eax, 0x6747435c
jb 0x1400496b0
test rcx, rcx
je 0x14004995b
nop word cs:[rax + rax]
mov eax, dword [0x141f33718]
add eax, dword [0x141f3371c]
xor eax, 0x40800030
and eax, 0x40e01030
cmp eax, 0xa98085e0
je 0x1400496e0
nop dword [rax]
mov eax, dword [0x141f33720]
sub eax, dword [0x141f33724]
cmp eax, 0x6af96df3
je 0x140049700
lea rdx, [rcx*4]
xor r9d, r9d
xor eax, eax
mov r10d, dword [rsi + r9]
imul r10, r8
add r10, rax
mov rax, r10
shr rax, 0x20
mov dword [rsi + r9], r10d
add r9, 4
cmp rdx, r9
jne 0x140049720
xor edx, edx
nop word cs:[rax + rax]
test dl, dl
jne 0x140049750
test eax, eax
je 0x14004995d
nop dword [rax]
mov edx, dword [0x141f33738]
sub edx, dword [0x141f3373c]
and edx, 0x7393a626
imul edx, edx, 0x4d64bda
add edx, 0xb63be109
cmp edx, 0x54534667
ja 0x140049760
cmp rcx, 0x27
ja 0x14004a05b
mov dword [rsi + rcx*4], eax
inc rcx
jmp 0x14004995d
mov eax, 0xd8659d19
mov ecx, dword [0x141f335c8]
add ecx, dword [0x141f335cc]
or ecx, 0x49be125c
imul rcx, rax
shr rcx, 0x3d
add ecx, 0x515a6d12
cmp ecx, 0xa8bdade2
ja 0x1400497a0
mov ecx, edi
and ecx, 7
je 0x140049ad7
lea rax, [0x141f21c08]
nop word [rax + rax]
mov edx, dword [0x141f335d0]
sub edx, dword [0x141f335d4]
and edx, 0xaee7eafa
imul rdx, rdx, 0x53256413
shr rdx, 0x3d
cmp edx, 0x219ac404
je 0x1400497e0
mov eax, dword [rax + rcx*4]
shr rax, cl
mov rcx, qword [rsi + 0xa0]
cmp rcx, 0x28
ja 0x140049a4a
mov edx, 0xb3a1ff7f
nop word cs:[rax + rax]
mov r8d, dword [0x141f335d8]
xor r8d, dword [0x141f335dc]
imul r8, rdx
shr r8, 0x3f
or r8d, 0xbb88c188
cmp r8d, 0x7f644a6a
je 0x140049830
test rcx, rcx
je 0x140049a39
nop
mov edx, dword [0x141f335e0]
sub edx, dword [0x141f335e4]
xor edx, 0x4b0b9179
imul rdx, rdx, 0x49444785
shr rdx, 0x3d
add edx, 0x65028941
cmp edx, 0x76937263
ja 0x140049860
nop dword [rax + rax]
mov edx, dword [0x141f335e8]
and edx, dword [0x141f335ec]
add edx, 0x42d5b452
xor edx, 0x280e30a
or edx, 0xd9750850
cmp edx, 0x171584d
jb 0x140049890
lea rdx, [rcx*4]
xor r8d, r8d
mov r9d, 0xc3653b25
xor r10d, r10d
jmp 0x1400498e4
shr r11, 0x20
add r8, 4
mov r10, r11
cmp rdx, r8
je 0x1400499bb
mov r11d, dword [0x141f335f8]
or r11d, dword [0x141f335fc]
and r11d, 0x28800802
or r11d, 0xc30f15fd
xor r11d, 0xca6db7d6
cmp r11d, 0x42c8a84b
ja 0x14004994a
mov r11d, dword [0x141f33600]
sub r11d, dword [0x141f33604]
imul ebx, r11d, 0x10f5cde4
xor ebx, 0xaa57fc84
imul rbx, r9
shr rbx, 0x3e
mov r11d, dword [rsi + r8]
imul r11, rax
add r11, r10
mov dword [rsi + r8], r11d
cmp ebx, 0xf5d706a8
jbe 0x1400498d0
mov r11d, dword [rsi + r8]
imul r11d, eax
add r11d, r10d
mov dword [rsi + r8], r11d
jmp 0x140049910
xor ecx, ecx
mov eax, dword [0x141f33740]
imul eax, dword [0x141f33744]
add eax, 0x92be30b9
or eax, 0x4257412d
and eax, 0x5b5ff9fd
cmp eax, 0xa64b2972
jbe 0x140049990
mov qword [rsi + 0xa0], rcx
nop word [rax + rax]
mov eax, dword [0x141f33748]
xor edx, edx
div dword [0x141f3374c]
add eax, 0x857f06f
and eax, 0x4eba956d
mov qword [rsi + 0xa0], rcx
cmp eax, 0x98994281
je 0x140049990
jmp 0x14004a013
test r11, r11
je 0x140049a2a
mov eax, dword [0x141f33608]
imul eax, dword [0x141f3360c]
or eax, 0xfc6a59e9
cmp eax, 0x26c362dc
je 0x1400499c0
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x1400499e0
cmp rcx, 0x27
ja 0x14004a05b
mov dword [rsi + rcx*4], r11d
inc rcx
nop word cs:[rax + rax]
mov eax, dword [0x141f33610]
mov edx, dword [0x141f33614]
add eax, edx
add eax, 0xc427d7e0
or eax, 0xf7403e34
imul rax, rax, 0xc6c76a1
shr rax, 0x3b
cmp eax, 0xe9200c5e
je 0x140049a00
xor eax, eax
test al, al
je 0x14004a01f
jmp 0x14004a052
xor ecx, ecx
xor eax, eax
test al, al
je 0x14004a01f
jmp 0x14004a052
ud2
mov eax, dword [0x141f33728]
imul eax, dword [0x141f3372c]
imul rax, rax, 0x61f8f7f
shr rax, 0x3a
imul eax, eax, 0x9fa12fb2
and eax, 0xfc1aee42
cmp eax, 0xb8c3c833
jbe 0x140049ab0
ud2
mov eax, dword [0x141f33730]
xor edx, edx
div dword [0x141f33734]
imul eax, eax, 0x608cb442
add eax, 0x246696a7
ud2
test dil, 8
je 0x140049ce0
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140049af0
mov rcx, qword [rsi + 0xa0]
xor eax, eax
nop dword [rax]
test al, al
jne 0x140049b00
cmp rcx, 0x28
ja 0x14004a05b
nop
mov eax, dword [0x141f33620]
or eax, dword [0x141f33624]
xor eax, 0xa4101302
or eax, 0x5b28e0fd
add eax, 0x40687c1f
cmp eax, 0x5233123a
jb 0x140049b10
nop word cs:[rax + rax]
mov eax, dword [0x141f33628]
sub eax, dword [0x141f3362c]
add eax, 0xaafa765c
and eax, 0x4e55c578
add eax, 0x913d6b3d
cmp eax, 0xf7ab368a
ja 0x140049b40
nop word cs:[rax + rax]
mov eax, dword [0x141f33630]
and eax, dword [0x141f33634]
and eax, 0x18a8ec26
add eax, 0x69e88c9f
or eax, 0xe93189fa
cmp eax, 0x69d59e2d
jb 0x140049b70
test rcx, rcx
je 0x140049ca0
lea r8, [rcx*4]
xor r9d, r9d
xor r10d, r10d
jmp 0x140049bc0
shr rdx, 0x20
add r9, 4
mov r10, rdx
cmp r8, r9
je 0x140049c27
mov eax, dword [0x141f33638]
imul eax, dword [0x141f3363c]
xor eax, 0xaf8e54bd
cmp eax, 0x54cc1247
ja 0x140049c16
nop dword [rax]
mov eax, dword [0x141f33640]
xor edx, edx
div dword [0x141f33644]
add eax, 0x7371b42c
xor eax, 0xa0484916
and eax, 0xae49695e
mov edx, dword [rsi + r9]
imul rdx, rdx, 0x5f5e1
add rdx, r10
mov dword [rsi + r9], edx
cmp eax, 0x639ff004
jae 0x140049bb0
imul eax, dword [rsi + r9], 0x5f5e1
add eax, r10d
mov dword [rsi + r9], eax
jmp 0x140049be0
test rdx, rdx
je 0x140049cca
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140049c40
nop word cs:[rax + rax]
mov eax, dword [0x141f33648]
xor eax, dword [0x141f3364c]
add eax, 0xd9f0ed45
and eax, 0x59cc4498
imul eax, eax, 0x4f851b59
cmp eax, 0x8a5bc4e9
ja 0x140049c50
cmp rcx, 0x27
ja 0x140049ca4
mov eax, dword [0x141f33650]
xor eax, dword [0x141f33654]
imul eax, eax, 0xd9b334ec
add eax, 0x5abcf2ad
cmp eax, 0x4cc90fea
jae 0x14004a05d
jmp 0x14004a083
xor ecx, ecx
jmp 0x140049cca
mov eax, dword [str.B2t]
or eax, dword [0x141f33674]
add eax, 0x9b924352
and eax, 0xb66f2e57
cmp eax, 0x4f706344
jbe 0x14004a0e2
jmp 0x14004a110
mov qword [rsi + 0xa0], rcx
nop word cs:[rax + rax]
mov eax, dword [0x141f33688]
add eax, dword [0x141f3368c]
or eax, 0xf1662f6b
imul rax, rax, 0x422ce165
shr rax, 0x3e
cmp eax, 0x4660c38e
je 0x140049ce0
mov eax, dword [0x141f33690]
xor edx, edx
div dword [0x141f33694]
nop word cs:[rax + rax]
mov eax, dword [0x141f33698]
imul eax, dword [0x141f3369c]
imul eax, eax, 0x23ea28eb
add eax, 0x36cbedc4
or eax, 0xfac41c3f
cmp eax, 0x2ae6bce6
je 0x140049d20
nop word cs:[rax + rax]
mov eax, dword [0x141f336a0]
sub eax, dword [0x141f336a4]
or eax, 0x40210000
xor eax, 0x24200
and eax, 0x60335a00
cmp eax, 0xd411f2cc
ja 0x140049d50
test dil, 0x10
je 0x140049e31
mov eax, dword [0x141f336a8]
and eax, dword [0x141f336ac]
and eax, 0x824900a9
or eax, 0x6ca61e14
imul eax, eax, 0x8b27a065
cmp eax, 0xc89b7802
jbe 0x140049db4
lea rdx, [0x141f21c30]
mov r8d, 2
mov rcx, rsi
call fcn.14004a140
lea rbx, [0x141f21c30]
nop dword [rax + rax]
mov ebp, dword [0x141f336b0]
sub ebp, dword [0x141f336b4]
add ebp, 0xda8353d1
or ebp, 0x88508410
and ebp, 0xa97bce92
mov r8d, 2
mov rcx, rsi
mov rdx, rbx
call fcn.14004a140
cmp ebp, 0xc3226662
ja 0x140049dc0
nop word [rax + rax]
mov eax, dword [0x141f336b8]
or eax, dword [0x141f336bc]
add eax, 0xda195f89
imul rcx, rax, 0xa0875f
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
xor eax, 0xe6d27b25
cmp eax, 0xdc4cb34c
jb 0x140049e00
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140049e40
test dil, 0x20
je 0x140049e60
lea rdx, [0x141f21c38]
mov r8d, 3
mov rcx, rsi
call fcn.14004a140
nop
mov eax, dword [0x141f336c0]
xor edx, edx
div dword [0x141f336c4]
xor eax, 0xeaefad52
imul rax, rax, 0x60af9b03
shr rax, 0x3c
cmp eax, 0x8946a9b0
je 0x140049e60
nop word cs:[rax + rax]
mov eax, dword [0x141f336c8]
and eax, dword [0x141f336cc]
imul rax, rax, 0x6649726b
shr rax, 0x3e
add eax, 0xd6de5a51
cmp eax, 0x53ccf778
jb 0x140049e90
test dil, 0x40
je 0x140049f10
lea rdx, [0x141f21c44]
mov r8d, 5
mov rcx, rsi
call fcn.14004a140
mov ecx, 0x9db4f35b
nop word cs:[rax + rax]
mov eax, dword [0x141f336d0]
xor edx, edx
div dword [0x141f336d4]
imul rax, rcx
shr rax, 0x3c
or eax, 0x6caca1a6
cmp eax, 0x7858e191
je 0x140049ee0
nop word cs:[rax + rax]
mov eax, dword [0x141f336d8]
xor eax, dword [0x141f336dc]
add eax, 0x99a5b9f9
or eax, 0x96429fc1
xor eax, 0xe8f6c035
cmp eax, 0x23b65585
ja 0x140049f10
nop word cs:[rax + rax]
mov eax, dword [0x141f336e0]
xor eax, dword [0x141f336e4]
imul rax, rax, 0x5521e1c7
shr rax, 0x3e
imul eax, eax, 0xb4da193b
or eax, 0x91dff589
cmp eax, 0xea28e6e3
ja 0x140049f40
test dil, dil
jns 0x140049f90
lea rdx, [0x141f21c58]
mov r8d, 0xa
mov rcx, rsi
call fcn.14004a140
nop word cs:[rax + rax]
mov eax, dword [0x141f336e8]
add eax, dword [0x141f336ec]
imul eax, eax, 0xd92dd16
xor eax, 0x58596297
cmp eax, 0x170c10ae
jb 0x140049f90
nop
mov eax, dword [0x141f336f0]
xor edx, edx
div dword [0x141f336f4]
shr eax, 1
imul rax, rax, 0x407f4869
shr rax, 0x3d
cmp eax, 0x19b53c4d
je 0x140049fb0
test edi, 0x100
je 0x14004a008
lea rdx, [0x141f21c80]
mov r8d, 0x13
mov rcx, rsi
call fcn.14004a140
nop
mov eax, dword [0x141f336f8]
xor eax, dword [0x141f336fc]
and eax, 0x9e9e970e
cmp eax, 0x3c40bdaf
je 0x140049ff0
mov rcx, rsi
mov rdx, rdi
call fcn.14004aa00
mov rax, rsi
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret
mov eax, dword [0x141f33618]
xor edx, edx
div dword [0x141f3361c]
and eax, 0xcdbc0c44
mov edx, 0xab91af63
imul rdx, rax
shr rdx, 0x3f
mov qword [rsi + 0xa0], rcx
cmp edx, 0x11e58955
jne 0x140049ad7
mov qword [rsi + 0xa0], rcx
jmp 0x14004a01f
ud2
mov eax, dword [0x141f33658]
imul eax, dword [0x141f3365c]
xor eax, 0x66e9e7f3
add eax, 0x919ef625
and eax, 0xf3d04348
mov dword [rsi + rcx*4], edx
cmp eax, 0xd627efb
jae 0x14004a088
mov dword [rsi + rcx*4], edx
jmp 0x14004a05d
inc rcx
nop dword [rax + rax]
mov eax, dword [0x141f33660]
and eax, dword [0x141f33664]
xor eax, 0xc084010a
and eax, 0xd0a403aa
add eax, 0xe739658c
cmp eax, 0xc6dfd959
ja 0x14004a090
nop word cs:[rax + rax]
mov eax, dword [0x141f33668]
xor eax, dword [0x141f3366c]
add eax, 0x20533d8e
or eax, 0xdcbff31c
cmp eax, 0x9e4d7cc4
jbe 0x14004a0c0
jmp 0x140049cca
mov eax, dword [0x141f33678]
sub eax, dword [0x141f3367c]
and eax, 0x823d0940
imul eax, eax, 0x41c6d6d7
mov ecx, 0x95c32bb7
imul rcx, rax
shr rcx, 0x3d
ud2
ud2