Function at 0x140049000
Capabilities:
Accept command line arguments

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x330]
sub rsp, 0x430
mov rax, qword [0x140091088]
xor rax, rsp
mov qword [rbp + 0x320], rax
mov rax, rdx
mov r12, rcx
mov qword [rsp + 0x68], rcx
xor edi, edi
mov dword [rsp + 0x20], edi
lea rdx, [rsp + 0x28]
mov rcx, rax
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov qword [rsp + 0x60], rax
mov qword [r12], rdi
mov qword [r12 + 8], rdi
mov qword [r12 + 0x10], rdi
mov r13d, 1
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x20], r13d
mov dword [rsp + 0x24], r13d
cmp dword [rsp + 0x28], r13d
jle 0x140049ab5
mov ecx, r13d
mov qword [rsp + 0x48], rcx
lea rdx, [rbp - 0x68]
mov qword [rsp + 0x70], rdx
nop dword [rax]
nop word [rax + rax]
lea r15, [rax + rcx*8]
mov qword [rsp + 0x30], r15
mov rdx, qword [r15]
mov qword [rbp - 8], rdi
mov qword [rbp + 8], rdi
mov qword [rbp + 0x10], 7
mov word [rbp - 8], di
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400490d0
lea rcx, [rbp - 8]
call fcn.14004e680
nop
lea rdx, [rbp - 8]
cmp qword [rbp + 0x10], 8
cmovae rdx, qword [rbp - 8]
mov rax, qword [rbp + 8]
lea r14, [rdx + rax*2]
lea rbx, [rbp - 8]
cmovae rbx, qword [rbp - 8]
mov qword [rbp - 0x68], rdi
mov qword [rbp - 0x58], rdi
mov esi, 0xf
mov qword [rbp - 0x50], rsi
mov byte [rbp - 0x68], 0
mov rdx, r14
sub rdx, rbx
sar rdx, 1
cmp rdx, 0x10
jb 0x14004913b
lea rcx, [rbp - 0x68]
call fcn.140051280
xor edi, edi
mov qword [rbp - 0x58], rdi
mov rsi, qword [rbp - 0x50]
cmp rbx, r14
je 0x140049183
movzx r9d, byte [rbx]
cmp rdi, rsi
jae 0x140049169
lea rax, [rdi + 1]
mov qword [rbp - 0x58], rax
lea rax, [rbp - 0x68]
cmp rsi, 0x10
cmovae rax, qword [rbp - 0x68]
mov byte [rax + rdi], r9b
mov byte [rax + rdi + 1], 0
jmp 0x140049172
lea rcx, [rbp - 0x68]
call fcn.14004fba0
add rbx, 2
mov rsi, qword [rbp - 0x50]
mov rdi, qword [rbp - 0x58]
cmp rbx, r14
jne 0x140049140
lea rbx, [rbp - 0x68]
mov r13, qword [rbp - 0x68]
cmp rsi, 0x10
cmovae rbx, r13
test rdi, rdi
je 0x1400499fd
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x20]
call fcn.140054950
mov byte [rbp + 0x5a], 1
lea rax, [rdi - 1]
mov r15, 0xffffffffffffffff
cmp rax, r15
cmovb r15, rax
lea rcx, [rbx + r15]
movzx eax, byte [rcx]
cmp byte [rbp + rax + 0x20], 0
jne 0x1400491e7
cmp rcx, rbx
je 0x1400499f8
dec rcx
movzx eax, byte [rcx]
cmp byte [rbp + rax + 0x20], 0
je 0x1400491d1
sub rcx, rbx
cmp rcx, 0xffffffffffffffff
je 0x1400499f8
lea r14, [rbp - 0x68]
cmp rsi, 0x10
cmovae r14, r13
cmp rdi, 0xc
jb 0x14004923d
mov rbx, r14
nop dword [rax]
cmp byte [rbx], 0x6a
jne 0x14004922e
mov r8d, 0xc
lea rdx, str.jetbrains:__
mov rcx, rbx
call fcn.1400551a0
test eax, eax
je 0x140049238
cmp rbx, r14
je 0x14004923d
dec rbx
jmp 0x140049210
sub rbx, r14
jmp 0x140049244
mov rbx, 0xffffffffffffffff
test rbx, rbx
je 0x1400499f8
lea rbx, [rbp - 0x68]
cmp rsi, 0x10
cmovae rbx, r13
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x120]
call fcn.140054950
mov byte [rbp + 0x15a], 1
lea rcx, [rbx + r15]
movzx eax, byte [rcx]
cmp byte [rbp + rax + 0x120], 0
jne 0x14004929a
cmp rcx, rbx
je 0x140049308
dec rcx
movzx eax, byte [rcx]
cmp byte [rbp + rax + 0x120], 0
je 0x140049285
sub rcx, rbx
inc rcx
xor r15d, r15d
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], 0xf
mov byte [rbp - 0x48], r15b
cmp rdi, rcx
jb 0x140049b30
sub rdi, rcx
mov r14, 0xffffffffffffffff
cmp rdi, r14
cmovb r14, rdi
lea rax, [rbp - 0x68]
cmp rsi, 0x10
cmovae rax, r13
lea rsi, [rax + rcx]
cmp r14, 0xf
ja 0x140049311
mov qword [rbp - 0x38], r14
mov r8, r14
mov rdx, rsi
lea rcx, [rbp - 0x48]
call fcn.140054b10
mov byte [rbp + r14 - 0x48], r15b
mov rdi, qword [rbp - 0x48]
jmp 0x1400493b5
mov rcx, 0xffffffffffffffff
jmp 0x14004929d
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x140049b2a
mov rbx, r14
or rbx, 0xf
cmp rbx, rax
jbe 0x14004933f
mov rbx, rax
movabs rax, 0x8000000000000027
jmp 0x140049366
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140049385
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140049ae8
mov rcx, rax
call fcn.1400528a8
test rax, rax
je 0x140049b24
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140049397
test rcx, rcx
je 0x140049394
call fcn.1400528a8
mov rdi, rax
jmp 0x140049397
mov rdi, r15
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], rbx
mov r8, r14
mov rdx, rsi
mov rcx, rdi
call fcn.140054b10
mov byte [rdi + r14], r15b
mov qword [rbp - 0x48], rdi
mov r13, qword [rsp + 0x38]
or r13d, 2
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x20], r13d
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], r15
mov rsi, qword [rbp - 0x38]
lea r14, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae r14, rdi
cmp rsi, 0x10
jae 0x140049407
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x70], 0xf
lea rcx, [rsp + 0x78]
jmp 0x140049491
mov rbx, rsi
or rbx, 0xf
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
cmova rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14004945b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140049af4
mov rcx, rax
call fcn.1400528a8
mov rcx, rax
test rax, rax
je 0x140049aee
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14004946a
test rcx, rcx
je 0x140049467
call fcn.1400528a8
jmp 0x14004946a
mov rax, r15
mov qword [rsp + 0x78], rax
lea r8, [rsi + 1]
mov rdx, r14
mov rcx, rax
call fcn.140054b10
mov qword [rbp - 0x70], rbx
lea rcx, [rsp + 0x78]
cmp rbx, 0x10
cmovae rcx, qword [rsp + 0x78]
mov qword [rbp - 0x78], rsi
mov r8d, 0xa
lea rdx, [rsp + 0x58]
call fcn.1400588ac
mov rax, qword [rsp + 0x58]
movzx ebx, byte [rax]
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x1400494e9
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400494e4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049afa
call fcn.1400528a0
test bl, bl
jne 0x1400499bd
lea rax, [0x140088240]
mov qword [rsp + 0x38], rax
mov rdx, qword [r12 + 8]
cmp rdx, qword [r12 + 0x10]
je 0x140049514
mov qword [rdx], rax
add qword [r12 + 8], 8
jmp 0x140049521
lea r8, [rsp + 0x38]
mov rcx, r12
call fcn.14004f5e0
lea rdi, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae rdi, qword [rbp - 0x48]
add rdi, qword [rbp - 0x38]
lea rbx, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae rbx, qword [rbp - 0x48]
mov qword [rsp + 0x78], r15
mov rcx, r15
mov qword [rbp - 0x78], rcx
mov r8d, 7
mov qword [rbp - 0x70], r8
mov rdx, rdi
sub rdx, rbx
cmp rdx, 8
jb 0x140049578
lea rcx, [rsp + 0x78]
call fcn.140051110
mov rcx, r15
mov qword [rbp - 0x78], rcx
mov r8, qword [rbp - 0x70]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x50], rax
cmp rbx, rdi
je 0x1400495d0
movsx r9d, byte [rbx]
cmp rcx, r8
jae 0x1400495b4
lea rax, [rcx + 1]
mov qword [rbp - 0x78], rax
lea rax, [rsp + 0x78]
cmp r8, 8
cmovae rax, qword [rsp + 0x78]
mov word [rax + rcx*2], r9w
mov word [rax + rcx*2 + 2], r15w
jmp 0x1400495be
lea rcx, [rsp + 0x78]
call fcn.1400514b0
inc rbx
mov r8, qword [rbp - 0x70]
cmp rbx, rdi
je 0x1400495d0
mov rcx, qword [rbp - 0x78]
jmp 0x140049587
lea rcx, [rsp + 0x78]
cmp r8, 8
cmovae rcx, qword [rsp + 0x78]
lea rdx, [rsp + 0x40]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov rbx, rax
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14004962e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049629
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b00
call fcn.1400528a0
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r15w
mov rdx, qword [r12 + 8]
cmp rdx, qword [r12 + 0x10]
je 0x14004965a
mov rax, qword [rbx]
mov qword [rdx], rax
add qword [r12 + 8], 8
jmp 0x140049665
mov r8, rbx
mov rcx, r12
call fcn.14004f5e0
lea rbx, [rbp - 0x68]
mov rsi, qword [rbp - 0x68]
mov r14, qword [rbp - 0x50]
cmp r14, 0x10
cmovae rbx, rsi
mov rdi, qword [rbp - 0x58]
test rdi, rdi
je 0x1400496db
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x220]
call fcn.140054950
mov byte [rbp + 0x25a], 1
lea rax, [rdi - 1]
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
add r8, rbx
movzx eax, byte [r8]
cmp byte [rbp + rax + 0x220], 0
jne 0x1400496d6
cmp r8, rbx
je 0x1400496db
dec r8
movzx eax, byte [r8]
cmp byte [rbp + rax + 0x220], 0
je 0x1400496c0
sub r8, rbx
jmp 0x1400496e2
mov r8, 0xffffffffffffffff
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
cmp rdi, r8
cmovb r8, rdi
lea rdx, [rbp - 0x68]
cmp r14, 0x10
cmovae rdx, rsi
lea rcx, [rbp - 0x28]
call fcn.14004ea50
or r13d, 4
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x20], r13d
lea rdx, [rbp - 0x28]
cmp qword [rbp - 0x10], 0x10
cmovae rdx, qword [rbp - 0x28]
mov rdi, qword [rbp - 0x18]
add rdi, rdx
lea rbx, [rbp - 0x28]
cmp qword [rbp - 0x10], 0x10
cmovae rbx, qword [rbp - 0x28]
mov qword [rsp + 0x78], r15
mov rcx, r15
mov qword [rbp - 0x78], rcx
mov r8d, 7
mov qword [rbp - 0x70], r8
mov rdx, rdi
sub rdx, rbx
cmp rdx, 8
jb 0x14004977a
lea rcx, [rsp + 0x78]
call fcn.140051110
mov rcx, r15
mov qword [rbp - 0x78], rcx
mov r8, qword [rbp - 0x70]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x50], rax
cmp rbx, rdi
je 0x1400497d9
nop dword [rax]
movsx r9d, byte [rbx]
cmp rcx, r8
jae 0x1400497bd
lea rax, [rcx + 1]
mov qword [rbp - 0x78], rax
lea rax, [rsp + 0x78]
cmp r8, 8
cmovae rax, qword [rsp + 0x78]
mov word [rax + rcx*2], r9w
mov word [rax + rcx*2 + 2], r15w
jmp 0x1400497c7
lea rcx, [rsp + 0x78]
call fcn.1400514b0
inc rbx
mov r8, qword [rbp - 0x70]
cmp rbx, rdi
je 0x1400497d9
mov rcx, qword [rbp - 0x78]
jmp 0x140049790
lea rcx, [rsp + 0x78]
cmp r8, 8
cmovae rcx, qword [rsp + 0x78]
lea rdx, [rsp + 0x40]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov rbx, rax
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x140049837
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049832
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b06
call fcn.1400528a0
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r15w
mov rdx, qword [r12 + 8]
cmp rdx, qword [r12 + 0x10]
je 0x140049863
mov rax, qword [rbx]
mov qword [rdx], rax
add qword [r12 + 8], 8
jmp 0x14004986f
mov r8, rbx
mov rcx, r12
call fcn.14004f5e0
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x1400498aa
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400498a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b0c
call fcn.1400528a0
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x1400498f5
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400498f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b12
call fcn.1400528a0
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], 0xf
mov byte [rbp - 0x48], 0
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x140049940
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004993b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b18
call fcn.1400528a0
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], 0xf
mov byte [rbp - 0x68], 0
mov rdx, qword [rbp + 0x10]
cmp rdx, 8
jb 0x140049990
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004998b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b1e
call fcn.1400528a0
xor edi, edi
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov rcx, qword [rsp + 0x48]
inc rcx
mov qword [rsp + 0x48], rcx
cmp eax, dword [rsp + 0x28]
jge 0x140049ab5
mov rax, qword [rsp + 0x60]
jmp 0x1400490a0
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x1400499f8
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400499f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b24
call fcn.1400528a0
mov r15, qword [rsp + 0x30]
mov rdx, qword [r12 + 8]
cmp rdx, qword [r12 + 0x10]
je 0x140049a17
mov rax, qword [r15]
mov qword [rdx], rax
add qword [r12 + 8], 8
jmp 0x140049a23
mov r8, r15
mov rcx, r12
call fcn.14004f5e0
nop
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x140049a5e
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049a59
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049b36
call fcn.1400528a0
xor edi, edi
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], 0xf
mov byte [rbp - 0x68], dil
mov rdx, qword [rbp + 0x10]
cmp rdx, 8
jb 0x140049992
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049aab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049ae2
call fcn.1400528a0
jmp 0x140049992
mov rax, r12
mov rcx, qword [rbp + 0x320]
xor rcx, rsp
call fcn.140052880
mov rbx, qword [rsp + 0x480]
add rsp, 0x430
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14005cf9c
nop
call fcn.140044130
nop
call fcn.14005cf9c
int3
call fcn.140044130
int3
call fcn.14005cf9c
int3
call fcn.14005cf9c
nop
call fcn.14005cf9c
nop
call fcn.14005cf9c
nop
call fcn.14005cf9c
nop
call fcn.14005cf9c
nop
call fcn.14005cf9c
nop
call fcn.14005cf9c
int3
call fcn.1400441d0
int3
call fcn.14004f020
nop
call fcn.14005cf9c
int3