Function at 0x1400f9d60
Capabilities:
Get session user name

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd20
mov qword [rsp + 0x100], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402e0068]
xor rax, rsp
mov qword [rsp + 0xd10], rax
mov rbx, rcx
mov qword [rsp + 0xc0], rcx
mov ecx, 0x18
call fcn.1401e65ec
mov qword [rsp + 0xc8], rax
test rax, rax
je 0x1400f9ded
mov rcx, qword [rbx + 0x250]
xor r14d, r14d
test rcx, rcx
je 0x1400f9dd8
cmp qword [rcx], r14
je 0x1400f9dd8
mov rdx, qword [rcx]
jmp 0x1400f9ddb
mov rdx, r14
mov rcx, rax
call fcn.140019140
mov rbp, rax
mov qword [rsp + 0x40], rax
jmp 0x1400f9df8
xor r14d, r14d
mov rbp, r14
mov qword [rsp + 0x40], r14
test rbp, rbp
jne 0x1400f9e04
xor eax, eax
jmp 0x1400fb298
mov esi, r14d
cmp dword [rbx + 0xb8], 0x8f
setne sil
lea rcx, [rsp + 0x70]
call fcn.1400e7a60
nop
mov byte [rsp + 0x910], 0
xor edx, edx
mov r8d, 0x3ff
lea rcx, [rsp + 0x911]
call fcn.1401e6750
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400f9e85
lea rdx, str.app_key
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f9e85
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov r12, qword [rax + rcx*8 + 8]
mov qword [rsp + 0x60], r12
test r12, r12
jne 0x1400f9e8d
mov r12, r14
mov qword [rsp + 0x60], r14
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400f9f2e
lea rdx, str.tray
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f9f2e
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f9f2e
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f9ef2
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
mov r15d, eax
mov dword [rsp + 0x30], eax
jmp 0x1400f9f36
cmp al, 0x30
jne 0x1400f9f1a
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f9f02
cmp al, 0x58
jne 0x1400f9f1a
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
mov r15d, eax
mov dword [rsp + 0x30], eax
jmp 0x1400f9f36
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
mov r15d, eax
mov dword [rsp + 0x30], eax
jmp 0x1400f9f36
mov r15d, r14d
mov dword [rsp + 0x30], r14d
test r12, r12
je 0x1400f9f45
mov eax, 3
jmp 0x1400f9fd0
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400f9fcd
lea rdx, [0x14023dc60]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f9fcd
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f9fcd
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f9f9f
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f9fd0
cmp al, 0x30
jne 0x1400f9fc0
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f9faf
cmp al, 0x58
jne 0x1400f9fc0
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f9fd0
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f9fd0
mov eax, r14d
mov dword [rsp + 0x34], eax
test r12, r12
jne 0x1400f9fe4
test eax, eax
je 0x1400f9fe4
lea r13d, [r12 + 1]
jmp 0x1400f9fe7
mov r13d, r14d
movsxd rax, esi
mov qword [rsp + 0xc8], rax
mov esi, 0x7c
jmp 0x1400fa01a
mov esi, 0x7c
jmp 0x1400fa01a
mov esi, 0x7c
jmp 0x1400fa01a
mov esi, 0x7c
jmp 0x1400fa01a
mov esi, 0x7c
lea r8, [rsp + 0x34]
mov edx, 0x400
lea rcx, [rsp + 0x910]
call fcn.14000ac90
test r13d, r13d
je 0x1400fa05b
mov r13d, r14d
mov r8d, dword [rsp + 0x34]
lea rdx, [rsp + 0x910]
lea rcx, [rsp + 0x70]
call fcn.1400eba40
test eax, eax
jne 0x1400fa05b
mov dword [rsp + 0x34], r14d
jmp 0x1400fa01a
mov dword [rsp + 0x38], r14d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fa1ff
lea rdx, [0x14023e930]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fa1ff
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400fa1ff
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400fa0c6
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fa0f2
cmp al, 0x30
jne 0x1400fa0e7
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400fa0d6
cmp al, 0x58
jne 0x1400fa0e7
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fa0f2
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
cmp eax, 1
jne 0x1400fa1ff
mov word [rsp + 0x810], si
xor edx, edx
mov r8d, 0xfe
lea rcx, [rsp + 0x812]
call fcn.1401e6750
mov dword [rsp + 0x48], 0x7f
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x812]
call qword [sym.imp.ADVAPI32.dll_GetUserNameW]
test eax, eax
je 0x1400fa1ff
lea rsi, [rsp + 0x812]
lea rdi, [0x1402a15e8]
mov ecx, 7
repe cmpsw word [rsi], word [rdi]
je 0x1400fa1ff
lea rcx, [rsp + 0x810]
call fcn.140001a20
mov rsi, rax
lea rdi, [rsp + 0x910]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
xor edx, edx
nop word [rax + rax]
movzx ecx, byte [rsi + rdx]
mov byte [rdi + rdx - 1], cl
inc rdx
test cl, cl
jne 0x1400fa180
test rsi, rsi
je 0x1400fa19c
mov rcx, rsi
call fcn.1401e64f8
mov byte [rsp + 0x800], 0x7c
xor eax, eax
mov qword [rsp + 0x801], rax
mov dword [rsp + 0x809], eax
mov word [rsp + 0x80d], ax
mov byte [rsp + 0x80f], al
lea rcx, [rsp + 0x801]
call fcn.1400e9f20
lea rdi, [rsp + 0x910]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x800]
xor ecx, ecx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x1400fa1f0
cmp dword [reloc.WS2_32.dll_accept], 1
jg 0x1400fa233
lea rax, [rsp + 0x919]
mov qword [rsp + 0x20], rax
lea r9, [0x1402a9de0]
mov r8d, 0x5c9
lea rdx, str..MainDlg.cpp
mov ecx, 1
call fcn.1400045f0
mov byte [rbx + 0x22a], 0
test r12, r12
je 0x1400fa4ad
mov ebp, r14d
mov ecx, 0x18
call fcn.1401e65ec
mov rdi, rax
test rax, rax
je 0x1400fa27f
mov qword [rax], r14
mov dword [rax + 8], 0x100
mov dword [rax + 0xc], r14d
mov dword [rax + 0x10], 1
mov ecx, 0x100
call fcn.1401e6440
mov qword [rdi], rax
mov byte [rax], 0
jmp 0x1400fa282
mov rdi, r14
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x130], r14
mov byte [rsp + 0x138], 0
mov qword [rsp + 0x20], r14
mov r9d, 0x200
lea r8, [rsp + 0x138]
xor edx, edx
lea rcx, [rsp + 0x910]
call fcn.140003b10
mov rdi, rax
mov eax, r14d
test edi, edi
jle 0x1400fa2f9
lea rcx, [rsp + 0x138]
mov dl, byte [rcx]
cmp dl, 0x2b
je 0x1400fa2ed
cmp dl, 0x2f
je 0x1400fa2e8
cmp dl, 0x3d
jne 0x1400fa2f0
mov byte [rcx], 0
mov edi, eax
jmp 0x1400fa2f0
mov byte [rcx], 0x5f
jmp 0x1400fa2f0
mov byte [rcx], 0x2d
inc eax
inc rcx
cmp eax, edi
jl 0x1400fa2d0
lea rax, [rsp + 0x138]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8, r12
lea rdx, str._custom_appkey_verify.12x_key_stray_dsn_s
lea rcx, [rsp + 0x58]
call fcn.14006e830
lea r12, [rbx - 0x90]
xor r8d, r8d
mov edx, 0xb9
mov rcx, r12
call fcn.1400f13c0
mov rsi, qword [rsp + 0x58]
mov r13, qword [rsp + 0x40]
nop
or ebx, 0xffffffff
test rsi, rsi
je 0x1400fa350
mov rdx, qword [rsi]
test rdx, rdx
jne 0x1400fa353
mov rdx, r14
mov rcx, r13
call fcn.1400192b0
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x48]
call fcn.1400ed4b0
test eax, eax
je 0x1400fa3fe
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400fa386
mov rax, qword [rcx]
call qword [rax]
mov rdi, qword [rsp + 0x50]
test rdi, rdi
je 0x1400fa398
mov rdx, qword [rdi]
test rdx, rdx
jne 0x1400fa39b
mov rdx, r14
lea rcx, [rsp + 0x108]
call fcn.140004d00
nop
mov r8d, 0xfffffffe
lea rdx, [0x14023e8fc]
lea rcx, [rsp + 0x108]
call fcn.140004ec0
mov ebx, eax
test eax, eax
je 0x1400fa43e
cmp eax, 0xffffffff
jne 0x1400fa3d6
add ebp, 0x3e8
jmp 0x1400fa3ef
xor r8d, r8d
lea rdx, str.delay
lea rcx, [rsp + 0x108]
call fcn.140004ec0
mov ebp, eax
lea rcx, [rsp + 0x108]
call fcn.140004d80
jmp 0x1400fa413
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400fa40d
mov rax, qword [rcx]
call qword [rax]
add ebp, 0x3e8
mov r8d, ebx
mov edx, 0xb8
mov rcx, r12
call fcn.1400f13c0
mov eax, 0xea60
cmp ebp, eax
cmova ebp, eax
lea ecx, [rbp + 0x2710]
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400fa340
lea rcx, [rsp + 0x108]
call fcn.140004d80
mov rbx, qword [rsp + 0xc0]
mov byte [rbx + 0x22a], 1
test rdi, rdi
je 0x1400fa47e
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400fa47e
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400fa475
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
je 0x1400fa4b9
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400fa4c5
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fa499
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
mov rbp, qword [rsp + 0x40]
mov r12, qword [rsp + 0x60]
jmp 0x1400fa4cf
cmp r15d, 2
je 0x1400fb19a
jmp 0x1400fa4cf
mov rbp, qword [rsp + 0x40]
mov r12, qword [rsp + 0x60]
jmp 0x1400fa4cf
mov rbp, qword [rsp + 0x40]
mov r12, qword [rsp + 0x60]
lea rsi, [rbx + 0xf0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x910]
lea rcx, [rsp + 0xd0]
call fcn.1400f0260
nop
lea rcx, [rbx + 0xd0]
mov rdx, rax
call fcn.140009930
nop
mov rdi, qword [rsp + 0xd0]
test rdi, rdi
je 0x1400fa530
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400fa530
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400fa528
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor r8d, r8d
lea edx, [r8 + 2]
lea ecx, [rdx + 4]
call fcn.14001df20
movzx esi, al
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fa5d3
lea rdx, [0x14023e8f0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fa5d3
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400fa5d3
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400fa5a5
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fa5dc
cmp al, 0x30
jne 0x1400fa5c6
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400fa5b5
cmp al, 0x58
jne 0x1400fa5c6
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fa5dc
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400fa5dc
mov eax, r14d
test sil, sil
sete al
mov dword [0x1402e49d4], eax
test eax, eax
je 0x1400fa60d
cmp dword [reloc.WS2_32.dll_accept], 2
jg 0x1400fa60d
lea r9, str.Screen_Dx_is_disabled_
mov r8d, 0x5f9
lea rdx, str..MainDlg.cpp
mov ecx, 2
call fcn.1400045f0
cmp qword [rsp + 0xc8], 0
je 0x1400fa65f
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fa65f
lea rdx, str.name
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fa65f
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rsi, qword [rax + rcx*8 + 8]
test rsi, rsi
jne 0x1400fad15
lea r15, [rbx - 0x90]
xor r8d, r8d
mov edx, 0x81
mov rcx, r15
call fcn.1400f13c0
mov ecx, 0x18
call fcn.1401e65ec
mov rsi, rax
test rax, rax
je 0x1400fa6af
mov qword [rax], r14
mov dword [rax + 8], 0x100
mov dword [rax + 0xc], r14d
mov dword [rax + 0x10], 1
mov ecx, 0x100
call fcn.1401e6440
mov qword [rsi], rax
mov byte [rax], 0
jmp 0x1400fa6b2
mov rsi, r14
mov qword [rsp + 0x48], rsi
test rsi, rsi
je 0x1400fa713
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, str._reg.12x_c1sn
repne scasb al, byte [rdi]
not rcx
movsxd rdi, ecx
cmp dword [rsi + 8], ecx
jge 0x1400fa6fc
movsxd rcx, ecx
call fcn.1401e6440
mov rbx, rax
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fa6ee
call fcn.1401e64f8
mov qword [rsi], rbx
mov dword [rsi + 8], edi
mov rbx, qword [rsp + 0xc0]
mov r8, rdi
lea rdx, str._reg.12x_c1sn
mov rcx, qword [rsi]
call fcn.1401e75a0
mov dword [rsi + 0xc], edi
jmp 0x1400fa767
mov ecx, 0x18
call fcn.1401e65ec
mov rsi, rax
test rax, rax
je 0x1400fa75f
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, str._reg.12x_c1sn
repne scasb al, byte [rdi]
not rcx
mov r9d, ecx
mov qword [rsi], r14
mov dword [rsi + 8], r14d
mov dword [rsi + 0xc], r14d
mov dword [rsi + 0x10], 1
lea r8, str._reg.12x_c1sn
xor edx, edx
mov rcx, rsi
call fcn.140003800
jmp 0x1400fa762
mov rsi, r14
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x130], r14
mov byte [rsp + 0x138], 0
mov qword [rsp + 0x20], r14
mov r9d, 0x200
lea r8, [rsp + 0x138]
xor edx, edx
lea rcx, [rsp + 0x910]
call fcn.140003b10
mov rdi, rax
mov eax, r14d
test edi, edi
jle 0x1400fa7d9
lea rcx, [rsp + 0x138]
nop dword [rax + rax]
mov dl, byte [rcx]
cmp dl, 0x2b
je 0x1400fa7cd
cmp dl, 0x2f
je 0x1400fa7c8
cmp dl, 0x3d
jne 0x1400fa7d0
mov byte [rcx], 0
mov edi, eax
jmp 0x1400fa7d0
mov byte [rcx], 0x5f
jmp 0x1400fa7d0
mov byte [rcx], 0x2d
inc eax
inc rcx
cmp eax, edi
jl 0x1400fa7b0
lea rdx, [rsp + 0x138]
lea rcx, [rsp + 0x48]
call fcn.140003570
mov ecx, 0x18
call fcn.1401e65ec
mov rdi, rax
test rax, rax
je 0x1400fa824
mov qword [rax], r14
mov dword [rax + 8], 0x100
mov dword [rax + 0xc], r14d
mov dword [rax + 0x10], 1
mov ecx, 0x100
call fcn.1401e6440
mov qword [rdi], rax
mov byte [rax], 0
jmp 0x1400fa827
mov rdi, r14
mov qword [rsp + 0x58], rdi
mov rsi, qword [rsp + 0x48]
test rsi, rsi
je 0x1400fa83e
mov rdx, qword [rsi]
test rdx, rdx
jne 0x1400fa841
mov rdx, r14
mov rcx, rbp
call fcn.1400192b0
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x50]
call fcn.1400ed4b0
mov rdi, qword [rsp + 0x58]
test eax, eax
je 0x1400fab52
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400fa879
mov rax, qword [rcx]
call qword [rax]
test rdi, rdi
je 0x1400fa886
mov rdx, qword [rdi]
test rdx, rdx
jne 0x1400fa889
mov rdx, r14
lea rcx, [rsp + 0xd8]
call fcn.140004d00
nop
xor r8d, r8d
lea rdx, str.invalid
lea rcx, [rsp + 0xd8]
call fcn.140004ec0
mov ecx, dword [rsp + 0x34]
cmp eax, 1
jne 0x1400fa8c8
test al, cl
je 0x1400fac9d
test cl, 2
je 0x1400fac25
test r12, r12
jne 0x1400fa8e6
test ecx, ecx
je 0x1400fa8e6
mov r8d, ecx
lea rdx, [rsp + 0x910]
lea rcx, [rsp + 0x70]
call fcn.1400eb930
xor r8d, r8d
lea rdx, [0x14023e8b0]
lea rcx, [rsp + 0xd8]
call fcn.140004e60
mov r13, rax
test rax, rax
je 0x1400fab43
cmp byte [rax], 0
je 0x1400fab43
lea r12, [rbx + 0x250]
mov rcx, qword [r12]
test rcx, rcx
je 0x1400fab16
mov rdx, qword [rcx]
test rdx, rdx
je 0x1400fab16
cmp byte [rdx], 0x48
sete al
test al, al
je 0x1400fab16
mov edx, 0x50
lea rcx, [rsp + 0x340]
call fcn.140008ec0
nop
mov rax, qword [r12]
test rax, rax
je 0x1400fa967
cmp qword [rax], 0
je 0x1400fa967
mov rbx, qword [rax]
jmp 0x1400fa96a
mov rbx, r14
lea rdx, str.server
lea rcx, [rsp + 0xd8]
call fcn.1400051a0
mov rdx, rax
mov r8, rbx
lea rcx, [rsp + 0x340]
call fcn.1400095e0
mov rbx, rax
test rax, rax
je 0x1400fab01
mov rcx, qword [r12]
test rcx, rcx
je 0x1400fa9b1
cmp qword [rcx], 0
je 0x1400fa9b1
mov rax, qword [rcx]
jmp 0x1400fa9b4
mov rax, r14
cmp rax, rbx
je 0x1400fab01
lea rdx, str.https:__
mov rcx, r12
call fcn.1400042e0
mov rdx, rbx
mov rcx, r12
call fcn.140003570
mov rax, qword [r12]
test rax, rax
je 0x1400faaa0
cmp qword [rax], 0
je 0x1400faaa0
mov rbp, qword [rax]
test rbp, rbp
je 0x1400faa9b
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400faa3d
lea rdx, str.host
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400faa3d
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov r8, qword [rax + rcx*8 + 8]
test r8, r8
jne 0x1400faa44
lea r8, [0x14028e586]
mov rax, rbp
sub r8, rbp
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400faa63
inc rax
test ecx, ecx
jne 0x1400faa50
test edx, edx
je 0x1400faa94
mov dword [rsp + 0xb4], 1
mov r9, rbp
lea r8, str.host
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.1400029b0
mov rbp, qword [rsp + 0x40]
jmp 0x1400faaa0
mov rbp, qword [rsp + 0x40]
jmp 0x1400faaa0
mov rbp, qword [rsp + 0x40]
test rbp, rbp
je 0x1400faab3
mov rax, qword [rbp]
mov edx, 1
mov rcx, rbp
call qword [rax]
mov ecx, 0x18
call fcn.1401e65ec
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400faaf0
mov rcx, qword [r12]
test rcx, rcx
je 0x1400faadb
cmp qword [rcx], 0
je 0x1400faadb
mov rdx, qword [rcx]
jmp 0x1400faade
mov rdx, r14
mov rcx, rax
call fcn.140019140
mov rbp, rax
mov qword [rsp + 0x40], rax
jmp 0x1400faaf8
mov rbp, r14
mov qword [rsp + 0x40], r14
test rbp, rbp
je 0x1400fad57
lea rcx, [rsp + 0x340]
call fcn.140009130
mov rbx, qword [rsp + 0xc0]
lea rax, [rsp + 0x910]
mov qword [rsp + 0x20], rax
mov r9, r13
lea r8, [rsp + 0x70]
mov rdx, rbp
mov rcx, r15
call fcn.1400f18e0
test eax, eax
je 0x1400faebe
mov r12, qword [rsp + 0x60]
lea rcx, [rsp + 0xd8]
call fcn.140004d80
jmp 0x1400fabc5
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400fab61
mov rax, qword [rcx]
call qword [rax]
test rbp, rbp
je 0x1400fab74
mov rax, qword [rbp]
mov edx, 1
mov rcx, rbp
call qword [rax]
mov ecx, 0x18
call fcn.1401e65ec
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400fabb4
mov rcx, qword [rbx + 0x250]
test rcx, rcx
je 0x1400fab9f
cmp qword [rcx], 0
je 0x1400fab9f
mov rdx, qword [rcx]
jmp 0x1400faba2
mov rdx, r14
mov rcx, rax
call fcn.140019140
mov rbp, rax
mov qword [rsp + 0x40], rax
jmp 0x1400fabbc
mov rbp, r14
mov qword [rsp + 0x40], r14
test rbp, rbp
je 0x1400fb04a
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
test rdi, rdi
je 0x1400fabf5
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400fabf5
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400fabec
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
je 0x1400fa676
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400fa676
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fac18
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
jmp 0x1400fa676
or ecx, 2
mov dword [rsp + 0x34], ecx
lea rcx, [rsp + 0xd8]
call fcn.140004d80
nop
test rdi, rdi
je 0x1400fac5e
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400fac5e
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400fac55
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
mov r13d, dword [rsp + 0x38]
mov r15d, dword [rsp + 0x30]
je 0x1400fa000
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400fa007
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fac8b
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
mov esi, 0x7c
jmp 0x1400fa01a
or ecx, 1
mov dword [rsp + 0x34], ecx
lea rcx, [rsp + 0xd8]
call fcn.140004d80
nop
test rdi, rdi
je 0x1400facd6
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400facd6
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400faccd
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
mov r13d, dword [rsp + 0x38]
mov r15d, dword [rsp + 0x30]
je 0x1400fa00e
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400fa015
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fad03
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
mov esi, 0x7c
jmp 0x1400fa01a
lea rcx, [rbx + 0xf0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rbx + 0xc0]
mov rdx, rsi
call fcn.1400042e0
lea rcx, [rbx + 0xf0]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
add rbx, 0xffffffffffffff70
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.1400f4c70
jmp 0x1400faf28
lea rcx, [rsp + 0x340]
call fcn.140009130
nop
lea rcx, [rsp + 0xd8]
call fcn.140004d80
nop
test rdi, rdi
je 0x1400fad97
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400fad97
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400fad8e
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
je 0x1400fadbb
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400fadbb
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fadb2
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
nop
cmp dword [rsp + 0xb4], 0
je 0x1400faead
mov dword [rsp + 0xb4], r14d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fae59
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fae59
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400fae59
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400fae2b
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fae5c
cmp al, 0x30
jne 0x1400fae4c
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400fae3b
cmp al, 0x58
jne 0x1400fae4c
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fae5c
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400fae5c
mov eax, r14d
and al, 9
cmp al, 1
jne 0x1400fae8b
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fae76
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fae79
mov rdx, r14
mov r8d, 1
lea rcx, [rsp + 0x70]
call fcn.140002830
jmp 0x1400faead
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fae9f
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400faea2
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x70]
call fcn.1400026d0
xor eax, eax
jmp 0x1400fb298
add rbx, 0xffffffffffffff70
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.1400f4c70
nop
lea rcx, [rsp + 0xd8]
call fcn.140004d80
nop
test rdi, rdi
je 0x1400faf05
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400faf05
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400faefc
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
je 0x1400faf28
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400faf28
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400faf20
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
mov rdx, rbp
mov rcx, rbx
call fcn.1400f9150
test rbp, rbp
je 0x1400faf47
mov rax, qword [rbp]
mov edx, 1
mov rcx, rbp
call qword [rax]
nop
cmp dword [rsp + 0xb4], 0
je 0x1400fb039
mov dword [rsp + 0xb4], r14d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fafe5
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fafe5
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400fafe5
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400fafb7
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fafe8
cmp al, 0x30
jne 0x1400fafd8
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400fafc7
cmp al, 0x58
jne 0x1400fafd8
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fafe8
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400fafe8
mov eax, r14d
and al, 9
cmp al, 1
jne 0x1400fb017
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fb002
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fb005
mov rdx, r14
mov r8d, 1
lea rcx, [rsp + 0x70]
call fcn.140002830
jmp 0x1400fb039
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fb02b
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fb02e
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x70]
call fcn.1400026d0
xor eax, eax
jmp 0x1400fb298
mov rdi, qword [rsp + 0x58]
test rdi, rdi
je 0x1400fb073
dec dword [rdi + 0x10]
cmp dword [rdi + 0x10], 0
jg 0x1400fb073
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400fb06a
call fcn.1401e64f8
mov rcx, rdi
call fcn.1401e60f0
nop
test rsi, rsi
je 0x1400fb097
dec dword [rsi + 0x10]
cmp dword [rsi + 0x10], 0
jg 0x1400fb097
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400fb08e
call fcn.1401e64f8
mov rcx, rsi
call fcn.1401e60f0
nop
cmp dword [rsp + 0xb4], 0
je 0x1400fb189
mov dword [rsp + 0xb4], r14d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fb135
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fb135
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400fb135
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400fb107
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fb138
cmp al, 0x30
jne 0x1400fb128
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400fb117
cmp al, 0x58
jne 0x1400fb128
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fb138
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400fb138
mov eax, r14d
and al, 9
cmp al, 1
jne 0x1400fb167
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fb152
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fb155
mov rdx, r14
mov r8d, 1
lea rcx, [rsp + 0x70]
call fcn.140002830
jmp 0x1400fb189
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fb17b
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fb17e
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x70]
call fcn.1400026d0
xor eax, eax
jmp 0x1400fb298
cmp dword [rsp + 0xb4], 0
je 0x1400fb28c
mov dword [rsp + 0xb4], r14d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x70]
call fcn.140002bc0
mov rdi, rax
test rax, rax
je 0x1400fb238
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400fb238
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400fb238
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400fb20a
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fb23b
cmp al, 0x30
jne 0x1400fb22b
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400fb21a
cmp al, 0x58
jne 0x1400fb22b
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400fb23b
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400fb23b
mov eax, r14d
and al, 9
cmp al, 1
jne 0x1400fb26a
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fb255
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fb258
mov rdx, r14
mov r8d, 1
lea rcx, [rsp + 0x70]
call fcn.140002830
jmp 0x1400fb28c
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400fb27e
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400fb281
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x70]
call fcn.1400026d0
xor eax, eax
mov rcx, qword [rsp + 0xd10]
xor rcx, rsp
call fcn.1401e6720
lea r11, [rsp + 0xd20]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret