Function at 0x180400e70
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x20
mov rsi, rcx
mov r8b, byte [rsi + 0x108]
mov eax, dword [0x1807990c0]
or eax, dword [0x1807990c4]
imul eax, eax, 0x12af4c4a
and eax, 0x37b124a1
imul eax, eax, 0x48a3cc95
cmp eax, 0xdccf790d
ja 0x18040142c
mov eax, dword [0x1807990c8]
xor eax, dword [0x1807990cc]
imul eax, eax, 0xc53d18f4
sub eax, 0x8cd954b7
mov ecx, 0xf1298e22
xor edx, edx
div ecx
cmp r8b, 3
sete cl
cmp eax, 0xc7ff3584
ja 0x18040142c
jmp 0x180400edb
mov eax, dword [0x1807990d0]
xor eax, dword [0x1807990d4]
xor eax, 0xfa98d943
or eax, 0xad747735
xor eax, 0x175a5e37
cmp eax, 0x31ea8f4c
je 0x180401439
jmp 0x180400f03
mov eax, dword [0x1807990d8]
xor eax, dword [0x1807990dc]
imul eax, eax, 0x21512623
mov r8d, 0x5c8098a9
xor edx, edx
div r8d
sub eax, 0xc151cb43
cmp eax, 0x8bd070c3
je 0x180400f03
test cl, 1
jne 0x180400f39
jmp 0x180400f33
add rsp, 0x20
pop rsi
ret
mov rax, rsi
add rax, 0x100
movzx ecx, byte [rax]
mov eax, dword [0x1807990e0]
and eax, dword [0x1807990e4]
mov r8d, 0x89051e39
xor edx, edx
div r8d
add eax, 0x19f12dcc
imul eax, eax, 0xac675b1d
cmp eax, 0xff639002
ja 0x180401446
jmp 0x180400f74
mov eax, dword [0x1807990e8]
and eax, dword [0x1807990ec]
xor eax, 0x3686475f
xor eax, 0x332ccc94
mov r8d, 0xbb683d9
xor edx, edx
div r8d
cmp eax, 0xf929f570
je 0x180400f74
test ecx, ecx
je 0x180400fc3
jmp 0x180400fa2
sub ecx, 3
je 0x180401168
jmp 0x180400f33
mov rcx, qword [rax]
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
jmp 0x180400f33
mov rcx, rsi
add rcx, 0xa8
mov eax, dword [0x1807990f0]
xor edx, edx
div dword [0x1807990f4]
and eax, 0xbd0fa656
xor eax, 0xf6a0b546
or eax, 0xb2da18aa
cmp eax, 0x911a19ce
jb 0x180401457
mov eax, dword [0x1807990f8]
and eax, dword [0x1807990fc]
mov r8d, 0x48043fe6
xor edx, edx
div r8d
add eax, 0x76682289
add eax, 0x97931eff
mov rdx, qword [rcx]
cmp eax, 0x55a98b91
je 0x180401457
jmp 0x180401026
mov eax, dword [0x180799100]
add eax, dword [0x180799104]
sub eax, 0xf9350d9
add eax, 0x9b961ba8
xor eax, 0x87f89e13
cmp eax, 0x41042cb2
jb 0x180401468
jmp 0x18040104e
mov eax, dword [0x180799108]
imul eax, dword [0x18079910c]
and eax, 0xe66aa70a
and eax, 0xcf57e3a0
imul ecx, eax, 0x4adf19e6
cmp rdx, 0
sete al
cmp ecx, 0xd916d65
jb 0x18040104e
test al, 1
jne 0x180401094
jmp 0x180401080
mov rcx, qword [rsi + 0xa0]
mov r8d, 1
call fcn.1804cafa0
jmp 0x180401094
mov rax, rsi
add rax, 0xd8
mov r8, qword [rax]
cmp r8, 0
sete al
mov ecx, dword [0x180799110]
xor ecx, dword [0x180799114]
add ecx, 0xcffdbc3c
and ecx, 0x1c1fde8b
xor ecx, 0xa2d49896
cmp ecx, 0xcf438066
jae 0x180401479
jmp 0x1804010d3
mov ecx, dword [0x180799118]
and ecx, dword [0x18079911c]
xor ecx, 0x71cceb16
and ecx, 0xe9d8de46
or ecx, 0xeae02436
cmp ecx, 0x74ffe80f
jbe 0x1804010d3
test al, 1
jne 0x180400f33
jmp 0x180401103
mov eax, dword [0x180799120]
imul eax, dword [0x180799124]
mov ecx, 0xbdf70664
xor edx, edx
div ecx
sub eax, 0x3a653fff
add eax, 0x3fc9bb5b
cmp eax, 0x888d60ea
je 0x180401486
mov ecx, dword [0x180799128]
or ecx, dword [0x18079912c]
and ecx, 0x4779b7e
or ecx, 0x3c5df61d
add ecx, 0xdc293a75
mov rax, rsi
add rax, 0xd0
cmp ecx, 0x4f971c77
je 0x180401486
jmp 0x180401163
jmp 0x180400fad
mov eax, dword [0x180799130]
add eax, dword [0x180799134]
sub eax, 0xd7a104f3
add eax, 0x2a3373cd
xor eax, 0xe54c26ca
cmp eax, 0xaf60f159
je 0x180401493
jmp 0x180401190
mov eax, dword [0x180799138]
xor eax, dword [0x18079913c]
mov ecx, 0x6906cebe
xor edx, edx
div ecx
and eax, 0x933f742f
and eax, 0xa8bcd9a2
mov rcx, rsi
add rcx, 0x60
cmp eax, 0x3a35a47f
jae 0x180401190
jmp 0x1804011bf
mov eax, dword [0x180799140]
imul eax, dword [0x180799144]
add eax, 0xb54ccafd
and eax, 0x90692006
or eax, 0x34341eac
cmp eax, 0x21bb870d
jbe 0x1804014a0
mov eax, dword [0x180799148]
sub eax, dword [0x18079914c]
sub eax, 0x42f4406f
mov r8d, 0xbe7189b3
xor edx, edx
div r8d
sub eax, 0xdad6f567
cmp byte [rsi + 0x89], 2
setb dl
cmp eax, 0x2c4f7c0f
ja 0x1804014a0
jmp 0x18040121e
test dl, 1
jne 0x180401228
jmp 0x1804012fc
mov eax, dword [0x180799150]
and eax, dword [0x180799154]
mov r8d, 0xecc7cc71
xor edx, edx
div r8d
sub eax, 0x7d66f192
mov r8d, 0x90b5a660
xor edx, edx
div r8d
cmp eax, 0x26bf92f5
je 0x1804014b1
mov eax, dword [0x180799158]
add eax, dword [0x18079915c]
imul eax, eax, 0xe699c0d0
xor eax, 0xd7a63fa8
imul edx, eax, 0x32ead02d
mov rax, rsi
add rax, 0x68
cmp edx, 0xa1801b1b
jae 0x1804014b1
jmp 0x18040128c
mov edx, dword [0x180799160]
xor edx, dword [0x180799164]
add edx, 0x71a9fd32
imul edx, edx, 0xbe906a25
xor edx, 0xbb932b01
cmp edx, 0x63432033
jbe 0x1804014c2
jmp 0x1804012b8
mov edx, dword [0x180799168]
and edx, dword [0x18079916c]
xor edx, 0x1fa66e88
imul r8d, edx, 0x7cda9fd5
and r8d, 0x90b9d5d4
mov rdx, qword [rax]
cmp r8d, 0x4b1af7c5
jb 0x1804012b8
jmp 0x1804012e6
cmp rdx, 0
je 0x1804012fc
mov rcx, qword [rcx]
mov r8d, 1
call fcn.1804cafa0
jmp 0x1804012fc
mov eax, dword [0x180799170]
add eax, dword [0x180799174]
and eax, 0x4d50adc7
sub eax, 0x283cfab5
mov ecx, 0x33c1d5fb
xor edx, edx
div ecx
cmp eax, 0x4dfc0013
ja 0x1804014d3
jmp 0x180401328
mov ecx, dword [0x180799178]
or ecx, dword [0x18079917c]
xor ecx, 0xf2afcd29
and ecx, 0x93ff6936
or ecx, 0x4676ed76
mov al, byte [rsi + 0x59]
cmp ecx, 0x5f5c388e
ja 0x180401328
jmp 0x180401353
cmp al, 2
setb al
test al, 1
jne 0x180401361
jmp 0x180400f33
mov eax, dword [0x180799180]
add eax, dword [0x180799184]
xor eax, 0xbaac8d78
mov ecx, 0x13816857
xor edx, edx
div ecx
imul eax, eax, 0x719215f
cmp eax, 0xf9d0de94
jae 0x1804014e4
jmp 0x18040138e
mov edx, dword [0x180799188]
xor edx, dword [0x18079918c]
xor edx, 0xdfe7afe7
or edx, 0xb7562293
sub edx, 0xd02d9455
mov rax, rsi
add rax, 0x30
mov rcx, rsi
add rcx, 0x38
cmp edx, 0x1c614a43
jbe 0x18040138e
jmp 0x1804013c4
mov edx, dword [0x180799190]
sub edx, dword [0x180799194]
xor edx, 0x175e90ce
xor edx, 0x6e345f03
xor edx, 0xf582165c
cmp edx, 0x11ff3ef5
jbe 0x1804014f1
mov edx, dword [0x180799198]
or edx, dword [0x18079919c]
add edx, 0xdd9383c7
add edx, 0xfc14e7c
xor edx, 0xa715be62
mov r8, qword [rcx]
cmp edx, 0x3a12697e
jae 0x1804014f1
jmp 0x18040141d
cmp r8, 0
je 0x180400f33
jmp 0x180400fad
jbe 0x18040147c
jmp 0x1309bb312
xor eax, 0x32ccff05
push rbx
add ch, byte [rdi - 0x54417]
push rdi
stosb byte [rdi], al
sub dword [rax], eax
invalid
imul dword [rdx + 0x3dc60029]
fdivrp st(4)
mov eax, dword [rax + 0x1be9ac84]
sti
invalid
xor bl, byte [rdx - 0x79]
dec bl
xchg ebx, eax
sbb ebx, edi
retf
xchg ecx, eax
cmp dword [rbp + 0x61], ecx
and esp, ecx
xchg ebp, eax
invalid
push rcx
sbb cl, byte [rsi]
ror dword [rax], cl
mov cl, 0xe9
cld
invalid
invalid
pop rsi
pushfq
test dword [rax - 5], edx
jnp 0x1804014aa
xlatb
jmp 0x18040112e
invalid
out dx, eax
invalid
or byte [rsi], al
jmp 0x1804011e6
in al, dx
wait
jl 0x180401533
invalid
push rdx
jmp 0x1ad310596
js 0x18040150a
fdiv dword [rbp + 0x9836a0d]
sahf
pop rcx
adc eax, dword [rcx - 0x1bd17]
jmp qword [rdx - 0x157b7c35]
movabs byte [0xe94f08ebea8483cb], al
wait
invalid
add al, 0xd2
xor byte [rdi + 0x6b852b95], bl
fist word [rax - 0x13164a68]
invalid
int3
invalid