Function at 0x140049d90
Capabilities:
Get hostname

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2a8
movaps xmmword [rsp + 0x290], xmm6
mov rax, qword [0x1401f5028]
xor rax, rsp
mov qword [rsp + 0x288], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x48], rax
mov qword [rcx + 0x10], rax
movaps xmm6, xmmword [0x1401c8a80]
movups xmmword [rcx], xmm6
cmp byte [rdx + 0x17], 0
mov qword [rsp + 0x30], rcx
js 0x140049df5
mov rax, qword [rdx + 0x10]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
jmp 0x140049e0e
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, qword [rsp + 0x30]
mov rdx, rax
call fcn.1400da520
mov rcx, qword [rsp + 0x30]
movzx ebp, byte [rcx + 0x17]
test bpl, bpl
mov rcx, qword [rcx + 8]
mov rax, rbp
cmovs rax, rcx
test rax, rax
je 0x14004a494
cmp rax, 1
je 0x140049e9f
test bpl, bpl
mov rbx, qword [rsp + 0x30]
mov rdx, qword [rbx]
cmovs rbx, rdx
movzx edi, word [rbx]
cmp di, 0x27
je 0x140049e57
cmp di, 0x22
jne 0x140049e9f
cmp word [rbx + rax*2 - 2], 0x22
je 0x140049e5f
jmp 0x140049e9f
cmp word [rbx + rax*2 - 2], 0x27
jne 0x140049e9f
test bpl, bpl
mov rbx, qword [rsp + 0x30]
js 0x140049e7a
lea rax, [rbp - 1]
mov byte [rbx + 0x17], al
lea rax, [rbx + rbp*2]
add rax, 0xfffffffffffffffe
jmp 0x140049e8a
lea rax, [rcx - 1]
mov qword [rbx + 8], rax
lea rax, [rdx + rcx*2]
add rax, 0xfffffffffffffffe
mov rcx, rbx
mov word [rax], 0
mov r8d, 1
xor edx, edx
call fcn.1400efd40
lea rcx, str.shell32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rsi, rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x38], rax
test rsi, rsi
je 0x140049ed8
lea rdx, [0x1401d2e6c]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x50], rsi
xor r15d, r15d
lea rax, [rsp + 0x80]
mov qword [rsp + 0x40], rax
mov r13, r15
shl r13, 4
lea rax, str._windows
mov rdi, qword [r13 + rax]
mov rcx, rdi
call fcn.1400f080c
mov rcx, qword [rsp + 0x30]
movzx r11d, byte [rcx + 0x17]
mov r10, rcx
test r11b, r11b
jns 0x140049f1d
mov r10, qword [rcx]
test rax, rax
je 0x140049fc1
test r11b, r11b
jns 0x140049f2f
mov r11, qword [rcx + 8]
cmp r11, rax
jl 0x14004a1ab
movzx ebx, word [rdi]
lea r8, [r10 + r11*2]
add r8, 0xfffffffffffffffe
lea r9, [rax - 1]
mov rdx, r11
mov r14, r10
mov rcx, rdx
sub rcx, rax
inc rcx
je 0x14004a1ab
mov rbp, r9
sub rbp, rdx
xor ecx, ecx
cmp word [r14 + rcx], bx
je 0x140049f79
add rcx, 2
inc rbp
jne 0x140049f64
jmp 0x14004a1ab
mov rdx, r14
add rdx, rcx
je 0x14004a1ab
mov ebp, 1
cmp rax, rbp
je 0x14004a13d
movzx esi, word [rdx + rbp*2]
lea r12, [rbp + 1]
cmp si, word [rdi + rbp*2]
mov rbp, r12
je 0x140049f8a
mov rdx, r8
sub rdx, r14
add r14, rcx
add r14, 2
sub rdx, rcx
sar rdx, 1
cmp rdx, rax
jge 0x140049f4d
jmp 0x14004a1ab
xor r14d, r14d
mov rcx, rdi
call fcn.1400f080c
mov r12, rax
mov r8d, 0x208
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov dl, 0xaa
call fcn.1400f5b50
lea rax, str._windows
mov r8d, dword [r13 + rax + 8]
xor ecx, ecx
mov rdx, rdi
xor r9d, r9d
call qword [rsp + 0x38]
test eax, eax
jne 0x14004a00d
mov word [rsp + 0x80], 0
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x70], rax
movaps xmmword [rsp + 0x60], xmm6
mov rcx, rdi
call fcn.1400f080c
mov rsi, rax
movabs rax, 0x7fffffffffffffef
cmp rsi, rax
lea r13, [rsp + 0x60]
ja 0x14004acd9
cmp rsi, 0xb
jae 0x14004a076
mov byte [rsp + 0x77], sil
cmp rsi, 3
jne 0x14004a1ba
movzx eax, word [rsp + 0x84]
mov word [rsp + 0x64], ax
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x60], eax
mov rbx, r13
jmp 0x14004a0bd
lea rbp, [rsi + 8]
and rbp, 0xfffffffffffffff8
mov rcx, rbp
add rcx, rbp
call fcn.1400f045c
mov rbx, rax
mov qword [rsp + 0x60], rax
movabs rax, 0x7fffffffffffffef
add rax, 0x11
or rax, rbp
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x68], rsi
mov r8, rsi
add r8, rsi
mov rcx, rbx
mov rdx, rdi
call fcn.1400f5740
mov word [rbx + rsi*2], 0
movzx esi, byte [rsp + 0x77]
test sil, sil
mov rdi, qword [rsp + 0x68]
mov rax, rsi
cmovs rax, rdi
test rax, rax
mov rcx, qword [rsp + 0x30]
je 0x14004a174
test sil, sil
mov rdx, qword [rsp + 0x60]
mov rbp, r13
cmovs rbp, rdx
cmp word [rbp + rax*2 - 2], 0x5c
jne 0x14004a174
movzx ebp, byte [rcx + 0x17]
mov rax, rbp
test bpl, bpl
jns 0x14004a10c
mov rax, qword [rcx + 8]
lea rbx, [r12 + r14]
cmp rax, rbx
jbe 0x14004a174
mov rax, rcx
test bpl, bpl
jns 0x14004a120
mov rax, qword [rcx]
cmp word [rax + rbx*2], 0x5c
jne 0x14004a174
test sil, sil
js 0x14004a164
lea rax, [rsi - 1]
mov byte [rsp + 0x77], al
mov word [rsp + rsi*2 + 0x5e], 0
jmp 0x14004a174
lea rax, [r10 + r11*2]
sub rax, r14
cmp rax, rcx
je 0x14004a1ab
sub r14, r10
lea rax, [r14 + rcx]
add rax, 2
test rax, rax
je 0x14004a1ab
add r14, rcx
sar r14, 1
jmp 0x140049fc4
lea rax, [rdi - 1]
mov qword [rsp + 0x68], rax
mov word [rdx + rdi*2 - 2], 0
movzx eax, byte [rsp + 0x77]
test al, al
cmovs rax, qword [rsp + 0x68]
mov r9, qword [rsp + 0x60]
cmovns r9, r13
mov qword [rsp + 0x20], rax
mov rdx, r14
mov r8, r12
call fcn.14003ff60
cmp byte [rsp + 0x77], 0
jns 0x14004a1ab
mov rcx, qword [rsp + 0x60]
call fcn.1400f0498
inc r15
cmp r15, 7
jne 0x140049eed
jmp 0x14004a1cb
mov rbx, r13
test rsi, rsi
je 0x14004a0bd
jmp 0x14004a0ac
lea rcx, str.advapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r15, rax
test rax, rax
je 0x14004a1f5
lea rdx, [0x1401d2f02]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
jmp 0x14004a1ff
movabs r13, 0xaaaaaaaaaaaaaaaa
mov rax, qword [rsp + 0x30]
mov dl, byte [rax + 0x17]
test dl, dl
mov r8, qword [rax]
mov r10, qword [rax + 8]
cmovs rax, r8
movzx r11d, dl
mov rcx, r11
cmovs rcx, r10
cmp rcx, 0xc
jge 0x14004a26c
test dl, dl
cmovns r8, qword [rsp + 0x30]
cmovs r11, r10
cmp r11, 0xf
jge 0x14004a31a
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r12, rax
test rax, rax
je 0x14004a3e6
lea rdx, [0x1401d2f2c]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
jmp 0x14004a3f0
lea rbx, [rcx + rcx]
lea r9, [rax + rcx*2]
add r9, 0xfffffffffffffffe
mov rbp, rax
shr rbx, 1
add rbx, 0xfffffffffffffff5
xor esi, esi
cmp word [rbp + rsi], 0x24
je 0x14004a297
add rsi, 2
dec rbx
jne 0x14004a284
jmp 0x14004a225
mov rdi, rbp
add rdi, rsi
je 0x14004a225
cmp word [rbp + rsi + 2], 0x7b
jne 0x14004a2fb
cmp word [rbp + rsi + 4], 0x75
jne 0x14004a2fb
cmp word [rbp + rsi + 6], 0x73
jne 0x14004a2fb
cmp word [rbp + rsi + 8], 0x65
jne 0x14004a2fb
cmp word [rbp + rsi + 0xa], 0x72
jne 0x14004a2fb
cmp word [rbp + rsi + 0xc], 0x5f
jne 0x14004a2fb
cmp word [rbp + rsi + 0xe], 0x6e
jne 0x14004a2fb
cmp word [rbp + rsi + 0x10], 0x61
jne 0x14004a2fb
cmp word [rbp + rsi + 0x12], 0x6d
jne 0x14004a2fb
cmp word [rbp + rsi + 0x14], 0x65
jne 0x14004a2fb
cmp word [rbp + rsi + 0x16], 0x7d
je 0x14004a656
mov rbx, r9
sub rbx, rbp
add rbp, rsi
add rbp, 2
sub rbx, rsi
cmp rbx, 0x18
jge 0x14004a27b
jmp 0x14004a225
lea rcx, [r11 + r11]
lea rdx, [r8 + r11*2]
add rdx, 0xfffffffffffffffe
mov rdi, r8
shr rcx, 1
add rcx, 0xfffffffffffffff2
xor ebx, ebx
cmp word [rdi + rbx], 0x24
je 0x14004a347
add rbx, 2
dec rcx
jne 0x14004a332
jmp 0x14004a23b
mov rax, rdi
add rax, rbx
je 0x14004a23b
cmp word [rdi + rbx + 2], 0x7b
jne 0x14004a3c7
cmp word [rdi + rbx + 4], 0x6d
jne 0x14004a3c7
cmp word [rdi + rbx + 6], 0x61
jne 0x14004a3c7
cmp word [rdi + rbx + 8], 0x63
jne 0x14004a3c7
cmp word [rdi + rbx + 0xa], 0x68
jne 0x14004a3c7
cmp word [rdi + rbx + 0xc], 0x69
jne 0x14004a3c7
cmp word [rdi + rbx + 0xe], 0x6e
jne 0x14004a3c7
cmp word [rdi + rbx + 0x10], 0x65
jne 0x14004a3c7
cmp word [rdi + rbx + 0x12], 0x5f
jne 0x14004a3c7
cmp word [rdi + rbx + 0x14], 0x6e
jne 0x14004a3c7
cmp word [rdi + rbx + 0x16], 0x61
jne 0x14004a3c7
cmp word [rdi + rbx + 0x18], 0x6d
jne 0x14004a3c7
cmp word [rdi + rbx + 0x1a], 0x65
jne 0x14004a3c7
cmp word [rdi + rbx + 0x1c], 0x7d
je 0x14004a8d0
mov rcx, rdx
sub rcx, rdi
add rdi, rbx
add rdi, 2
sub rcx, rbx
cmp rcx, 0x1e
jge 0x14004a329
jmp 0x14004a23b
movabs r14, 0xaaaaaaaaaaaaaaaa
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r13, rax
test rax, rax
je 0x14004a41a
lea rdx, [0x1401d2f64]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x30]
mov dl, byte [rax + 0x17]
test dl, dl
mov r8, qword [rax]
mov r10, qword [rax + 8]
cmovs rax, r8
movzx r11d, dl
mov rcx, r11
cmovs rcx, r10
cmp rcx, 0xe
jge 0x14004a4c5
test dl, dl
cmovns r8, qword [rsp + 0x30]
cmovs r11, r10
cmp r11, 0xf
jge 0x14004a589
test r13, r13
je 0x14004a468
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r12, r12
je 0x14004a476
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r15, r15
je 0x14004a484
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14004a494
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, qword [rsp + 0x288]
xor rcx, rsp
call fcn.1400f32c0
mov rax, qword [rsp + 0x30]
movaps xmm6, xmmword [rsp + 0x290]
add rsp, 0x2a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rsi, [rcx + rcx]
lea r9, [rax + rcx*2]
add r9, 0xfffffffffffffffe
mov rbx, rax
shr rsi, 1
add rsi, 0xfffffffffffffff3
xor edi, edi
cmp word [rbx + rdi], 0x24
je 0x14004a4f2
add rdi, 2
dec rsi
jne 0x14004a4dd
jmp 0x14004a444
mov rbp, rbx
add rbp, rdi
je 0x14004a444
cmp word [rbx + rdi + 2], 0x7b
jne 0x14004a56a
cmp word [rbx + rdi + 4], 0x63
jne 0x14004a56a
cmp word [rbx + rdi + 6], 0x6c
jne 0x14004a56a
cmp word [rbx + rdi + 8], 0x69
jne 0x14004a56a
cmp word [rbx + rdi + 0xa], 0x65
jne 0x14004a56a
cmp word [rbx + rdi + 0xc], 0x6e
jne 0x14004a56a
cmp word [rbx + rdi + 0xe], 0x74
jne 0x14004a56a
cmp word [rbx + rdi + 0x10], 0x5f
jne 0x14004a56a
cmp word [rbx + rdi + 0x12], 0x6e
jne 0x14004a56a
cmp word [rbx + rdi + 0x14], 0x61
jne 0x14004a56a
cmp word [rbx + rdi + 0x16], 0x6d
jne 0x14004a56a
cmp word [rbx + rdi + 0x18], 0x65
jne 0x14004a56a
cmp word [rbx + rdi + 0x1a], 0x7d
je 0x14004a725
mov rsi, r9
sub rsi, rbx
add rbx, rdi
add rbx, 2
sub rsi, rdi
cmp rsi, 0x1c
jge 0x14004a4d4
jmp 0x14004a444
lea rdx, [r11 + r11]
lea rcx, [r8 + r11*2]
add rcx, 0xfffffffffffffffe
mov rbp, r8
shr rdx, 1
add rdx, 0xfffffffffffffff2
xor esi, esi
cmp word [rbp + rsi], 0x24
je 0x14004a5b7
add rsi, 2
dec rdx
jne 0x14004a5a1
jmp 0x14004a45a
mov rax, rbp
add rax, rsi
je 0x14004a45a
cmp word [rbp + rsi + 2], 0x7b
jne 0x14004a637
cmp word [rbp + rsi + 4], 0x73
jne 0x14004a637
cmp word [rbp + rsi + 6], 0x65
jne 0x14004a637
cmp word [rbp + rsi + 8], 0x73
jne 0x14004a637
cmp word [rbp + rsi + 0xa], 0x73
jne 0x14004a637
cmp word [rbp + rsi + 0xc], 0x69
jne 0x14004a637
cmp word [rbp + rsi + 0xe], 0x6f
jne 0x14004a637
cmp word [rbp + rsi + 0x10], 0x6e
jne 0x14004a637
cmp word [rbp + rsi + 0x12], 0x5f
jne 0x14004a637
cmp word [rbp + rsi + 0x14], 0x6e
jne 0x14004a637
cmp word [rbp + rsi + 0x16], 0x61
jne 0x14004a637
cmp word [rbp + rsi + 0x18], 0x6d
jne 0x14004a637
cmp word [rbp + rsi + 0x1a], 0x65
jne 0x14004a637
cmp word [rbp + rsi + 0x1c], 0x7d
je 0x14004a9af
mov rdx, rcx
sub rdx, rbp
add rbp, rsi
add rbp, 2
sub rdx, rsi
cmp rdx, 0x1e
jge 0x14004a598
jmp 0x14004a45a
lea rcx, [rax + rcx*2]
sub rcx, rbp
cmp rcx, rsi
je 0x14004a225
sub rbp, rax
lea rax, [rsi + rbp]
add rax, 2
test rax, rax
je 0x14004a225
lea rbx, [rsp + 0x60]
mov dword [rbx], 0
xor ecx, ecx
mov rdx, rbx
call r13
mov ecx, dword [rbx]
test rcx, rcx
je 0x14004a8b8
add rcx, rcx
call fcn.1400f04c8
mov r14, rax
lea rdx, [rsp + 0x60]
mov rcx, rax
call r13
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movaps xmmword [rsp + 0x80], xmm6
mov rcx, r14
call fcn.1400f080c
mov rdi, rax
movabs rax, 0x7fffffffffffffef
cmp rdi, rax
ja 0x14004acf4
add rbp, rsi
cmp rdi, 0xb
jae 0x14004a806
mov byte [rsp + 0x97], dil
cmp rdi, 3
jne 0x14004acb6
lea rsi, [rsp + 0x80]
movzx eax, word [r14 + 4]
mov word [rsi + 4], ax
mov eax, dword [r14]
mov dword [rsi], eax
mov qword [rsp + 0x40], rsi
jmp 0x14004a854
lea rcx, [rax + rcx*2]
sub rcx, rbx
cmp rcx, rdi
je 0x14004a444
sub rbx, rax
lea rax, [rbx + rdi]
add rax, 2
test rax, rax
je 0x14004a444
lea r9, [rsp + 0x60]
mov qword [r9], 0
lea rax, [rsp + 0x5c]
mov dword [rax], 0
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov edx, 0xffffffff
mov r8d, 0xa
call r14
test eax, eax
je 0x14004ab3f
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movaps xmmword [rsp + 0x80], xmm6
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x40], rcx
call fcn.1400f080c
mov rbp, rax
movabs rax, 0x7fffffffffffffef
cmp rbp, rax
ja 0x14004acf4
add rbx, rdi
cmp rbp, 0xb
jae 0x14004aa8d
mov byte [rsp + 0x97], bpl
lea rsi, [rsp + 0x80]
test rbp, rbp
je 0x14004a7f9
cmp rbp, 3
jne 0x14004ad01
mov rcx, qword [rsp + 0x40]
movzx eax, word [rcx + 4]
mov word [rsi + 4], ax
mov eax, dword [rcx]
mov dword [rsi], eax
mov rdi, rsi
mov qword [rsp + 0x38], rsi
jmp 0x14004aae0
lea rbx, [rdi + 8]
and rbx, 0xfffffffffffffff8
lea rcx, [rbx + rbx]
call fcn.1400f045c
mov rsi, rax
mov qword [rsp + 0x80], rax
movabs rax, 0x7fffffffffffffef
add rax, 0x11
or rax, rbx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x88], rdi
mov r8, rdi
add r8, rdi
mov rcx, rsi
mov rdx, r14
call fcn.1400f5740
sar rbp, 1
mov word [rsi + rdi*2], 0
mov r9, qword [rsp + 0x40]
movzx eax, byte [r9 + 0x17]
test al, al
jns 0x14004a87b
mov rax, qword [rsp + 0x88]
mov r9, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r8d, 0xc
mov rcx, qword [rsp + 0x30]
mov rdx, rbp
call fcn.14003ff60
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x17], 0
jns 0x14004a8ab
mov rcx, qword [rsp + 0x80]
call fcn.1400f0498
test r14, r14
je 0x14004a8b8
mov rcx, r14
call fcn.1400f04a0
mov rax, qword [rsp + 0x30]
mov dl, byte [rax + 0x17]
mov r8, qword [rax]
mov r10, qword [rax + 8]
movzx r11d, dl
jmp 0x14004a225
lea rax, [r8 + r11*2]
sub rax, rdi
cmp rax, rbx
je 0x14004a23b
sub rdi, r8
lea rax, [rdi + rbx]
add rax, 2
test rax, rax
je 0x14004a23b
lea rsi, [rsp + 0x60]
mov dword [rsi], 0
mov ecx, 5
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_GetComputerNameExW]
mov ecx, dword [rsi]
test rcx, rcx
je 0x14004a23b
add rcx, rcx
call fcn.1400f04c8
mov r12, rax
lea r8, [rsp + 0x60]
mov ecx, 5
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetComputerNameExW]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movaps xmmword [rsp + 0x80], xmm6
mov rcx, r12
call fcn.1400f080c
mov rbp, rax
movabs rax, 0x7fffffffffffffef
cmp rbp, rax
ja 0x14004acf4
add rdi, rbx
cmp rbp, 0xb
jae 0x14004ab57
mov byte [rsp + 0x97], bpl
lea rbx, [rsp + 0x80]
cmp rbp, 3
jne 0x14004ace3
movzx eax, word [r12 + 4]
mov word [rbx + 4], ax
mov eax, dword [r12]
mov dword [rbx], eax
mov r14, rbx
jmp 0x14004aba0
lea rax, [r8 + r11*2]
sub rax, rbp
cmp rax, rsi
je 0x14004a45a
sub rbp, r8
lea rax, [rsi + rbp]
add rax, 2
test rax, rax
je 0x14004a45a
lea r9, [rsp + 0x60]
mov qword [r9], 0
lea rax, [rsp + 0x5c]
mov dword [rax], 0
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov edx, 0xffffffff
mov r8d, 6
call r14
test eax, eax
je 0x14004a45a
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movaps xmmword [rsp + 0x80], xmm6
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x38], rcx
call fcn.1400f080c
mov rbx, rax
movabs rax, 0x7fffffffffffffef
cmp rbx, rax
ja 0x14004acf4
add rbp, rsi
cmp rbx, 0xb
jae 0x14004ac06
mov byte [rsp + 0x97], bl
lea rdi, [rsp + 0x80]
test rbx, rbx
je 0x14004aa82
cmp rbx, 3
jne 0x14004ad0e
mov rcx, qword [rsp + 0x38]
movzx eax, word [rcx + 4]
mov word [rdi + 4], ax
mov eax, dword [rcx]
mov dword [rdi], eax
mov rsi, rdi
mov r14, rdi
jmp 0x14004ac54
lea rdi, [rbp + 8]
and rdi, 0xfffffffffffffff8
lea rcx, [rdi + rdi]
call fcn.1400f045c
mov rsi, rax
lea rcx, [rsp + 0x80]
mov qword [rcx], rax
movabs rax, 0x7fffffffffffffef
add rax, 0x11
or rax, rdi
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], rbp
mov qword [rsp + 0x38], rcx
mov rdi, rcx
mov r8, rbp
add r8, rbp
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
call fcn.1400f5740
sar rbx, 1
mov word [rsi + rbp*2], 0
movzx eax, byte [rdi + 0x17]
test al, al
jns 0x14004ab06
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x20], rax
mov r8d, 0xe
mov rcx, qword [rsp + 0x30]
mov rdx, rbx
mov r9, qword [rsp + 0x38]
call fcn.14003ff60
mov rcx, qword [rsp + 0x60]
call qword [rsp + 0x48]
cmp byte [rdi + 0x17], 0
jns 0x14004ab3f
mov rcx, qword [rsp + 0x80]
call fcn.1400f0498
mov rax, qword [rsp + 0x30]
mov dl, byte [rax + 0x17]
mov r8, qword [rax]
mov r10, qword [rax + 8]
movzx r11d, dl
jmp 0x14004a444
lea rsi, [rbp + 8]
and rsi, 0xfffffffffffffff8
lea rcx, [rsi + rsi]
call fcn.1400f045c
mov r14, rax
lea rbx, [rsp + 0x80]
mov qword [rbx], rax
movabs rax, 0x7fffffffffffffef
add rax, 0x11
or rax, rsi
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], rbp
mov r8, rbp
add r8, rbp
mov rcx, r14
mov rdx, r12
call fcn.1400f5740
sar rdi, 1
mov word [r14 + rbp*2], 0
movzx eax, byte [rbx + 0x17]
mov r9, rbx
test al, al
jns 0x14004abc5
mov rax, qword [rsp + 0x88]
mov r9, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, qword [rsp + 0x30]
mov rdx, rdi
call fcn.14003ff60
cmp byte [rbx + 0x17], 0
jns 0x14004abf0
mov rcx, qword [rsp + 0x80]
call fcn.1400f0498
test r12, r12
je 0x14004a23b
mov rcx, r12
call fcn.1400f04a0
jmp 0x14004a23b
lea rsi, [rbx + 8]
and rsi, 0xfffffffffffffff8
lea rcx, [rsi + rsi]
call fcn.1400f045c
lea rdi, [rsp + 0x80]
mov r14, rax
mov qword [rdi], rax
movabs rax, 0x7fffffffffffffef
add rax, 0x11
or rax, rsi
mov qword [rdi + 0x10], rax
mov qword [rdi + 8], rbx
mov rsi, rdi
mov r8, rbx
add r8, rbx
mov rcx, r14
mov rdx, qword [rsp + 0x38]
call fcn.1400f5740
sar rbp, 1
mov word [r14 + rbx*2], 0
movzx eax, byte [rsi + 0x17]
test al, al
jns 0x14004ac76
mov rax, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, qword [rsp + 0x30]
mov rdx, rbp
mov r9, rdi
call fcn.14003ff60
mov rcx, qword [rsp + 0x60]
call qword [rsp + 0x48]
cmp byte [rsi + 0x17], 0
jns 0x14004a45a
mov rcx, qword [rsp + 0x80]
call fcn.1400f0498
jmp 0x14004a45a
lea rax, [rsp + 0x80]
mov qword [rsp + 0x40], rax
lea rsi, [rsp + 0x80]
test rdi, rdi
je 0x14004a854
jmp 0x14004a843
lea rcx, [rsp + 0x60]
call fcn.140126160
test rbp, rbp
je 0x14004a9a7
mov r14, rbx
jmp 0x14004ab8f
lea rcx, [rsp + 0x80]
call fcn.140126160
mov rdi, rsi
mov qword [rsp + 0x38], rsi
jmp 0x14004aacd
mov rsi, rdi
mov r14, rdi
jmp 0x14004ac41