Function at 0x140003917
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x470
mov word [rsp + 0x462], 0x209
lea rcx, [rsp + 0x40]
mov r8d, 0xc2
lea rdx, [0x1405898a0]
call sub.msvcrt.dll_memcpy
cmp byte [0x140590fc8], 0
jne 0x140003987
mov byte [0x1405910a2], 1
mov eax, 0
lea rcx, [0x140590fe0]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0x61
jne 0x140003961
mov byte [0x140590fc8], 1
lea rcx, [0x14000388b]
call fcn.1400014f0
cmp byte [0x1405910a2], 0
je 0x1400039bc
lea rdx, [0x140590fe0]
lea rcx, [rdx + 0xc2]
movzx eax, word [rdx]
add ax, 0x2f3b
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rdx, rcx
jne 0x14000399e
mov byte [0x1405910a2], 0
lea rcx, [0x140590fe0]
call sub.msvcrt.dll_wcslen
add eax, eax
mov word [rsp + 0x460], ax
lea rcx, [rsp + 0x40]
mov r8d, 0xc2
lea rdx, [0x1405898a0]
call sub.msvcrt.dll_memcpy
cmp byte [0x140590ee0], 0
jne 0x140003a2b
mov byte [0x140590fc2], 1
mov eax, 0
lea rcx, [0x140590f00]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0x61
jne 0x140003a05
mov byte [0x140590ee0], 1
lea rcx, [0x1400038a8]
call fcn.1400014f0
cmp byte [0x140590fc2], 0
je 0x140003a60
lea rdx, [0x140590f00]
lea rcx, [rdx + 0xc2]
movzx eax, word [rdx]
add ax, 0x2f3b
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rcx, rdx
jne 0x140003a42
mov byte [0x140590fc2], 0
lea rax, [0x140590f00]
mov qword [rsp + 0x468], rax
mov word [rsp + 0x452], 0x209
mov word [rsp + 0x40], 0xdd
mov word [rsp + 0x42], 0xff
mov word [rsp + 0x44], 0xfc
mov word [rsp + 0x46], 3
mov word [rsp + 0x48], 0xf6
mov word [rsp + 0x4a], 0xf1
mov word [rsp + 0x4c], 0xf2
mov word [rsp + 0x4e], 0xff
mov word [rsp + 0x50], 0xdb
mov word [rsp + 0x52], 0xee
mov word [rsp + 0x54], 0xfa
mov word [rsp + 0x56], 0xf2
mov word [rsp + 0x58], 0x8d
cmp byte [0x140590eb0], 0
jne 0x140003b16
mov byte [0x140590eda], 1
mov eax, 0
lea rcx, [0x140590ec0]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0xd
jne 0x140003af0
mov byte [0x140590eb0], 1
lea rcx, [0x1400038c5]
call fcn.1400014f0
cmp byte [0x140590eda], 0
je 0x140003b48
lea rdx, [0x140590ec0]
lea rcx, [rdx + 0x1a]
movzx eax, word [rdx]
sub ax, 0x7a8d
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rdx, rcx
jne 0x140003b2a
mov byte [0x140590eda], 0
lea rcx, [0x140590ec0]
call sub.msvcrt.dll_wcslen
add eax, eax
mov word [rsp + 0x450], ax
mov word [rsp + 0x40], 0xdd
mov word [rsp + 0x42], 0xff
mov word [rsp + 0x44], 0xfc
mov word [rsp + 0x46], 3
mov word [rsp + 0x48], 0xf6
mov word [rsp + 0x4a], 0xf1
mov word [rsp + 0x4c], 0xf2
mov word [rsp + 0x4e], 0xff
mov word [rsp + 0x50], 0xdb
mov word [rsp + 0x52], 0xee
mov word [rsp + 0x54], 0xfa
mov word [rsp + 0x56], 0xf2
mov word [rsp + 0x58], 0x8d
cmp byte [0x140590e80], 0
jne 0x140003bfb
mov byte [0x140590eaa], 1
mov eax, 0
lea rcx, [0x140590e90]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0xd
jne 0x140003bd5
mov byte [0x140590e80], 1
lea rcx, [0x1400038df]
call fcn.1400014f0
cmp byte [0x140590eaa], 0
je 0x140003c2d
lea rdx, [0x140590e90]
lea rcx, [rdx + 0x1a]
movzx eax, word [rdx]
sub ax, 0x7a8d
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rdx, rcx
jne 0x140003c0f
mov byte [0x140590eaa], 0
lea rax, [0x140590e90]
mov qword [rsp + 0x458], rax
mov qword [rsp + 0x448], 0
mov dword [rsp + 0x110], 0x30
mov qword [rsp + 0x118], 0
mov dword [rsp + 0x128], 0x40
lea rax, [rsp + 0x460]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
lea rcx, [rsp + 0x448]
lea r8, [rsp + 0x110]
mov edx, 8
call fcn.140005c86
mov ebx, 0
lea rsi, [0x140590e70]
lea rdi, [0x140590e50]
lea rbp, [0x140590e38]
test eax, eax
jns 0x140003e38
mov eax, 0
add rsp, 0x470
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov byte [rbp + 8], 0
mov r8d, 3
mov rdx, rbp
mov rcx, r12
call sub.msvcrt.dll__wcsnicmp
test eax, eax
je 0x1400040e4
mov word [rsp + 0x40], 0xfc
mov word [rsp + 0x42], 0x1f
mov word [rsp + 0x44], 0x31
mov word [rsp + 0x46], 0x1c
mov word [rsp + 0x48], 0x29
mov word [rsp + 0x4a], 0x1e
mov word [rsp + 0x4c], 0x20
mov word [rsp + 0x4e], 0x1f
mov word [rsp + 0x50], 0xdb
mov word [rsp + 0x52], 8
mov word [rsp + 0x54], 0x24
mov word [rsp + 0x56], 0x1e
mov word [rsp + 0x58], 0x2d
mov word [rsp + 0x5a], 0x2a
mov word [rsp + 0x5c], 0xdb
mov word [rsp + 0x5e], 0xff
mov word [rsp + 0x60], 0x20
mov word [rsp + 0x62], 0x31
mov word [rsp + 0x64], 0x24
mov word [rsp + 0x66], 0x1e
mov word [rsp + 0x68], 0x20
mov word [rsp + 0x6a], 0x2e
mov word [rsp + 0x6c], 0xbb
cmp byte [0x140590de8], 0
jne 0x140003de1
mov byte [0x140590e2e], 1
mov eax, 0
lea rcx, [0x140590e00]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0x17
jne 0x140003dbb
mov byte [0x140590de8], 1
lea rcx, [0x1400038fc]
call fcn.1400014f0
cmp byte [0x140590e2e], 0
je 0x140003e13
lea rdx, [0x140590e00]
lea rcx, [rdx + 0x2e]
movzx eax, word [rdx]
sub ax, 0x3abb
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rcx, rdx
jne 0x140003df5
mov byte [0x140590e2e], 0
lea rdx, [0x140590e00]
mov rcx, r12
call sub.msvcrt.dll_wcsstr
test rax, rax
jne 0x1400040e4
mov rcx, qword [rsp + 0x38]
call fcn.140005b6c
add ebx, 1
lea rax, [rsp + 0x444]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x100
lea r9, [rsp + 0x340]
mov r8d, 0
mov edx, ebx
mov rcx, qword [rsp + 0x448]
call fcn.140005c92
cmp eax, 0x8000001a
je 0x140004105
lea rax, [rsp + 0x350]
mov qword [rsp + 0x468], rax
mov eax, dword [rsp + 0x34c]
mov word [rsp + 0x460], ax
mov word [rsp + 0x462], ax
mov dword [rsp + 0x110], 0x30
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x118], rax
mov dword [rsp + 0x128], 0x240
lea rax, [rsp + 0x460]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
lea rcx, [rsp + 0x38]
lea r8, [rsp + 0x110]
mov edx, 1
call fcn.140005c86
test eax, eax
js 0x140003e35
lea rdx, [rsp + 0x450]
lea rax, [rsp + 0x444]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x200
lea r9, [rsp + 0x140]
mov r8d, 1
mov rcx, qword [rsp + 0x38]
call fcn.140005caa
test eax, eax
js 0x140003e2b
mov eax, dword [rsp + 0x148]
lea r12, [rsp + rax + 0x140]
mov word [rsp + 0x40], 0x8f
mov word [rsp + 0x42], 0x97
mov word [rsp + 0x44], 0x8a
mov word [rsp + 0x46], 0x85
mov word [rsp + 0x48], 0x8a
mov word [rsp + 0x4a], 0x82
mov word [rsp + 0x4c], 0x41
cmp byte [0x140590e60], 0
jne 0x140003fbe
mov byte [rsi + 0xe], 1
mov eax, 0
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rsi + rax*2], dx
add rax, 1
cmp rax, 7
jne 0x140003f98
mov byte [0x140590e60], 1
lea rcx, [0x1400038f9]
call fcn.1400014f0
cmp byte [rsi + 0xe], 0
je 0x140003fea
lea rdx, [0x140590e70]
lea rcx, [rdx + 0xe]
movzx eax, word [rdx]
add ax, 0x31bf
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rdx, rcx
jne 0x140003fcf
mov byte [rsi + 0xe], 0
mov r8d, 6
mov rdx, rsi
mov rcx, r12
call sub.msvcrt.dll__wcsnicmp
test eax, eax
je 0x1400040e4
cmp byte [0x140590e48], 0
jne 0x14000403a
mov byte [rdi + 8], 1
mov word [rdi], 0x24
mov word [rdi + 2], 0x30
mov word [rdi + 4], 0x27
mov word [rdi + 6], 0xe3
mov byte [0x140590e48], 1
lea rcx, [0x1400038fa]
call fcn.1400014f0
cmp byte [rdi + 8], 0
je 0x140004066
lea rdx, [0x140590e50]
lea rcx, [rdx + 8]
movzx eax, word [rdx]
sub ax, 0x5ce3
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rdx, rcx
jne 0x14000404b
mov byte [rdi + 8], 0
mov r8d, 3
mov rdx, rdi
mov rcx, r12
call sub.msvcrt.dll__wcsnicmp
test eax, eax
je 0x1400040e4
cmp byte [0x140590e30], 0
jne 0x1400040b3
mov byte [rbp + 8], 1
mov word [rbp], 0
mov word [rbp + 2], 0x13
mov word [rbp + 4], 8
mov word [rbp + 6], 0xbf
mov byte [0x140590e30], 1
lea rcx, [0x1400038fb]
call fcn.1400014f0
cmp byte [rbp + 8], 0
je 0x140003ce5
lea rdx, [0x140590e38]
lea rcx, [rdx + 8]
movzx eax, word [rdx]
add ax, 0x7d41
and ax, 0xff
mov word [rdx], ax
add rdx, 2
cmp rcx, rdx
jne 0x1400040c8
jmp 0x140003ce1
mov rcx, qword [rsp + 0x38]
call fcn.140005b6c
mov rcx, qword [rsp + 0x448]
call fcn.140005b6c
mov eax, 1
jmp 0x140003cd3
mov rcx, qword [rsp + 0x448]
call fcn.140005b6c
mov eax, 0
jmp 0x140003cd3