Function at 0x140004050
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 r8, rdx
mov rsi, rcx
mov r9, qword [rdx + 0x10]
test r9, r9
je 0x1400043f0
nop word cs:[rax + rax]
mov eax, dword [0x1415ab290]
imul eax, dword [0x1415ab294]
mov ecx, eax
not ecx
and ecx, 0x8c465097
and eax, 0x73b9af68
sub eax, ecx
add eax, 0x79330ef5
xor eax, 0x49cb5056
cmp eax, 0xcd5f399c
je 0x140004080
mov rcx, qword [r8 + 0x30]
test rcx, rcx
je 0x1400043f0
xor eax, eax
nop
test al, al
jne 0x1400040c0
nop word cs:[rax + rax]
mov eax, dword [0x1415ab298]
mov edx, dword [0x1415ab29c]
mov r10d, edx
not r10d
and r10d, eax
xor edx, eax
add edx, eax
sub edx, r10d
add edx, 0x6253d64d
mov eax, edx
not eax
and eax, 0x1f199deb
mov r10d, edx
and r10d, 0xe0e66214
imul r10d, eax
mov eax, edx
and eax, 0x1f199deb
or edx, 0x1f199deb
imul edx, eax
add edx, r10d
cmp edx, 0xc09a1dcc
ja 0x1400040d0
movzx eax, word [r8 + 0x28]
mov r10, qword [r8 + 0x18]
mov r11d, 0xe25fddfd
xor edi, edi
nop word cs:[rax + rax]
mov edx, dword [0x1415ab2a0]
mov ebx, dword [0x1415ab2a4]
mov ebp, edx
not ebp
and ebp, ebx
mov r14d, ebx
not r14d
and r14d, edx
imul r14d, ebp
mov ebp, edx
and ebp, ebx
or edx, ebx
imul edx, ebp
add edx, r14d
mov ebx, edx
xor ebx, 0x8201e005
and ebx, edx
and ebx, 0xa201e405
or ebx, 0x5f619f2
cmp ebx, 0x846f8ede
ja 0x140004140
test ax, ax
je 0x1400041b0
test dil, dil
jne 0x14000418e
lea ebx, [rax - 1]
mov edx, ebx
xor edx, eax
not edx
or ebx, eax
and ebx, edx
jmp 0x140004290
mov eax, dword [0x1415ab2b8]
mov edx, dword [0x1415ab2bc]
mov ebx, eax
and ebx, edx
xor eax, edx
lea eax, [rax + rbx*2]
imul rax, rax, 0xae2668d
shr rax, 0x3b
or eax, 0xc6b093cc
imul rax, rax, 0x66f0e48f
shr rax, 0x3d
cmp eax, 0x38221d4e
ja 0x1400041b0
add r9, 0xfffffffffffffc80
movdqa xmm0, xmmword [r10]
add r10, 0x10
pmovmskb eax, xmm0
cmp ax, 0xffff
je 0x1400041b0
mov edx, dword [0x1415ab2ac]
add edx, dword [0x1415ab2a8]
mov ebx, edx
not ebx
mov ebp, edx
and ebp, 0x1cf25d05
and ebx, 0x230da2fa
imul ebx, ebp
mov ebp, edx
and ebp, 0x230da2fa
or edx, 0x230da2fa
imul edx, ebp
add edx, ebx
and edx, 0x2ff16ea6
cmp edx, 0x3ee7c293
jne 0x140004250
mov qword [r8 + 0x18], r10
mov qword [r8 + 0x10], r9
nop dword [rax + rax]
mov edx, dword [0x1415ab2b0]
add edx, dword [0x1415ab2b4]
imul rdx, r11
shr rdx, 0x3e
mov ebx, edx
and ebx, 1
xor edx, 0x5ab5a981
or edx, ebx
mov qword [r8 + 0x18], r10
mov qword [r8 + 0x10], r9
cmp edx, 0x21376173
je 0x140004250
mov ebx, 0xfffffffe
sub ebx, eax
not ebx
or ebx, eax
not eax
not ebx
dec rcx
tzcnt eax, eax
neg rax
imul r15, rax, 0x38
add r15, r9
mov rax, r15
add rax, 0xffffffffffffffe0
je 0x140004372
nop
mov edx, dword [0x1415ab2c0]
mov r14d, dword [0x1415ab2c4]
mov ebp, r14d
not ebp
and ebp, edx
xor r14d, edx
add r14d, edx
sub r14d, ebp
or r14d, 0x70e504a4
shr r14d, 2
imul rdx, r14, 0x50d437ef
shr rdx, 0x3a
cmp edx, 0x8c6fe0e6
je 0x1400042b0
movzx ebp, byte [rax]
nop
mov eax, dword [0x1415ab2c8]
xor edx, edx
div dword [0x1415ab2cc]
add eax, 0x832b029c
imul rax, rax, 0x83eddcd
shr rax, 0x3a
and eax, 1
cmp eax, 0x4e9eafb8
je 0x1400042f0
cmp bpl, 2
je 0x140004b80
mov eax, dword [0x1415ab2f8]
mov edx, eax
not edx
or edx, dword [0x1415ab2fc]
add eax, edx
inc eax
or eax, 0x49080
and eax, 0xd174d490
imul rax, rax, 0x6a825245
shr rax, 0x37
cmp eax, 0x5a991d5d
ja 0x140004322
nop word cs:[rax + rax]
test dil, dil
jne 0x140004360
mov eax, ebx
test rcx, rcx
jne 0x140004140
xor ecx, ecx
mov eax, dword [0x1415ab300]
add eax, dword [0x1415ab304]
mov edx, eax
not edx
or eax, 0x10841424
or edx, 0x40480152
and edx, eax
and edx, 0x50cc1576
mov eax, edx
not eax
or eax, 0x3164b6e7
add eax, edx
cmp eax, 0x641f3834
jne 0x1400043b0
mov word [r8 + 0x28], bx
mov qword [r8 + 0x30], rcx
mov eax, dword [0x1415ab308]
xor edx, edx
div dword [0x1415ab30c]
mov edx, eax
not edx
or edx, 0x4378cb83
add eax, edx
inc eax
or eax, 0x9394a499
add eax, 0xf02afd09
mov word [r8 + 0x28], bx
mov qword [r8 + 0x30], rcx
cmp eax, 0x9e7c5668
ja 0x1400043b0
nop word cs:[rax + rax]
mov eax, dword [0x1415ab310]
add eax, dword [0x1415ab314]
imul eax, eax, 0xe5174677
mov ecx, eax
xor ecx, 0x440000a0
or eax, 0x20b6808
and eax, ecx
or eax, 0xb9f49757
cmp eax, 0x3e569e83
jb 0x1400043f0
nop dword [rax]
mov eax, dword [0x1415ab31c]
mov ecx, eax
xor ecx, ecx
not ecx
and ecx, dword [0x1415ab318]
xor ecx, eax
mov eax, ecx
not eax
and eax, 0x41654b24
and ecx, 0xbe9ab4db
sub ecx, eax
mov eax, ecx
and eax, 0x30a256e5
xor ecx, 0x30a256e5
lea eax, [rcx + rax*2]
add eax, 0xdc97f5e7
cmp eax, 0x91261cdb
ja 0x140004420
mov rcx, qword [r8]
test rcx, rcx
je 0x140004c5b
nop dword [rax]
mov eax, dword [0x1415ab320]
mov edx, dword [0x1415ab324]
mov r9d, edx
not r9d
mov r10d, eax
and r10d, r9d
or r9d, eax
not r9d
imul r9d, r10d
mov r10d, eax
and r10d, edx
or eax, edx
imul eax, r10d
add eax, r9d
add eax, 0x70a22e39
mov edx, eax
not edx
mov r9d, eax
and r9d, 0xdc1291a7
and edx, 0x23ed6e58
imul edx, r9d
mov r9d, eax
and r9d, 0x23ed6e58
or eax, 0x23ed6e58
imul eax, r9d
add eax, edx
cmp eax, 0xd860fc20
jb 0x140004470
nop word [rax + rax]
mov eax, dword [0x1415ab328]
add eax, dword [0x1415ab32c]
mov edx, eax
xor edx, 0x80210410
and edx, eax
and edx, 0x80690715
cmp edx, 0xab4ac181
je 0x1400044e0
mov r9, qword [r8 + 8]
cmp rcx, r9
je 0x140004c5b
xor r10d, r10d
mov eax, dword [0x1415ab330]
sub eax, dword [0x1415ab334]
add eax, 0xbc3f3b7
and eax, 0x2f87228c
add eax, 0x126f965
cmp eax, 0x9555f132
ja 0x140004870
nop word [rax + rax]
mov eax, dword [0x1415ab338]
xor eax, dword [0x1415ab33c]
add eax, 0x8978c844
mov edx, eax
and edx, 0x523ac726
add edx, edx
sub eax, edx
add eax, 0xd23ac726
not eax
or eax, 0x7e4abb31
mov r11, qword [rcx]
mov rdi, qword [rcx + 8]
lea r14, [r11 + 0x10]
movdqa xmm0, xmmword [r11]
pmovmskb r12d, xmm0
not r12d
mov rbx, qword [rcx + 0x18]
mov qword [r8 + 0x10], r11
mov qword [r8 + 0x18], r14
mov word [r8 + 0x28], r12w
mov qword [r8 + 0x30], rbx
add eax, 0xc47f497
jae 0x140004870
add rcx, 0x30
test rbx, rbx
je 0x1400049ca
mov r15, r11
nop word cs:[rax + rax]
mov eax, dword [0x1415ab340]
add eax, dword [0x1415ab344]
mov edx, eax
and edx, 0x7c68b6aa
add edx, edx
sub eax, edx
add eax, 0xfc68b6aa
shr eax, 1
imul rax, rax, 0x2408c041
shr rax, 0x3c
lea edx, [rax + 0xdff57f6]
add eax, eax
sub eax, edx
cmp eax, 0xba376565
je 0x1400045c0
test r12w, r12w
je 0x1400046d0
nop word cs:[rax + rax]
mov eax, dword [0x1415ab360]
sub eax, dword [0x1415ab364]
mov edx, eax
not edx
mov ebp, eax
or ebp, 0xd3688626
mov r13d, ebp
and r13d, 0x378adc42
and edx, 0x8152199
imul edx, r13d
and ebp, 0xc87523bd
or eax, 0xdb7da7bf
imul eax, ebp
add eax, edx
add eax, 0xc2368abb
cmp eax, 0x704aca16
ja 0x140004610
mov eax, r12d
not eax
lea ebp, [rax + r12*2]
nop word cs:[rax + rax]
mov eax, dword [0x1415ab368]
xor edx, edx
div dword [0x1415ab36c]
mov edx, eax
not edx
and edx, 0x5ae63e91
mov r13d, eax
and r13d, 0xa519c16e
imul r13d, edx
mov edx, eax
and edx, 0x5ae63e91
or eax, 0x5ae63e91
imul eax, edx
add eax, r13d
imul eax, eax, 0x64ab5f6a
xor eax, 0x8e75082c
cmp eax, 0x4899fc5d
ja 0x140004670
and ebp, r12d
nop
test r10b, r10b
jne 0x1400046c0
jmp 0x14000478c
mov eax, dword [0x1415ab358]
and eax, dword [0x1415ab35c]
mov edx, eax
and edx, 0x66917cca
add edx, edx
sub eax, edx
imul eax, eax, 0x25cd632f
add eax, 0xf6c97072
cmp eax, 0x57278ccc
jb 0x1400046d0
add r15, 0xfffffffffffffc80
movdqa xmm0, xmmword [r14]
add r14, 0x10
pmovmskb ebp, xmm0
cmp bp, 0xffff
je 0x1400046d0
mov eax, dword [0x1415ab348]
add eax, dword [0x1415ab34c]
xor eax, 0x14a08a00
or eax, 0x8b1051ce
cmp eax, 0x2a6ae711
je 0x140004858
mov eax, dword [0x1415ab350]
xor edx, edx
div dword [0x1415ab354]
add eax, 0xc124fea4
not eax
and eax, 0x3bb20af9
mov qword [r8 + 0x18], r14
mov qword [r8 + 0x10], r15
cmp eax, 0x55eebeec
jae 0x140004858
mov eax, ebp
not eax
mov edx, eax
and edx, 0xffffebc9
and ebp, 0x1436
or ebp, edx
mov r12d, ebp
xor r12d, 0x1436
neg eax
xor ebp, 0xffffebc9
or ebp, eax
not ebp
dec rbx
tzcnt eax, r12d
neg rax
imul rax, rax, 0x38
add rax, r15
mov rdx, rax
add rdx, 0xffffffffffffffe0
je 0x1400048a2
movzx edx, byte [rdx]
mov r12d, dword [0x1415ab370]
xor r12d, dword [0x1415ab374]
and r12d, 0x9036328
add r12d, 0xbd59fa32
cmp r12d, 0xe247e477
ja 0x1400047ae
nop word cs:[rax + rax]
mov r12d, dword [0x1415ab378]
sub r12d, dword [0x1415ab37c]
mov r13d, r12d
or r13d, 0x92823900
and r13d, 0xd28a7940
or r12d, 0xffdeffdf
add r12d, r13d
cmp r12d, 0x665bacce
je 0x1400047e0
cmp dl, 2
je 0x140004a9e
nop dword [rax + rax]
mov eax, dword [0x1415ab3a8]
add eax, dword [0x1415ab3ac]
not eax
and eax, 0x725f9dc8
mov edx, eax
not edx
xor eax, 0x80051225
and eax, edx
and eax, 0xd00f162d
cmp eax, 0x2f8e1068
jb 0x140004820
mov r12d, ebp
test rbx, rbx
jne 0x1400045c0
jmp 0x1400048a0
mov qword [r8 + 0x18], r14
mov qword [r8 + 0x10], r15
jmp 0x140004735
mov rax, qword [rcx]
mov rdx, qword [rcx + 0x18]
movdqa xmm0, xmmword [rax]
pmovmskb r11d, xmm0
not r11d
mov qword [r8 + 0x10], rax
add rax, 0x10
mov qword [r8 + 0x18], rax
mov word [r8 + 0x28], r11w
mov qword [r8 + 0x30], rdx
jmp 0x140004540
xor ebx, ebx
mov eax, dword [0x1415ab3b0]
mov edx, dword [0x1415ab3b4]
mov r14d, eax
not r14d
and r14d, edx
mov r15d, edx
not r15d
and r15d, eax
imul r15d, r14d
mov r14d, eax
and r14d, edx
or eax, edx
imul eax, r14d
add eax, r15d
mov edx, eax
not edx
and edx, 0x3d1f1996
mov r14d, eax
and r14d, 0xc2e0e669
imul r14d, edx
mov edx, eax
and edx, 0x3d1f1996
or eax, 0x3d1f1996
imul eax, edx
add eax, r14d
mov edx, eax
not edx
and edx, 0x8a8b9b50
mov r14d, eax
and r14d, 0x757464ae
imul r14d, edx
mov edx, eax
and edx, 0x8a8b9b50
or eax, 0x8a8b9b50
imul eax, edx
add eax, r14d
add eax, 0x80beb750
cmp eax, 0xa284c90d
ja 0x140004a90
nop dword [rax]
mov eax, dword [0x1415ab3b8]
mov edx, dword [0x1415ab3bc]
mov r14d, edx
not r14d
mov r15d, eax
and r15d, r14d
or r14d, eax
not r14d
imul r14d, r15d
mov r15d, eax
and r15d, edx
or eax, edx
imul eax, r15d
add eax, r14d
mov edx, eax
xor edx, 0xdfa9092f
xor eax, 0x52a4c0
and eax, 0x82dba4c0
mov r14d, edx
and r14d, 0x7d245b3f
imul r14d, eax
mov eax, edx
and eax, 0x82dba4c0
or edx, 0x82dba4c0
imul edx, eax
add edx, r14d
mov eax, edx
xor eax, 0x51d3982
and edx, 0x7ae2c640
add edx, edx
sub edx, eax
mov word [r8 + 0x28], bp
mov qword [r8 + 0x30], rbx
cmp edx, 0xc4a078de
ja 0x140004a90
mov eax, dword [0x1415ab3c0]
xor edx, edx
div dword [0x1415ab3c4]
mov edx, dword [0x1415ab3c8]
mov eax, dword [0x1415ab3cc]
mov ebx, edx
not ebx
and ebx, eax
not eax
and eax, edx
sub eax, ebx
mov edx, eax
not edx
and edx, 0x13d1eea9
mov ebx, eax
and ebx, 0x2c2e1156
imul ebx, edx
mov edx, eax
and edx, 0x13d1eea9
or eax, 0x13d1eea9
imul eax, edx
add eax, ebx
mov edx, eax
or edx, 0xce5901a4
mov ebx, eax
not ebx
and ebx, 0x10a03809
mov ebp, edx
and ebp, 0x2d1fc656
imul ebp, ebx
and edx, 0xd2e039a9
or eax, 0xdef939ad
imul eax, edx
add eax, ebp
cmp eax, 0x232d086d
ja 0x1400049d8
nop dword [rax + rax]
mov eax, dword [0x1415ab3d0]
sub eax, dword [0x1415ab3d4]
imul eax, eax, 0x8e0e03f8
add eax, 0xb542f150
imul rax, rax, 0x23d93c43
shr rax, 0x3d
cmp eax, 0xe835c541
ja 0x140004a50
cmp rcx, r9
jne 0x140004514
jmp 0x140004bf6
mov word [r8 + 0x28], bp
mov qword [r8 + 0x30], rbx
jmp 0x140004940
lea rdx, [rdi + r11]
inc rdx
mov qword [r8], rcx
mov qword [r8 + 0x20], rdx
mov word [r8 + 0x28], bp
mov qword [r8 + 0x30], rbx
mov r14, qword [rax - 0x10]
mov rdi, qword [rax - 8]
test rdi, rdi
je 0x140004be2
nop word cs:[rax + rax]
mov eax, dword [0x1415ab384]
mov ecx, eax
xor ecx, eax
not ecx
and ecx, dword [0x1415ab380]
xor ecx, eax
imul eax, ecx, 0x7ba10cab
cmp eax, 0xd8f63e6b
je 0x140004ad0
mov eax, 0x9e5300c9
nop word cs:[rax + rax]
mov ecx, dword [0x1415ab388]
sub ecx, dword [0x1415ab38c]
imul rcx, rax
shr rcx, 0x3d
or ecx, 0x7767f6bd
cmp ecx, 0xcc11dc73
ja 0x140004b00
test rdi, rdi
js 0x1400057f9
mov eax, dword [0x1415ab390]
mov ecx, dword [0x1415ab394]
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
and eax, 0x69f25010
add eax, 0x7efa295c
mov ecx, eax
and ecx, 0x1226686c
xor eax, 0x1226ecee
lea eax, [rax + rcx*2]
cmp eax, 0xfa23762
jne 0x14000574a
jmp 0x140005795
mov word [r8 + 0x28], bx
mov qword [r8 + 0x30], rcx
mov r14, qword [r15 - 0x10]
mov rdi, qword [r15 - 8]
test rdi, rdi
je 0x140004bec
js 0x14000565a
mov eax, dword [0x1415ab2d0]
mov ecx, dword [0x1415ab2d4]
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
or eax, 0xdebbdfff
and eax, 0xdebfffff
cmp eax, 0x36782dd6
jae 0x140005574
jmp 0x1400055e1
mov ebx, 1
jmp 0x1400056ab
mov ebx, 1
jmp 0x1400054bf
mov eax, dword [0x1415ab3e8]
mov ecx, dword [0x1415ab3ec]
not eax
not ecx
and ecx, eax
mov eax, ecx
not eax
xor ecx, 0x63784798
and ecx, eax
imul eax, ecx, 0x41ce2acc
imul rax, rax, 0x55fba28f
shr rax, 0x3e
cmp eax, 0x6277cc16
jne 0x140004c3a
lea rax, [rdi + r11]
inc rax
mov qword [r8], r9
mov qword [r8 + 0x20], rax
lea rax, [rdi + r11]
inc rax
xor ecx, ecx
nop word cs:[rax + rax]
mov qword [r8], r9
mov qword [r8 + 0x20], rax
test cl, cl
jne 0x140004c50
mov eax, dword [0x1415ab3f0]
mov ecx, dword [0x1415ab3f4]
not ecx
mov edx, eax
or edx, ecx
and ecx, eax
not ecx
and ecx, edx
not ecx
or ecx, 0xd03e2196
add ecx, 0xe1b730cd
imul rax, rcx, 0x23222b0b
shr rax, 0x3d
cmp eax, 0xd9072163
jbe 0x140004ca0
mov qword [r8 + 0x10], 0
nop dword [rax + rax]
mov eax, dword [0x1415ab3f8]
sub eax, dword [0x1415ab3fc]
xor eax, 0x3a892e4c
imul rax, rax, 0x10f75155
shr rax, 0x38
and eax, 0xfffffff6
mov qword [r8 + 0x10], 0
cmp eax, 0xa079a4de
ja 0x140004ca0
mov r9, qword [r8 + 0x38]
nop word cs:[rax + rax]
mov eax, dword [0x1415ab400]
imul eax, dword [0x1415ab404]
mov ecx, eax
xor ecx, 0x848208
or eax, 0x18080810
and eax, ecx
or eax, 0x20004e7
and eax, 0x1a8c8eff
cmp eax, 0x3608192f
ja 0x140004ce0
test r9, r9
je 0x1400050ef
nop word cs:[rax + rax]
mov eax, dword [str.3_FC]
or eax, dword [0x1415ab40c]
mov ecx, eax
not ecx
or ecx, 0x308bb71
add eax, ecx
inc eax
and eax, 0x203e06a
cmp eax, 0x911c2759
ja 0x140004d20
mov rcx, qword [r8 + 0x58]
test rcx, rcx
je 0x1400050ef
movzx ebx, word [r8 + 0x50]
mov r10, qword [r8 + 0x40]
nop dword [rax]
mov eax, dword [0x1415ab410]
mov edx, eax
not edx
or edx, dword [0x1415ab414]
add edx, eax
imul eax, edx, 0x3309771f
add eax, 0x53ff4717
shr eax, 2
imul rax, rax, 0x51240c9
shr rax, 0x38
cmp eax, 0x39193c80
ja 0x140004d60
movabs r11, 0x1eba09523b7b5666
nop dword [rax]
mov eax, dword [str.fI__v]
xor edx, edx
div dword [0x1415ab41c]
nop
mov eax, dword [0x1415ab420]
mov edx, dword [0x1415ab424]
mov edi, eax
and edi, edx
xor eax, edx
lea eax, [rax + rdi*2]
add eax, 0x369c53a0
mov edx, eax
xor edx, 0x72a4abc
xor eax, 0xc794d5f0
add eax, edx
and edx, 0x3f4160b3
sub eax, edx
cmp eax, 0xb31c5ea8
je 0x140004db0
test bx, bx
je 0x140004e90
lea edi, [rbx - 1]
nop word cs:[rax + rax]
mov eax, dword [0x1415ab440]
xor edx, edx
div dword [0x1415ab444]
or eax, 0xf5b95681
mov edx, eax
not edx
or edx, 0x133e5b86
add eax, edx
inc eax
mov edx, eax
not edx
and edx, 0xf7088634
mov ebp, eax
and ebp, 0x8f769ca
imul ebp, edx
mov edx, eax
and edx, 0x13089634
or eax, 0xf7089634
imul eax, edx
add eax, ebp
cmp eax, 0x4ed356b5
je 0x140004e00
mov eax, edi
xor eax, ebx
not eax
or edi, ebx
and edi, eax
nop dword [rax]
mov eax, dword [0x1415ab448]
mov edx, dword [0x1415ab44c]
xor edx, eax
not edx
and edx, eax
not edx
and edx, 0x3020820
cmp edx, 0x9d416f07
ja 0x140004e60
jmp 0x140004f70
mov eax, dword [0x1415ab438]
xor eax, dword [0x1415ab43c]
or eax, 0x7d57ac05
mov edx, eax
not edx
or edx, 0x37ea7b94
add eax, edx
inc eax
or eax, 0xdc103330
cmp eax, 0x66e9fb82
jb 0x140004e90
add r9, 0xfffffffffffffc80
movdqa xmm0, xmmword [r10]
add r10, 0x10
pmovmskb ebx, xmm0
cmp bx, 0xffff
je 0x140004e90
mov eax, dword [0x1415ab428]
sub eax, dword [0x1415ab42c]
mov edx, eax
not edx
and edx, 0x9b673eed
mov edi, eax
and edi, 0x6498c112
imul edi, edx
mov edx, eax
and edx, 0x9b673eed
or eax, 0x9b673eed
imul eax, edx
add eax, edi
imul rax, rax, 0x440e7119
shr rax, 0x3e
cmp eax, 0x3a82f4d0
je 0x140004f4f
nop word [rax + rax]
mov eax, dword [str.f_DZ]
xor edx, edx
div dword [0x1415ab434]
imul eax, eax, 0xdf0f21ca
add eax, 0xed23f80e
not eax
and eax, 0x6edb2831
mov qword [r8 + 0x40], r10
mov qword [r8 + 0x38], r9
cmp eax, 0x284754ef
jbe 0x140004f60
mov qword [r8 + 0x40], r10
mov qword [r8 + 0x38], r9
jmp 0x140004f20
not ebx
lea edi, [rbx - 1]
and edi, ebx
nop word [rax + rax]
mov eax, dword [0x1415ab450]
mov edx, dword [0x1415ab454]
mov ebp, edx
and ebp, eax
add eax, edx
sub eax, ebp
and eax, 0xec6b96ec
cmp eax, 0xaf2b66e3
je 0x140004f70
dec rcx
tzcnt eax, ebx
mov rdx, r11
sub rdx, rax
sub rdx, r11
imul rax, rdx, 0x38
lea rdx, [r9 + rax]
add rdx, 0xffffffffffffffe0
test rdx, rdx
je 0x140005071
add rax, r9
movzx edx, byte [rdx]
mov ebx, dword [0x1415ab458]
mov ebp, dword [0x1415ab45c]
mov r14d, ebx
xor r14d, ebp
not r14d
or ebx, ebp
and ebx, r14d
add ebx, 0x7d6923e7
imul rbx, rbx, 0x247351ad
shr rbx, 0x39
add ebx, 0xfd24e9ef
cmp ebx, 0x5f208bb4
jb 0x140004fbb
cmp dl, 2
je 0x140005142
mov eax, dword [0x1415ab4b0]
xor eax, dword [0x1415ab4b4]
mov edx, eax
xor edx, 0x2acb83ea
add edx, eax
and eax, 0xd5347c15
sub edx, eax
imul eax, edx, 0xe53ed988
imul rax, rax, 0x39ca67cb
shr rax, 0x3d
cmp eax, 0xb75b67a8
ja 0x140004ffd
nop word cs:[rax + rax]
mov eax, dword [0x1415ab4b8]
imul eax, dword [0x1415ab4bc]
imul rax, rax, 0x293a6753
shr rax, 0x3d
or eax, 0x4c060144
cmp eax, 0x60accfc7
je 0x140005040
mov ebx, edi
test rcx, rcx
jne 0x140004da0
xor ecx, ecx
mov eax, dword [0x1415ab4e0]
mov edx, dword [0x1415ab4e4]
mov r9d, eax
xor r9d, edx
not r9d
and r9d, edx
add r9d, r9d
sub edx, r9d
add edx, eax
mov eax, edx
and eax, 0x712068b
or edx, 0x712068b
add edx, eax
not edx
and edx, 0x6831b01
cmp edx, 0x6781d357
jbe 0x1400050c0
mov word [r8 + 0x50], di
mov qword [r8 + 0x58], rcx
nop dword [rax]
mov eax, dword [0x1415ab4e8]
imul eax, dword [0x1415ab4ec]
imul eax, eax, 0xb7053c61
not eax
or eax, 0x40080100
and eax, 0x40b91118
mov word [r8 + 0x50], di
mov qword [r8 + 0x58], rcx
cmp eax, 0x31918194
jb 0x1400050c0
mov qword [r8 + 0x38], 0
movabs rax, 0x8000000000000000
mov qword [rsi], rax
nop word cs:[rax + rax]
mov eax, dword [0x1415ab4f0]
imul eax, dword [0x1415ab4f4]
and eax, 0xf777ac00
shr eax, 7
imul rax, rax, 0x83f895
shr rax, 0x2d
imul eax, eax, 0x4eee73ba
cmp eax, 0x2ceb80be
je 0x140005110
jmp 0x140005739
mov word [r8 + 0x50], di
mov qword [r8 + 0x58], rcx
mov r14, qword [rax - 0x10]
mov rdi, qword [rax - 8]
test rdi, rdi
je 0x1400053e3
mov eax, dword [0x1415ab460]
xor edx, edx
div dword [0x1415ab464]
nop word [rax + rax]
mov eax, dword [0x1415ab468]
or eax, dword [0x1415ab46c]
mov ecx, eax
or ecx, 0xfa2d8cc
mov edx, ecx
not edx
and edx, 0xe3ff0f98
mov r8d, ecx
and r8d, 0x1c00f067
imul r8d, edx
and ecx, 0xe3ff0f98
or eax, 0xefffdfdc
imul eax, ecx
add eax, r8d
imul rax, rax, 0x244df559
shr rax, 0x3c
cmp eax, 0x4f28f178
ja 0x140005170
nop
mov eax, dword [0x1415ab470]
xor eax, dword [0x1415ab474]
mov ecx, eax
xor ecx, 0x2e32cb84
or eax, 0xd1cd347b
and eax, ecx
mov ecx, eax
not ecx
and ecx, 0x5530ceef
and eax, 0xaacf3110
sub eax, ecx
mov ecx, eax
and ecx, 0x6031e4ab
xor eax, 0xe031e4ab
lea eax, [rax + rcx*2]
cmp eax, 0xd69d869a
ja 0x1400051c0
test rdi, rdi
js 0x140005496
mov eax, dword [0x1415ab478]
sub eax, dword [0x1415ab47c]
mov ecx, eax
xor ecx, 0xfae294fc
and ecx, eax
imul eax, ecx, 0x5ed2aaf5
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x93d12471
and ecx, 0x6c2edb8e
imul ecx, edx
mov edx, eax
and edx, 0x6c2edb8e
or eax, 0x6c2edb8e
imul eax, edx
add eax, ecx
cmp eax, 0x96d9bf46
jae 0x140005270
movzx eax, byte [0x1415d3950]
xor ecx, ecx
mov rdx, rdi
call fcn.1401b5e70
nop word [rax + rax]
mov eax, dword [0x1415ab480]
add eax, dword [0x1415ab484]
mov ebp, eax
xor ebp, 0xf31c4b88
add ebp, eax
and eax, 0xce3b477
sub ebp, eax
movzx eax, byte [0x1415d3950]
xor ecx, ecx
mov rdx, rdi
call fcn.1401b5e70
cmp ebp, 0x735098fc
je 0x140005270
mov rbx, rax
nop dword [rax]
mov eax, dword [0x1415ab488]
mov ecx, dword [0x1415ab48c]
not eax
not ecx
or ecx, eax
not ecx
shr ecx, 2
imul rax, rcx, 0x14f36855
shr rax, 0x38
mov ecx, eax
add ecx, 0xdda0af69
not ecx
or ecx, 0xe744c474
add eax, ecx
add eax, 0xdda0af69
cmp eax, 0x9f59e680
je 0x1400052b0
mov eax, dword [0x1415ab490]
and eax, dword [0x1415ab494]
imul eax, eax, 0xb6e209cb
mov ecx, eax
xor ecx, 0xce7d036f
and eax, 0x3182fc90
add eax, eax
sub eax, ecx
imul rax, rax, 0x14da6f3d
shr rax, 0x3c
cmp eax, 0x2d77e6aa
ja 0x1400052f0
test rbx, rbx
je 0x140005496
nop
mov eax, dword [0x1415ab498]
mov ecx, dword [0x1415ab49c]
mov edx, eax
xor edx, ecx
not edx
or eax, ecx
and eax, edx
imul eax, eax, 0x4d57e881
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xed66eb33
and ecx, 0x129914cc
imul ecx, edx
mov edx, eax
and edx, 0x129914cc
or eax, 0x129914cc
imul eax, edx
add eax, ecx
imul rcx, rax, 0x30b2fd0d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0xf4335d35
ja 0x140005330
nop
mov eax, dword [0x1415ab4a0]
mov ecx, dword [0x1415ab4a4]
not eax
not ecx
or ecx, eax
not ecx
or ecx, 0xedbd568e
mov eax, ecx
and eax, 0x898eb882
mov edx, eax
not edx
and edx, 0x36024a1d
mov r8d, ecx
and r8d, 0x8984a080
imul r8d, edx
and ecx, 0xa1802
or eax, 0x360a5a1f
imul eax, ecx
add eax, r8d
cmp eax, 0xea56cfc1
je 0x140005390
jmp 0x1400053e8
mov ebx, 1
mov eax, dword [0x1415ab4c0]
or eax, dword [0x1415ab4c4]
or eax, 0x92516abf
add eax, 0xcc04b491
shr eax, 8
imul rax, rax, 0xb3c13f
shr rax, 0x2f
cmp eax, 0x411b9fa
jbe 0x140005430
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.14022aa10
nop word cs:[rax + rax]
mov ebp, dword [0x1415ab4c8]
mov eax, dword [0x1415ab4cc]
mov ecx, ebp
and ecx, eax
add ecx, ecx
add ebp, eax
sub ebp, ecx
mov eax, ebp
not eax
and eax, 0x631adcfc
mov ecx, ebp
and ecx, 0x9ce52303
imul ecx, eax
mov eax, ebp
and eax, 0x631adcfc
or ebp, 0x631adcfc
imul ebp, eax
add ebp, ecx
mov eax, ebp
xor eax, 0xf5ca7a59
xor ebp, 0xf4e313bd
and ebp, eax
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.14022aa10
cmp ebp, 0xb3e5f072
jb 0x140005430
jmp 0x1400056b9
ud2
mov eax, dword [0x1415ab3d8]
imul eax, dword [0x1415ab3dc]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x16b3ae2f
and ecx, 0xe94c51d0
imul ecx, edx
mov edx, eax
and edx, 0xe94c51d0
or eax, 0xe94c51d0
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x7e6962b0
or eax, 0x7e6962b3
add eax, ecx
mov ecx, eax
xor ecx, 0xbf3d9ac0
and ecx, eax
cmp ecx, 0x1a24359d
jbe 0x140005530
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.14022aa10
nop word cs:[rax + rax]
mov eax, dword [0x1415ab3e0]
mov ecx, dword [0x1415ab3e4]
add eax, ecx
add eax, 0x60eca105
mov ebp, eax
not ebp
or eax, 0x200848
and eax, 0x84a81a4f
and ebp, 0x854c000
or ebp, eax
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.14022aa10
cmp ebp, 0xc0a8ed58
jae 0x140005530
jmp 0x1400056b9
mov eax, dword [0x1415ab2d8]
mov ecx, dword [0x1415ab2dc]
mov edx, eax
not edx
or eax, ecx
not ecx
or ecx, edx
and ecx, eax
mov eax, ecx
xor eax, 0x4206c0b2
add eax, ecx
and ecx, 0xbdf93f4d
sub eax, ecx
mov ecx, eax
xor ecx, 0xc452ee34
or eax, 0x3bad11cb
and eax, ecx
mov ecx, eax
not ecx
and ecx, 0x725c2190
mov edx, eax
and edx, 0x8da3de6f
imul edx, ecx
mov ecx, eax
and ecx, 0x725c2190
or eax, 0x725c2190
imul eax, ecx
add eax, edx
movzx ecx, byte [0x1415d3950]
cmp eax, 0xebd015cf
jbe 0x1400055ea
movzx eax, byte [0x1415d3950]
jmp 0x140005574
xor ecx, ecx
mov rdx, rdi
call fcn.1401b5e70
mov rbx, rax
nop word [rax + rax]
mov eax, dword [0x1415ab2e0]
xor edx, edx
div dword [0x1415ab2e4]
mov ecx, eax
and ecx, 0xf7c15d40
mov edx, ecx
not edx
and edx, 0x90424e7e
mov r8d, eax
and r8d, 0x67811100
imul r8d, edx
and eax, 0x90404c40
or ecx, 0x90424e7e
imul ecx, eax
add ecx, r8d
imul rax, rcx, 0x734ea44b
shr rax, 0x3d
cmp eax, 0x5b33ce80
je 0x140005600
test rbx, rbx
jne 0x1400054bf
mov eax, dword [0x1415ab2e8]
xor eax, dword [0x1415ab2ec]
xor eax, 0x5b7081cb
add eax, 0xdda8c68f
and eax, 0x7e9a4f11
cmp eax, 0xe09354fe
jbe 0x14000567e
ud2
mov eax, 0x867a74fd
mov ecx, dword [0x1415ab2f0]
and ecx, dword [0x1415ab2f4]
add ecx, 0x416fc84d
shr ecx, 1
imul rcx, rax
shr rcx, 0x3b
ud2
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.14022aa10
mov eax, dword [0x1415ab4d0]
and eax, dword [0x1415ab4d4]
or eax, 0xf56dff06
imul rax, rax, 0x69a3f669
shr rax, 0x3e
cmp eax, 0x68bcb739
je 0x14000572c
mov eax, dword [0x1415ab4dc]
add eax, dword [0x1415ab4d8]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x3a2e6f9
and ecx, 0xc5d1906
imul ecx, edx
mov edx, eax
and edx, 0xc5d1906
or eax, 0xc5d1906
imul eax, edx
add eax, ecx
imul eax, eax, 0xecca7f6
or eax, 0xf7e940b1
mov qword [rsi], rdi
mov qword [rsi + 8], rbx
mov qword [rsi + 0x10], rdi
cmp eax, 0x35803fc3
ja 0x140005739
mov qword [rsi], rdi
mov qword [rsi + 8], rbx
mov qword [rsi + 0x10], rdi
jmp 0x1400056dc
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x1415ab398]
xor edx, edx
div dword [0x1415ab39c]
mov ecx, eax
or ecx, 0x1004a240
and ecx, 0x324ca6cc
or eax, 0xb74eaecc
add eax, ecx
mov r15d, 0xae94ebfd
imul r15, rax
shr r15, 0x3f
movzx eax, byte [0x1415d3950]
xor ecx, ecx
mov rdx, rdi
call fcn.1401b5e70
cmp r15d, 0x27f06fa6
jne 0x1400057a8
movzx eax, byte [0x1415d3950]
xor ecx, ecx
mov rdx, rdi
call fcn.140219830
jmp 0x14000574a
mov rbx, rax
test rax, rax
je 0x1400057f9
mov eax, 0xbef4f69d
nop word cs:[rax + rax]
mov ecx, dword [0x1415ab3a0]
add ecx, dword [0x1415ab3a4]
imul rcx, rax
shr rcx, 0x3f
not ecx
and ecx, 0x20944201
cmp ecx, 0x2ba38420
ja 0x1400057c0
mov al, 1
nop word cs:[rax + rax]
test al, al
je 0x1400057f0
jmp 0x1400056ab
ud2