Function at 0x18038f620
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x10f8
call fcn.180698e80
sub rsp, rax
mov rdi, rdx
mov rsi, rcx
mov rcx, rsi
call fcn.180643f20
cmp rax, 0
sete bpl
test bpl, 1
jne 0x18038f6ac
jmp 0x18038f657
mov qword [rsp + 0x30], rax
lea r14, [rsp + 0x30]
add r14, 8
mov qword [rsp + 0x38], rdx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x40]
add rax, 0x10
mov qword [rax], 0
lea rcx, [rsp + 0x60]
mov rdx, rdi
mov r8d, 0x1098
call fcn.1806a7400
lea r15, [rsp + 0x2e]
add r15, 1
jmp 0x18038f70b
mov eax, dword [0x18078e580]
and eax, dword [0x18078e584]
imul eax, eax, 0xd65a3e79
add eax, 0x86f4eb69
imul eax, eax, 0xc1395bc7
cmp eax, 0x76ec062a
jbe 0x18038f9d3
jmp 0x18038f6d6
mov esi, dword [0x18078e588]
or esi, dword [0x18078e58c]
sub esi, 0xa5921173
or esi, 0x8da077cd
and esi, 0x638ffc65
mov rcx, rdi
call fcn.180388bf0
cmp esi, 0x11654c93
jae 0x18038f6d6
jmp 0x18038f706
jmp 0x18038f9b7
call fcn.180645b70
mov rdi, rax
mov rbx, rdi
add rbx, 0x50
mov cl, byte [rbx]
mov eax, dword [0x18078e590]
sub eax, dword [0x18078e594]
mov r8d, 0x8fc0784b
xor edx, edx
div r8d
sub eax, 0x9af0cdec
mov r8d, 0xb0e9525e
xor edx, edx
div r8d
cmp eax, 0x9e441e7a
je 0x18038f9ec
mov edx, dword [0x18078e598]
and edx, dword [0x18078e59c]
add edx, 0xe834094
or edx, 0x2fbe045c
xor edx, 0x7c602fe8
movzx eax, cl
cmp edx, 0xaa6d9016
jbe 0x18038f9ec
mov r12b, 2
test rax, rax
je 0x18038f78f
jmp 0x18038f785
sub rax, 1
je 0x18038f7a3
jmp 0x18038f78d
jmp 0x18038f7bf
lea rdx, [0x180477810]
mov rcx, rdi
call fcn.180666c30
mov byte [rbx], 1
jmp 0x18038f7a3
mov rax, rdi
add rax, 0x4c
mov r12b, byte [rdi + 0x4c]
mov rcx, rdi
add rcx, 0x4d
mov dil, byte [rdi + 0x4d]
mov byte [rax], 1
mov byte [rcx], 0x80
mov eax, dword [0x18078e5a0]
and eax, dword [0x18078e5a4]
or eax, 0xd1d899a2
mov ecx, 0xce9f3e01
xor edx, edx
div ecx
and eax, 0xbbfb13ce
cmp eax, 0x2e9fb26d
jae 0x18038f9f9
jmp 0x18038f7eb
mov eax, dword [0x18078e5a8]
add eax, dword [0x18078e5ac]
and eax, 0x1b4e54c8
sub eax, 0xeca1c8d8
imul r13d, eax, 0x1417d608
mov byte [rsp + 0x2e], r12b
mov byte [r15], dil
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0x40]
call fcn.18038fc20
mov bl, al
cmp byte [rsp + 0x2e], 2
sete al
cmp r13d, 0x28d8de24
jbe 0x18038f7eb
test al, 1
jne 0x18038f897
jmp 0x18038f838
lea rcx, [rsp + 0x2e]
call fcn.180640670
mov eax, dword [0x18078e5b0]
and eax, dword [0x18078e5b4]
xor eax, 0x32ba22a2
mov ecx, 0x8b421aca
xor edx, edx
div ecx
imul eax, eax, 0x29c0d1e9
cmp eax, 0x8b68c98c
jae 0x18038fa21
jmp 0x18038f86f
mov eax, dword [0x18078e5b8]
or eax, dword [0x18078e5bc]
mov ecx, 0xfe628567
xor edx, edx
div ecx
sub eax, 0x25415bfa
xor eax, 0xb6c940d0
cmp eax, 0xd492cbda
je 0x18038f86f
jmp 0x18038f897
mov eax, dword [0x18078e5c0]
sub eax, dword [str.Aes]
add eax, 0x2c490c58
imul eax, eax, 0x70982d06
and eax, 0x3271a059
cmp eax, 0x897c3199
jae 0x18038fa2e
mov eax, dword [0x18078e5c8]
sub eax, dword [0x18078e5cc]
mov ecx, 0x2c8d9d2f
xor edx, edx
div ecx
or eax, 0x42493052
sub eax, 0x2b5c4bc2
cmp eax, 0x2d303d82
ja 0x18038fa2e
test bl, 1
jne 0x18038f95e
jmp 0x18038f8ef
mov eax, dword [str.:hD_f]
xor eax, dword [0x18078e5d4]
mov ecx, 0x44ca13a7
xor edx, edx
div ecx
add eax, 0x4fd9b872
sub eax, 0x1a33e5e5
cmp eax, 0xb32e41a8
je 0x18038fa3b
jmp 0x18038f91b
mov eax, dword [0x18078e5d8]
and eax, dword [0x18078e5dc]
add eax, 0xbacd0af
add eax, 0x479db7b6
imul esi, eax, 0xeef167ab
lea rcx, [rsp + 0x60]
call fcn.180388bf0
mov rax, qword [rsp + 0x30]
mov rcx, qword [r14]
add rax, 0x18
cmp esi, 0x27aa291a
je 0x18038f91b
jmp 0x18038f957
mov rax, qword [rax]
call rax
jmp 0x18038f9b7
mov rcx, rsi
call fcn.180643fa0
mov eax, dword [0x18078e5e0]
sub eax, dword [0x18078e5e4]
add eax, 0xf4d9f7ce
and eax, 0xfb3f7b2e
xor eax, 0x98f183ce
cmp eax, 0x623180fa
ja 0x18038fa52
mov eax, dword [0x18078e5e8]
and eax, dword [0x18078e5ec]
and eax, 0x39847616
xor eax, 0x25390a1
and eax, 0x5e252783
cmp eax, 0xe9a35457
jae 0x18038fa52
jmp 0x18038f70b
and bpl, 1
movzx eax, bpl
add rsp, 0x10f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jne 0x18038fa04
ror dword [rcx - 0x2d], 1
pop rsi
pop rsi
invalid
mov esp, 0x6fc09aa5
invalid
movabs al, byte [0x205c8ef58228565b]
movabs eax, dword [0x412e246488441843]
mov byte [rdi], bh
sbb byte [rax + rcx*4 + 0x64], al
and al, 0x2e
mov byte [r15], dil
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0x40]
call fcn.18038fc20
jmp 0x18038f7e9
movabs al, byte [0xe96471b84db264f3]
invalid
xor dword [rax - 0x12], esi
adc ecx, ebp
sti
movsb byte [rdi], byte [rsi]
mov edx, 0xfffe83e9
inc dword [rcx]
ficomp dword [rdi + 0x4f]
rcr byte [rax - 0x65], 0xf
add edx, ebx
pop rdi
rcr byte [r8 - 0x65], 0xf
lea rcx, [rsp + 0x60]
call fcn.180388bf0
jmp 0x18038f919
lahf
cmc
invalid