Function at 0x140089700
Capabilities:
Set environment variable

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x290
mov qword [rsp + 0x188], 0xfffffffffffffffe
mov qword [rsp + 0x2e0], rbx
mov rax, qword [0x140197b10]
xor rax, rsp
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x140], r9
mov rbx, rdx
mov qword [rsp + 0xf8], rdx
mov r15, rcx
mov qword [rsp + 0x118], rcx
xor r8d, r8d
mov qword [rsp + 0x128], r8
xor cl, cl
mov byte [rsp + 0x40], cl
mov byte [rsp + 0x48], cl
mov byte [rsp + 0x70], cl
mov r13d, r8d
mov dword [rsp + 0x58], r8d
mov dword [rsp + 0xcc], r8d
mov edi, r8d
mov r12d, 1
mov dword [rsp + 0xd0], r12d
mov dword [rsp + 0xa0], r12d
mov esi, r8d
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0xe0], r8d
mov dword [rsp + 0xd8], r8d
mov dword [rsp + 0xdc], r8d
mov dword [rsp + 0x60], r8d
mov dword [rsp + 0xf0], r8d
mov eax, r8d
mov dword [rsp + 0xf4], eax
mov dword [rsp + 0x68], eax
mov dword [rsp + 0xa8], r8d
mov dword [rsp + 0x84], eax
mov dword [rsp + 0x80], eax
or ebp, 0xffffffff
mov dword [rsp + 0xc8], ebp
lea rax, str._I64d
mov qword [rsp + 0x100], rax
mov dword [rsp + 0x4c], ebp
lea edx, [rbp + 0x7f]
test r9, r9
je 0x14008a66c
mov r10, r9
cmp word [r9], si
je 0x14008a66c
lea r8d, [r12 + 8]
lea r9d, [r12 + 0x1f]
movzx ebp, byte [0x14019bce5]
movzx r14d, byte [rsp + 0x2f0]
xor r15d, r15d
lea ebx, [rdx - 0x50]
movzx r11d, word [r10]
cmp r8w, r11w
ja 0x140089855
cmp r11w, 0xd
jbe 0x14008a5cd
cmp r9w, r11w
je 0x14008a5cd
cmp bx, r11w
je 0x14008a5bf
mov eax, 0x24
cmp ax, r11w
je 0x14008a5bf
mov eax, 0x25
cmp ax, r11w
je 0x14008a5bf
mov eax, 0x2a
cmp ax, r11w
jne 0x14008989e
or cl, 4
mov byte [rsp + 0x40], cl
jmp 0x14008a5bf
cmp dx, r11w
jne 0x1400898bb
cmp dx, word [r10 + 2]
jne 0x1400898bb
or cl, 2
mov byte [rsp + 0x40], cl
add r10, 2
jmp 0x14008a5bf
cmp dx, r11w
jne 0x1400898d8
cmp bx, word [r10 + 2]
jne 0x1400898d8
or cl, 8
mov byte [rsp + 0x40], cl
add r10, 2
jmp 0x14008a5bf
cmp dx, r11w
jne 0x1400898fc
mov ebx, eax
cmp bx, word [r10 + 2]
mov ebx, 0x2e
jne 0x1400898fc
or cl, 0xa
mov byte [rsp + 0x40], cl
add r10, 2
jmp 0x14008a5bf
cmp dx, r11w
jne 0x14008990e
or cl, 1
mov byte [rsp + 0x40], cl
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._env
call fcn.14005c510
test al, al
je 0x14008994d
add r10, 6
mov dword [rsp + 0xa0], 0x40
movzx ecx, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._raw
call fcn.14005c510
test al, al
je 0x140089983
add r10, 6
mov esi, 0x40
mov cl, byte [rsp + 0x40]
lea edx, [rsi + 0x3e]
lea r8d, [rsi - 0x37]
lea r9d, [rsi - 0x20]
jmp 0x14008a5bf
mov eax, 0x3c
cmp ax, r11w
jne 0x1400899a7
mov byte [rsp + 0x48], 1
mov cl, byte [rsp + 0x40]
lea edx, [rax + 0x42]
lea r8d, [rax - 0x33]
lea r9d, [rax - 0x1c]
jmp 0x14008a5bf
mov eax, 0x3e
cmp ax, r11w
jne 0x1400899cb
mov byte [rsp + 0x48], 2
mov cl, byte [rsp + 0x40]
lea edx, [rax + 0x40]
lea r8d, [rax - 0x35]
lea r9d, [rax - 0x1e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._def
call fcn.14005c510
test al, al
je 0x140089a02
add r10, 6
add r14b, 2
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._tom
call fcn.14005c510
test al, al
je 0x140089a38
add r10, 6
mov r13d, r12d
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._tow
call fcn.14005c510
test al, al
je 0x140089a70
add r10, 6
mov r13d, 2
mov cl, byte [rsp + 0x40]
lea edx, [r13 + 0x7c]
lea r8d, [r13 + 7]
lea r9d, [r13 + 0x1e]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._copy
call fcn.14005c510
test al, al
je 0x140089aa8
add r10, 8
mov r13d, 4
mov cl, byte [rsp + 0x40]
lea edx, [r13 + 0x7a]
lea r8d, [r13 + 5]
lea r9d, [r13 + 0x1c]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._addr
call fcn.14005c510
test al, al
je 0x140089ae0
add r10, 8
mov r13d, 8
mov cl, byte [rsp + 0x40]
lea edx, [r13 + 0x76]
lea r8d, [r13 + 1]
lea r9d, [r13 + 0x18]
jmp 0x14008a5bf
mov r8d, 8
mov rdx, r10
lea rcx, str._mkdummy
call fcn.14005c510
test al, al
je 0x140089b18
add r10, 0xe
mov r13d, 0x81
mov cl, byte [rsp + 0x40]
lea edx, [r13 - 3]
lea r8d, [r13 - 0x78]
lea r9d, [r13 - 0x61]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._make
call fcn.14005c510
test al, al
je 0x140089b50
add r10, 8
mov r13d, 0x80
mov cl, byte [rsp + 0x40]
lea edx, [r13 - 2]
lea r8d, [r13 - 0x77]
lea r9d, [r13 - 0x60]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._swap
call fcn.14005c510
test al, al
je 0x140089b87
add r10, 8
mov r9d, 0x20
mov r13d, r9d
mov cl, byte [rsp + 0x40]
lea edx, [r9 + 0x5e]
lea r8d, [r9 - 0x17]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._char
call fcn.14005c510
test al, al
je 0x140089bbf
mov dword [rsp + 0x44], r12d
add r10, 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, str._wchar
call fcn.14005c510
test al, al
je 0x140089bfa
mov dword [rsp + 0x44], 2
add r10, 0xa
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, str._short
call fcn.14005c510
test al, al
je 0x140089c35
mov dword [rsp + 0x44], 2
add r10, 0xa
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._ptr
call fcn.14005c510
test al, al
je 0x140089c70
mov dword [rsp + 0x44], 8
add r10, 6
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, str._float
call fcn.14005c510
test al, al
je 0x140089cb6
mov dword [rsp + 0xe0], 4
mov dword [rsp + 0x44], 4
add r10, 0xa
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 7
mov rdx, r10
lea rcx, str._double
call fcn.14005c510
test al, al
je 0x140089cfc
mov dword [rsp + 0xd8], 8
mov dword [rsp + 0x44], 8
add r10, 0xc
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 8
mov rdx, r10
lea rcx, str._ldouble
call fcn.14005c510
test al, al
je 0x140089d42
mov dword [rsp + 0xdc], 8
mov dword [rsp + 0x44], 8
add r10, 0xe
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, str._int64
call fcn.14005c510
test al, al
je 0x140089d7d
add r10, 0xa
mov dword [rsp + 0x44], 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r11d, 9
mov r8d, r11d
mov rdx, r10
lea rcx, str._longlong
call fcn.14005c510
test al, al
je 0x140089db9
add r10, 0x10
mov dword [rsp + 0x44], 8
mov cl, byte [rsp + 0x40]
lea edx, [r11 + 0x75]
mov r8d, r11d
lea r9d, [r11 + 0x17]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._long
call fcn.14005c510
test al, al
je 0x140089df3
mov dword [rsp + 0x44], 4
add r10, 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._long
call fcn.14005c510
test al, al
je 0x140089e2d
mov dword [rsp + 0x44], 4
add r10, 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, str._zero
call fcn.14005c510
test al, al
je 0x140089e64
add r10, 0xa
mov dword [rsp + 0x4c], r15d
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 7
mov rdx, r10
lea rcx, str._intsys
call fcn.14005c510
test al, al
je 0x140089e86
add r10, 0xc
jmp 0x14008a233
mov r8d, 4
mov rdx, r10
lea rcx, str._int
call fcn.14005c510
test al, al
je 0x140089ed9
movzx eax, word [r10 + 8]
mov ecx, 0xffdf
and ax, cx
cmp ax, 0x41
jb 0x140089eb8
cmp ax, 0x5a
jbe 0x140089ed9
add r10, 6
mov dword [rsp + 0x44], 4
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, [0x1401514a8]
call fcn.14005c510
test al, al
je 0x140089f24
add r10, 8
mov dword [rsp + 0x44], r12d
mov dword [rsp + 0x60], r12d
lea rax, str.0x_I64X
mov qword [rsp + 0x100], rax
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, [0x1401514a0]
call fcn.14005c510
test al, al
je 0x140089f75
add r10, 0xa
mov dword [rsp + 0x44], 2
mov dword [rsp + 0x60], 2
lea rax, str.0x_I64X
mov qword [rsp + 0x100], rax
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, [0x140151498]
call fcn.14005c510
test al, al
je 0x140089fc6
add r10, 0xa
mov dword [rsp + 0x44], 2
mov dword [rsp + 0x60], 2
lea rax, str.0x_I64X
mov qword [rsp + 0x100], rax
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, [0x140151490]
call fcn.14005c510
test al, al
je 0x14008a017
add r10, 6
mov dword [rsp + 0x60], 0x64
mov dword [rsp + 0x44], 8
lea rax, str.0x_I64X
mov qword [rsp + 0x100], rax
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, [0x140151488]
call fcn.14005c510
test al, al
je 0x14008a064
add r10, 0xa
mov dword [rsp + 0xe0], 4
mov dword [rsp + 0x44], 4
mov dword [rsp + 0x60], 4
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 7
mov rdx, r10
lea rcx, [0x140151480]
call fcn.14005c510
test al, al
je 0x14008a0b1
add r10, 0xc
mov dword [rsp + 0xd8], 8
mov dword [rsp + 0x44], 8
mov dword [rsp + 0x60], 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 8
mov rdx, r10
lea rcx, [0x140151470]
call fcn.14005c510
test al, al
je 0x14008a0fe
add r10, 0xe
mov dword [rsp + 0xdc], 8
mov dword [rsp + 0x44], 8
mov dword [rsp + 0x60], 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, [0x140151464]
call fcn.14005c510
test al, al
je 0x14008a140
add r10, 0xa
mov dword [rsp + 0x44], 8
mov dword [rsp + 0x60], 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, r11d
mov rdx, r10
lea rcx, [0x140151458]
call fcn.14005c510
test al, al
je 0x14008a17f
add r10, 0x10
mov dword [rsp + 0x44], 8
mov dword [rsp + 0x60], 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 5
mov rdx, r10
lea rcx, [0x140151450]
call fcn.14005c510
test al, al
je 0x14008a1d0
add r10, 8
mov dword [rsp + 0x44], 4
mov dword [rsp + 0x60], 4
lea rax, str.0x_I64X
mov qword [rsp + 0x100], rax
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 6
mov rdx, r10
lea rcx, str._intpe
call fcn.14005c510
test al, al
je 0x14008a212
add r10, 0xa
mov dword [rsp + 0x44], 4
mov dword [rsp + 0x60], 4
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 7
mov rdx, r10
lea rcx, [0x140151440]
call fcn.14005c510
test al, al
je 0x14008a262
mov dword [rsp + 0x60], 4
mov dword [rsp + 0x44], 4
cmp bpl, 3
jne 0x14008a59d
mov dword [rsp + 0x44], 8
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, [0x140151434]
call fcn.14005c510
test al, al
je 0x14008a2bd
movzx eax, word [r10 + 8]
mov ecx, 0xffdf
and ax, cx
cmp ax, 0x41
jb 0x14008a294
cmp ax, 0x5a
jbe 0x14008a2bd
add r10, 6
mov dword [rsp + 0x44], 4
mov dword [rsp + 0x60], 4
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._ret
call fcn.14005c510
test al, al
je 0x14008a355
mov ecx, r12d
mov dword [rsp + 0xcc], ecx
mov dword [rsp + 0x84], ecx
add r10, 8
mov qword [rsp + 0x58], r10
mov eax, 0x3a
cmp ax, word [r10]
jne 0x14008a308
add r10, 2
mov qword [rsp + 0x58], r10
movzx eax, word [r10]
sub ax, 0x30
cmp ax, r11w
ja 0x14008a33b
lea rdx, [rsp + 0x84]
lea rcx, [rsp + 0x58]
call fcn.140066e40
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0xcc], eax
mov r10, qword [rsp + 0x58]
sub r10, 2
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 4
mov rdx, r10
lea rcx, str._get
call fcn.14005c510
test al, al
je 0x14008a3dc
mov edi, r12d
mov dword [rsp + 0x84], r12d
add r10, 8
mov qword [rsp + 0x58], r10
mov eax, 0x3a
cmp ax, word [r10]
jne 0x14008a396
add r10, 2
mov qword [rsp + 0x58], r10
movzx eax, word [r10]
sub ax, 0x30
cmp ax, r11w
ja 0x14008a3c2
lea rdx, [rsp + 0x84]
lea rcx, [rsp + 0x58]
call fcn.140066e40
mov edi, dword [rsp + 0x84]
mov r10, qword [rsp + 0x58]
sub r10, 2
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 3
mov rdx, r10
lea rcx, [0x140151420]
call fcn.14005c510
test al, al
je 0x14008a413
add r10, 4
mov byte [rsp + 0x70], 1
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 2
mov rdx, r10
lea rcx, [0x14015141c]
call fcn.14005c510
test al, al
je 0x14008a46e
add r10, 4
mov qword [rsp + 0x58], r10
mov dword [rsp + 0xf0], r12d
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x58]
call fcn.140066e40
mov r10, qword [rsp + 0x58]
sub r10, 2
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
lea r8d, [rdx - 0x75]
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov r8d, 2
mov rdx, r10
lea rcx, [0x140151418]
call fcn.14005c510
test al, al
je 0x14008a5af
add r10, 4
mov qword [rsp + 0x58], r10
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x58]
call fcn.140066e40
mov r11, qword [rsp + 0x58]
movzx eax, word [r11]
test ax, ax
je 0x14008a4d8
mov r12d, 9
cmp r12w, ax
ja 0x14008a4c3
cmp ax, 0xd
jbe 0x14008a4de
mov ecx, 0x20
cmp cx, ax
je 0x14008a4de
add r11, 2
mov qword [rsp + 0x58], r11
jmp 0x14008a4de
mov r12d, 9
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x58]
call fcn.140066e40
mov r11, qword [rsp + 0x58]
movzx eax, word [r11]
test ax, ax
je 0x14008a51d
cmp r12w, ax
ja 0x14008a50a
cmp ax, 0xd
jbe 0x14008a51d
mov ecx, 0x20
cmp cx, ax
je 0x14008a51d
add r11, 2
mov qword [rsp + 0x58], r11
mov r12d, dword [rsp + 0x68]
mov dword [rsp + 0xf4], r12d
mov dword [rsp + 0x80], r12d
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x58]
call fcn.140066e40
mov eax, dword [rsp + 0xa8]
sub eax, r12d
inc eax
mov dword [rsp + 0xc8], eax
mov r10, qword [rsp + 0x58]
cmp word [r10], 0x5d
je 0x14008a582
sub r10, 2
mov r12d, 1
mov cl, byte [rsp + 0x40]
lea edx, [r12 + 0x7d]
lea r8d, [r12 + 8]
lea r9d, [r12 + 0x1f]
jmp 0x14008a5bf
mov r12d, 1
mov cl, byte [rsp + 0x40]
lea edx, [r12 + 0x7d]
lea r8d, [r12 + 8]
lea r9d, [r12 + 0x1f]
jmp 0x14008a5bf
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
jmp 0x14008a5bf
mov cl, byte [rsp + 0x40]
mov edx, 0x7e
mov r8d, r11d
lea r9d, [rdx - 0x5e]
add r10, 2
cmp word [r10], r15w
jne 0x140089840
mov byte [rsp + 0x49], r14b
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x58], r13d
test esi, esi
mov rbx, qword [rsp + 0xf8]
mov r15, qword [rsp + 0x118]
je 0x14008a655
mov rax, qword [rsp + 0x140]
mov rbx, rax
movzx eax, word [rax]
test ax, ax
je 0x14008a655
nop dword [rax]
cmp r8w, ax
ja 0x14008a62c
cmp ax, 0xd
jbe 0x14008a655
cmp r9w, ax
je 0x14008a655
add rbx, 2
mov ax, word [rbx]
test ax, ax
jne 0x14008a620
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x84], eax
mov ebp, dword [rsp + 0xc8]
jmp 0x14008a679
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x84], eax
mov ebp, dword [rsp + 0xc8]
jmp 0x14008a679
mov r14b, byte [rsp + 0x2f0]
mov byte [rsp + 0x49], r14b
mov qword [rsp + 0xe8], rbx
lea rcx, [rsp + 0xe8]
call fcn.14005b560
mov ecx, 0x26
mov rax, qword [rsp + 0xe8]
cmp cx, word [rax]
jne 0x14008a6b9
inc r14b
add rax, 2
mov qword [rsp + 0xe8], rax
cmp cx, word [rax]
je 0x14008a6a0
mov byte [rsp + 0x49], r14b
lea rcx, [rsp + 0x90]
call fcn.140063500
nop
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x78], rax
movzx ecx, word [rax]
mov edx, 0x3d
test cx, cx
je 0x14008a6fa
cmp dx, cx
je 0x14008a6fa
add rax, 2
mov qword [rsp + 0xe8], rax
mov cx, word [rax]
test cx, cx
jne 0x14008a6e1
mov rcx, rax
xor sil, sil
mov byte [rsp + 0x41], sil
lea r8, [0x14014f7a8]
mov qword [rsp + 0x50], r8
cmp dx, word [rax]
je 0x14008a720
mov sil, 1
mov byte [rsp + 0x41], sil
jmp 0x14008a731
add rax, 2
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0x50], rax
xor ebx, ebx
mov word [rcx], bx
mov rcx, qword [rsp + 0x78]
call fcn.14002b47c
mov rax, qword [rsp + 0x78]
mov r8d, 0x7e
cmp r8w, word [rax]
jne 0x14008a7b1
add rax, 2
mov qword [rsp + 0x78], rax
mov rdx, rax
movzx ecx, word [rax]
test cx, cx
je 0x14008a77c
cmp r8w, cx
je 0x14008a77c
add rax, 2
mov qword [rsp + 0x78], rax
mov cx, word [rax]
test cx, cx
jne 0x14008a765
cmp r8w, word [rax]
je 0x14008a799
lea rcx, [rsp + 0x90]
call fcn.14005b520
mov eax, 0x80070057
jmp 0x14008bafc
mov word [rax], bx
add qword [rsp + 0x78], 2
cmp word [rdx], bx
cmove rdx, rbx
mov qword [rsp + 0x128], rdx
lea rcx, [rsp + 0x98]
call fcn.140063500
nop
mov ebx, 0x3b
mov r12d, 0x2c
mov r9d, r12d
mov word [rsp + 0x20], bx
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x78]
mov rcx, r15
call fcn.1400554c0
mov r9d, r12d
mov word [rsp + 0x20], bx
lea r8, [rsp + 0x98]
lea rdx, [rsp + 0x78]
mov rcx, r15
call fcn.1400554c0
mov r11, qword [rsp + 0x90]
mov qword [rsp + 0x78], r11
cmp r13d, 8
je 0x14008a84e
cmp word [r11], 0
jne 0x14008a84e
mov rax, qword [rsp + 0x98]
cmp word [rax], 0
jne 0x14008a84e
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
cmp r14b, 2
setge al
mov byte [rsp + 0xb0], al
xor ebx, ebx
mov r12, rbx
test al, al
cmovne r12, r15
mov qword [rsp + 0x110], r12
mov r14, r15
mov ecx, dword [rsp + 0xcc]
test ecx, ecx
jle 0x14008a8ae
sub ecx, 1
mov dword [rsp + 0xcc], ecx
js 0x14008a8a0
nop dword [rax]
mov r15, qword [r15 + 0x38]
sub ecx, 1
jns 0x14008a890
mov dword [rsp + 0xcc], ecx
test al, al
cmovne r12, r15
mov qword [rsp + 0x110], r12
test edi, edi
jle 0x14008a8c0
sub edi, 1
js 0x14008a8c0
mov r14, qword [r14 + 0x38]
sub edi, 1
jns 0x14008a8b7
test sil, sil
je 0x14008a8cd
mov byte [rsp + 0x48], bl
mov dword [rsp + 0x58], ebx
lea rdi, [0x14019cf50]
mov qword [rsp + 0x190], rdi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x120], rbx
test ebp, ebp
jle 0x14008a97f
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebx, eax
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea edx, [rax + rbx + 0xca]
lea rcx, [rsp + 0xc0]
call fcn.1400635c0
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xf8], rax
mov r10, qword [rsp + 0xc0]
mov qword [rsp + 0x148], r10
lea eax, [rbx + 0x29]
movsxd rcx, eax
lea rbp, [r10 + rcx*2]
mov qword [rsp + 0x120], rbp
jmp 0x14008b0aa
mov ebp, ebx
mov dword [rsp + 0x80], ebx
xor r13b, r13b
mov qword [rsp + 0x158], rbx
xor eax, eax
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], rax
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xb8], rbx
lea rcx, [rsp + 0x88]
call fcn.140063500
nop
mov qword [rsp + 0x68], rbx
lea rax, [rsp + 0x68]
mov qword [rsp + 0x150], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x130], rax
cmp dword [rsp + 0x4c], 0
jl 0x14008aa26
lea rdx, [rsp + 0x4c]
lea rcx, [rsp + 0x50]
call fcn.140066e40
test eax, eax
jle 0x14008aa1d
movzx eax, byte [rsp + 0x4c]
mov dword [rsp + 0x4c], eax
jmp 0x14008aeed
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
cmp byte [rsp + 0x70], 0
je 0x14008aa4d
mov rdx, qword [rsp + 0x50]
mov rcx, r14
call fcn.140067150
mov qword [rsp + 0x50], rax
mov ebp, 2
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
mov eax, dword [rsp + 0x58]
test al, al
jns 0x14008ab56
xor ebp, ebp
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x80], ebp
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xa8], rax
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0xa8]
call fcn.140066e10
mov rbx, qword [rsp + 0x108]
mov qword [rsp + 0x50], rbx
mov rax, qword [rsp + 0xa8]
cmp word [rax], bp
je 0x14008aab2
add rax, 2
mov qword [rsp + 0xa8], rax
test rbx, rbx
jne 0x14008aacc
lea rax, [0x14013f310]
mov qword [rsp + 0x50], rax
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
mov ecx, 0x2a
cmp cx, word [rax]
sete sil
test sil, sil
je 0x14008aae9
add rax, 2
mov qword [rsp + 0xa8], rax
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0xa8]
call fcn.140066e40
cmp eax, 1
jge 0x14008ab24
test sil, sil
je 0x14008ab15
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebp, eax
jmp 0x14008ab2b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebp, eax
add ebp, ebp
jmp 0x14008ab2b
mov ebp, dword [rsp + 0x80]
test ebp, ebp
js 0x14008b1f3
and ebp, 0x3fffffff
mov eax, dword [rsp + 0x58]
cmp eax, 0x81
je 0x14008b10f
movzx esi, byte [rsp + 0x41]
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
test eax, eax
je 0x14008ada3
xor eax, eax
lea r9d, [rax + 0x2c]
mov word [rsp + 0x20], ax
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x50]
mov rbp, qword [rsp + 0x118]
mov rcx, rbp
call fcn.1400554c0
or r9d, 0xffffffff
xor r8d, r8d
mov rdx, qword [rsp + 0x88]
mov rcx, r14
call fcn.14002b14c
mov r11, rax
test rax, rax
je 0x14008b319
lea rbx, [rax + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x50], rcx
mov eax, dword [rsp + 0x58]
cmp eax, 8
jne 0x14008ac28
mov edx, dword [r11 + 0x18]
and edx, 0x3fffffff
mov r8, qword [rsp + 0x98]
mov rcx, rbp
call fcn.140065f20
mov r11, qword [rsp + 0x78]
cmp word [r11], 0
je 0x14008b257
mov r8, qword [rbx]
lea rdx, str.0x_p
lea rcx, [rsp + 0x1a0]
call qword [sym.imp.USER32.dll_wsprintfW]
lea r11, [rsp + 0x1a0]
mov qword [rsp + 0x50], r11
lea rcx, [rsp + 0x1a0]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebp, eax
add ebp, ebp
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
cmp eax, 4
jne 0x14008ac48
mov rax, qword [rbx]
mov qword [rsp + 0x50], rax
mov ebp, dword [r11 + 0x18]
and ebp, 0x3fffffff
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
cmp eax, 1
jne 0x14008acef
mov esi, dword [r11 + 0x18]
sar esi, 1
and esi, 0x1fffffff
lea r12d, [rsi + rsi*4]
lea edx, [r12 + 1]
lea rcx, [rsp + 0x68]
call fcn.1400632e0
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r12d
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0x20], rbx
mov r9d, esi
mov r8, qword [rsp + 0x50]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ebp, eax
test eax, eax
jns 0x14008aca9
mov ebp, r13d
jmp 0x14008acb0
cmp eax, r12d
cmovg ebp, r12d
movsxd rax, ebp
mov byte [rax + rbx], r13b
lea eax, [rbp + 1]
cdq
sub eax, edx
sar eax, 1
movsxd rbx, eax
lea edx, [rbx + 1]
lea rcx, [rsp + 0x68]
call fcn.1400635c0
mov rax, qword [rsp + 0x68]
mov word [rax + rbx*2], r13w
mov r13b, 1
mov qword [rsp + 0x50], rax
mov sil, byte [rsp + 0x41]
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
cmp eax, 2
jne 0x14008ad65
mov ebx, dword [r11 + 0x18]
and ebx, 0x3fffffff
lea edx, [rbx + 1]
lea rcx, [rsp + 0x68]
call fcn.1400635c0
mov dword [rsp + 0x28], ebx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, ebx
mov r8, qword [rsp + 0x50]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ebx, eax
test eax, eax
mov ebp, 0
cmovs ebx, ebp
lea edx, [rbx + 1]
lea rcx, [rsp + 0x68]
call fcn.1400635c0
movsxd r11, ebx
mov rcx, qword [rsp + 0x68]
mov word [rcx + r11*2], bp
mov r13b, 1
mov qword [rsp + 0x50], rcx
lea ebp, [rbx + rbx]
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
cmp eax, 0x20
jne 0x14008b2b8
mov qword [rsp + 0x150], rbx
lea rsi, [r11 + 0x18]
mov qword [rsp + 0x130], rsi
mov r13b, 1
mov rax, qword [rbx]
mov qword [rsp + 0x50], rax
mov ebp, dword [rsi]
and ebp, 0x3fffffff
mov sil, byte [rsp + 0x41]
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
mov al, byte [rsp + 0x40]
test al, al
je 0x14008ade2
mov rdx, qword [rsp + 0x50]
cmp word [rdx], 0
je 0x14008ade2
movzx esi, byte [rsp + 0xa0]
or sil, al
lea rcx, [rsp + 0x88]
call fcn.140071360
mov rdx, rax
movzx r8d, sil
mov rcx, r14
call fcn.140089570
mov qword [rsp + 0x50], rax
mov esi, dword [rsp + 0xf0]
dec esi
js 0x14008ae1f
nop dword [rax]
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0xb8]
mov rdx, qword [rsp + 0x50]
mov rcx, r14
call fcn.14006bc40
mov r11, qword [rsp + 0xb8]
mov qword [rsp + 0x50], r11
sub esi, 1
jns 0x14008adf0
mov rax, qword [rsp + 0x50]
cmp word [rax], 0
je 0x14008ae55
lea r9, [rsp + 0x80]
mov r8, qword [rsp + 0x140]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x50]
call fcn.140077040
mov ebp, dword [rsp + 0x80]
mov rbx, qword [rsp + 0x68]
cmp qword [rsp + 0x50], rbx
sete r13b
cmp dword [rsp + 0x60], 0
jne 0x14008b855
mov ebx, dword [rsp + 0x44]
test ebx, ebx
jne 0x14008b5cb
cmp byte [rsp + 0x48], bl
je 0x14008aec9
test ebp, ebp
jle 0x14008b462
mov qword [rsp + 0x108], rdi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
or r9d, 0xffffffff
mov r8, r12
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b14c
mov r12, rax
test rax, rax
jne 0x14008b37d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov sil, byte [rsp + 0x41]
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
mov sil, byte [rsp + 0x41]
test sil, sil
je 0x14008aee3
cmp byte [rsp + 0xb0], 0
je 0x14008b4c3
jmp 0x14008aee9
mov eax, dword [rsp + 0x4c]
jmp 0x14008aeed
mov eax, dword [rsp + 0x4c]
xor r12d, r12d
cmp dword [rsp + 0xcc], r12d
je 0x14008af2b
cmp byte [rsp + 0x49], r12b
jne 0x14008af2b
test byte [r15 + 0xf], 0xf
jne 0x14008af2b
test r13b, r13b
jne 0x14008af2b
test eax, eax
jns 0x14008af2b
test sil, sil
jne 0x14008af2b
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
jmp 0x14008b05e
or r9d, 0xffffffff
mov r8, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b14c
mov rbx, rax
mov rsi, rax
test rax, rax
jne 0x14008afbf
cmp dword [rsp + 0x4c], r12d
jge 0x14008afaf
mov eax, ebp
test r13b, r13b
mov rcx, r12
cmovne eax, ecx
mov r8, qword [rsp + 0x50]
test r13b, r13b
lea rcx, [0x14014f7a8]
cmovne r8, rcx
mov dword [rsp + 0x20], eax
or r9d, 0xffffffff
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b058
mov rbx, rax
mov rax, qword [rsp + 0x128]
test rax, rax
je 0x14008afaa
test rbx, rbx
je 0x14008afaf
lea rcx, [rbx + 0x10]
mov rdx, rax
call fcn.140071480
test rbx, rbx
jne 0x14008afbf
mov r12d, 1
mov sil, byte [rsp + 0x41]
jmp 0x14008b05e
mov eax, dword [rsp + 0x4c]
test eax, eax
js 0x14008afe4
mov r8d, dword [rbx + 0x18]
and r8d, 0x3fffffff
mov edx, eax
mov rcx, qword [rbx + 8]
call fcn.14010c6c0
mov sil, byte [rsp + 0x41]
jmp 0x14008b05e
cmp byte [rsp + 0x41], r12b
jne 0x14008b052
test rsi, rsi
je 0x14008afff
cmp dword [rsi + 0x18], 0xfffff000
jge 0x14008afff
xor eax, eax
mov qword [rsi + 8], rax
test r13b, r13b
je 0x14008b031
mov eax, dword [rbx + 0x18]
mov rcx, qword [rsp + 0x130]
mov dword [rcx], eax
mov rdx, qword [rsp + 0x150]
mov rcx, qword [rdx]
mov rax, qword [rbx + 8]
mov qword [rdx], rax
mov qword [rbx + 8], rcx
mov dword [rbx + 0x18], ebp
mov sil, byte [rsp + 0x41]
jmp 0x14008b05e
test rsi, rsi
je 0x14008b059
lea rdx, [rbx + 0x18]
lea rcx, [rbx + 8]
mov r9d, ebp
mov r8, qword [rsp + 0x50]
call fcn.140065830
mov sil, byte [rsp + 0x41]
jmp 0x14008b05e
mov sil, byte [rsp + 0x41]
jmp 0x14008b05e
mov sil, byte [rsp + 0x41]
cmp dword [rsp + 0xc8], 0
jle 0x14008b569
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
mov r12, qword [rsp + 0x110]
mov r10, qword [rsp + 0x148]
mov rbp, qword [rsp + 0x120]
dec dword [rsp + 0xc8]
mov qword [rsp + 0x78], r10
mov r13d, dword [rsp + 0xf4]
mov r9d, r13d
mov r8d, r13d
mov rdx, qword [rsp + 0x138]
mov rcx, r10
call qword [sym.imp.USER32.dll_wsprintfW]
mov qword [rsp + 0x50], rbp
mov ebx, dword [rsp + 0x84]
mov r8d, ebx
mov rdx, qword [rsp + 0xf8]
mov rcx, rbp
call fcn.14005e6b0
inc r13d
mov dword [rsp + 0xf4], r13d
inc ebx
mov dword [rsp + 0x84], ebx
xor ebx, ebx
jmp 0x14008a97f
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0xf8], rbx
or r9d, 0xffffffff
xor r8d, r8d
mov rdx, qword [rsp + 0x88]
mov rcx, r14
call fcn.14002b14c
mov r11, rax
test rax, rax
je 0x14008b149
cmp dword [rax + 0x18], 0
jge 0x14008b16a
xor eax, eax
mov qword [r11 + 8], rax
jmp 0x14008b16a
xor eax, eax
mov dword [rsp + 0x20], eax
or r9d, 0xffffffff
lea r8, [0x14014f7a8]
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b058
mov r11, rax
or ebp, 0x80000000
mov dword [r11 + 0x18], ebp
mov rax, qword [r11 + 8]
mov qword [r11 + 8], rbx
mov qword [rsp + 0xf8], rax
lea rcx, [rsp + 0xf8]
call fcn.14005b520
nop
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
mov eax, 0x80070057
jmp 0x14008bafc
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
mov eax, 0x80070057
jmp 0x14008bafc
mov eax, dword [rax + 0x18]
mov esi, eax
and esi, 0x3fffffff
mov r15, qword [r12 + 8]
test eax, eax
sets r14b
test r14b, r14b
je 0x14008b39f
xor eax, eax
mov qword [r12 + 8], rax
lea eax, [rsi + rbp]
mov dword [rsp + 0xd0], eax
cdq
sub eax, edx
sar eax, 1
movsxd rbx, eax
lea edx, [rbx + 2]
lea rcx, [r12 + 8]
call fcn.1400635c0
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax + rbx*2 + 2], cx
mov rax, qword [r12 + 8]
mov word [rax + rbx*2], cx
mov rbx, qword [r12 + 8]
movzx eax, byte [rsp + 0x48]
cmp al, 1
jne 0x14008b409
test r14b, r14b
je 0x14008b3f4
movsxd r8, esi
mov rdx, r15
mov rcx, rbx
call fcn.14010cd30
movsxd r8, ebp
movsxd rcx, esi
add rcx, rbx
mov rdx, qword [rsp + 0x50]
call fcn.14010cd30
jmp 0x14008b448
cmp al, 2
jne 0x14008b448
test r14b, r14b
je 0x14008b426
movsxd rbp, ebp
movsxd r8, esi
lea rcx, [rbx + rbp]
mov rdx, r15
call fcn.14010cd30
jmp 0x14008b438
movsxd rbp, ebp
movsxd r8, esi
lea rcx, [rbx + rbp]
mov rdx, rbx
call fcn.14010cd30
mov r8, rbp
mov rdx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.14010cd30
mov eax, dword [rsp + 0xd0]
mov dword [r12 + 0x18], eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b508
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
or r9d, 0xffffffff
mov r8, r12
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b14c
mov rbx, rax
test rax, rax
je 0x14008b508
cmp dword [rax + 0x18], 0xfffff000
jge 0x14008b4f3
mov rax, qword [rax + 8]
xor ecx, ecx
mov word [rax], cx
jmp 0x14008b508
lea rcx, [rax + 8]
lea rdx, [0x14014f7a8]
call fcn.140071360
xor eax, eax
mov dword [rbx + 0x18], eax
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
mov eax, r12d
jmp 0x14008bafc
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xd0], rax
xorpd xmm0, xmm0
movsd qword [rsp + 0xa0], xmm0
cmp dword [rsp + 0xe0], 0
je 0x14008b618
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xd0]
call fcn.140066b90
cvtsd2ss xmm5, qword [rsp + 0xa0]
movss dword [rsp + 0x158], xmm5
jmp 0x14008b693
cmp dword [rsp + 0xd8], 0
je 0x14008b64b
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xd0]
call fcn.140066b90
movsd xmm5, qword [rsp + 0xa0]
movsd qword [rsp + 0x158], xmm5
jmp 0x14008b693
cmp dword [rsp + 0xdc], 0
je 0x14008b67e
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xd0]
call fcn.140066b90
movsd xmm5, qword [rsp + 0xa0]
movsd qword [rsp + 0x158], xmm5
jmp 0x14008b693
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0xd0]
call fcn.140066e10
xor esi, esi
mov r13d, esi
mov dword [rsp + 0xa0], esi
mov rax, qword [rsp + 0xd0]
cmp word [rax], si
je 0x14008b6d5
add rax, 2
mov qword [rsp + 0xd0], rax
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xd0]
call fcn.140066e40
mov r13d, dword [rsp + 0xa0]
lea r14d, [r13 + rbx]
or r9d, 0xffffffff
mov r8, r12
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b14c
mov rbp, rax
test rax, rax
jne 0x14008b780
mov dword [rsp + 0x20], esi
or r9d, 0xffffffff
lea r8, [0x14014f7a8]
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b058
mov rbp, rax
test rax, rax
jne 0x14008b780
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
lea eax, [rbp + 1]
jmp 0x14008bafc
mov r12d, r14d
sub r12d, dword [rbp + 0x18]
test r12d, r12d
jle 0x14008b7dc
lea eax, [r14 + 1]
cdq
sub eax, edx
sar eax, 1
movsxd rbx, eax
lea edx, [rbx + 2]
lea rcx, [rbp + 8]
call fcn.1400635c0
movsxd r8, r12d
movsxd rcx, dword [rbp + 0x18]
add rcx, qword [rbp + 8]
xor edx, edx
call fcn.14010c6c0
mov rax, qword [rbp + 8]
xor ecx, ecx
mov word [rax + rbx*2 + 2], cx
mov rax, qword [rbp + 8]
mov word [rax + rbx*2], cx
movsxd rcx, r14d
mov rax, qword [rbp + 8]
mov byte [rcx + rax], sil
mov dword [rbp + 0x18], r14d
mov ebx, dword [rsp + 0x44]
movsxd r8, ebx
movsxd rcx, r13d
add rcx, qword [rbp + 8]
lea rdx, [rsp + 0x158]
call fcn.14010cd30
nop
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0xa8]
call fcn.140063500
nop
mov eax, 0x2c
lea r9d, [rax + 0xe]
mov word [rsp + 0x20], ax
lea r8, [rsp + 0xa8]
lea rdx, [rsp + 0xe8]
mov rcx, qword [rsp + 0x118]
call fcn.1400554c0
mov r11, qword [rsp + 0xa8]
cmp word [r11], 0
jne 0x14008b919
lea rcx, [rsp + 0xa8]
call fcn.14005b520
nop
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
xor eax, eax
jmp 0x14008bafc
xor r13d, r13d
mov dword [rsp + 0xa0], r13d
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xe8]
call fcn.140066e40
movsxd rbx, dword [rsp + 0xa0]
movsxd rbp, dword [rsp + 0x44]
lea esi, [rbx + rbp]
mov word [rsp + 0x1e0], r13w
or r9d, 0xffffffff
mov r8, r12
mov rdx, qword [rsp + 0x78]
mov rcx, r15
call fcn.14002b14c
mov ecx, r13d
test rax, rax
je 0x14008b977
mov ecx, dword [rax + 0x18]
and ecx, 0x3fffffff
cmp ecx, esi
jl 0x14008ba74
mov dword [rsp + 0xd0], r13d
mov r8, rbp
mov rdx, rbx
add rdx, qword [rax + 8]
lea rcx, [rsp + 0x158]
call fcn.14010cd30
cmp dword [rsp + 0xe0], r13d
je 0x14008b9d3
movd xmm2, dword [rsp + 0x158]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, [0x140151410]
lea rcx, [rsp + 0x1e0]
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x14008ba74
cmp dword [rsp + 0xd8], r13d
je 0x14008ba02
movsd xmm2, qword [rsp + 0x158]
movq r8, xmm2
lea rdx, [0x140151408]
lea rcx, [rsp + 0x1e0]
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x14008ba74
cmp dword [rsp + 0xdc], r13d
je 0x14008ba31
movsd xmm2, qword [rsp + 0x158]
movq r8, xmm2
lea rdx, [0x140151408]
lea rcx, [rsp + 0x1e0]
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x14008ba74
cmp dword [rsp + 0x60], 0x64
jne 0x14008ba57
mov r8, qword [rsp + 0x158]
lea rdx, str.0x_p
lea rcx, [rsp + 0x1e0]
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x14008ba74
mov r8, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x158]
lea rcx, [rsp + 0x1e0]
call fcn.140062c40
lea r8, [rsp + 0x1e0]
mov rdx, qword [rsp + 0xa8]
mov rcx, r15
call fcn.140061290
nop
lea rcx, [rsp + 0xa8]
call fcn.14005b520
nop
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0xb8]
call fcn.14005b520
nop
lea rcx, [rsp + 0xc0]
call fcn.14005b520
nop
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
mov eax, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.14010bcc0
mov rbx, qword [rsp + 0x2e0]
add rsp, 0x290
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret