Function at 0x140003937
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, [0x1405899c0]
call sub.msvcrt.dll_memcpy
cmp byte [0x1405910c8], 0
jne 0x1400039a7
mov byte [0x1405911a2], 1
mov eax, 0
lea rcx, [0x1405910e0]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0x61
jne 0x140003981
mov byte [0x1405910c8], 1
lea rcx, [0x1400038ab]
call fcn.1400014f0
cmp byte [0x1405911a2], 0
je 0x1400039dc
lea rdx, [0x1405910e0]
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 0x1400039be
mov byte [0x1405911a2], 0
lea rcx, [0x1405910e0]
call sub.msvcrt.dll_wcslen
add eax, eax
mov word [rsp + 0x460], ax
lea rcx, [rsp + 0x40]
mov r8d, 0xc2
lea rdx, [0x1405899c0]
call sub.msvcrt.dll_memcpy
cmp byte [0x140590fe0], 0
jne 0x140003a4b
mov byte [0x1405910c2], 1
mov eax, 0
lea rcx, [0x140591000]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0x61
jne 0x140003a25
mov byte [0x140590fe0], 1
lea rcx, [0x1400038c8]
call fcn.1400014f0
cmp byte [0x1405910c2], 0
je 0x140003a80
lea rdx, [0x140591000]
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 0x140003a62
mov byte [0x1405910c2], 0
lea rax, [0x140591000]
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 [0x140590fb0], 0
jne 0x140003b36
mov byte [0x140590fda], 1
mov eax, 0
lea rcx, [0x140590fc0]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0xd
jne 0x140003b10
mov byte [0x140590fb0], 1
lea rcx, [0x1400038e5]
call fcn.1400014f0
cmp byte [0x140590fda], 0
je 0x140003b68
lea rdx, [0x140590fc0]
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 0x140003b4a
mov byte [0x140590fda], 0
lea rcx, [0x140590fc0]
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 [0x140590f80], 0
jne 0x140003c1b
mov byte [0x140590faa], 1
mov eax, 0
lea rcx, [0x140590f90]
movzx edx, word [rsp + rax*2 + 0x40]
mov word [rcx + rax*2], dx
add rax, 1
cmp rax, 0xd
jne 0x140003bf5
mov byte [0x140590f80], 1
lea rcx, [0x1400038ff]
call fcn.1400014f0
cmp byte [0x140590faa], 0
je 0x140003c4d
lea rdx, [0x140590f90]
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 0x140003c2f
mov byte [0x140590faa], 0
lea rax, [0x140590f90]
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.140005ca0
mov ebx, 0
lea rsi, [0x140590f70]
lea rdi, [0x140590f50]
lea rbp, [0x140590f38]
test eax, eax
jns 0x140003e58
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 0x140004104
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 [0x140590ee8], 0
jne 0x140003e01
mov byte [0x140590f2e], 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, 0x17
jne 0x140003ddb
mov byte [0x140590ee8], 1
lea rcx, [0x14000391c]
call fcn.1400014f0
cmp byte [0x140590f2e], 0
je 0x140003e33
lea rdx, [0x140590f00]
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 0x140003e15
mov byte [0x140590f2e], 0
lea rdx, [0x140590f00]
mov rcx, r12
call sub.msvcrt.dll_wcsstr
test rax, rax
jne 0x140004104
mov rcx, qword [rsp + 0x38]
call fcn.140005b8c
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.140005cac
cmp eax, 0x8000001a
je 0x140004125
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.140005ca0
test eax, eax
js 0x140003e55
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.140005cc7
test eax, eax
js 0x140003e4b
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 [0x140590f60], 0
jne 0x140003fde
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 0x140003fb8
mov byte [0x140590f60], 1
lea rcx, [0x140003919]
call fcn.1400014f0
cmp byte [rsi + 0xe], 0
je 0x14000400a
lea rdx, [0x140590f70]
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 0x140003fef
mov byte [rsi + 0xe], 0
mov r8d, 6
mov rdx, rsi
mov rcx, r12
call sub.msvcrt.dll__wcsnicmp
test eax, eax
je 0x140004104
cmp byte [0x140590f48], 0
jne 0x14000405a
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 [0x140590f48], 1
lea rcx, [0x14000391a]
call fcn.1400014f0
cmp byte [rdi + 8], 0
je 0x140004086
lea rdx, [0x140590f50]
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 0x14000406b
mov byte [rdi + 8], 0
mov r8d, 3
mov rdx, rdi
mov rcx, r12
call sub.msvcrt.dll__wcsnicmp
test eax, eax
je 0x140004104
cmp byte [0x140590f30], 0
jne 0x1400040d3
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 [0x140590f30], 1
lea rcx, [0x14000391b]
call fcn.1400014f0
cmp byte [rbp + 8], 0
je 0x140003d05
lea rdx, [0x140590f38]
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 0x1400040e8
jmp 0x140003d01
mov rcx, qword [rsp + 0x38]
call fcn.140005b8c
mov rcx, qword [rsp + 0x448]
call fcn.140005b8c
mov eax, 1
jmp 0x140003cf3
mov rcx, qword [rsp + 0x448]
call fcn.140005b8c
mov eax, 0
jmp 0x140003cf3