Function at 0x1400927ec
Capabilities:
Resolve function by parsing pe exports
Set environment variable

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], r9
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2d0
xor r8d, r8d
mov rbx, rdx
or rdx, 0xffffffffffffffff
mov rax, r8
lea r12d, [r8 + 1]
mov r14, rcx
movaps xmmword [r11 - 0x48], xmm6
mov qword [rsp + 0x148], rax
mov qword [r11 - 0x228], rax
mov qword [rsp + 0x138], rax
mov qword [r11 - 0x220], rax
lea rax, str._I64d
mov cl, r8b
mov qword [rsp + 0x188], r8
mov byte [rsp + 0x50], r8b
mov byte [rsp + 0x98], r8b
mov qword [rsp + 0xc0], rax
mov byte [rsp + 0x40], cl
mov rbp, r8
mov qword [rsp + 0xd0], r8
mov r13, r8
mov qword [rsp + 0xf8], r8
mov rsi, r8
mov qword [rsp + 0x150], r12
mov rdi, r8
mov qword [rsp + 0x128], r8
mov qword [rsp + 0x130], r8
mov qword [rsp + 0x140], r8
mov qword [r11 - 0x1b0], r8
mov qword [rsp + 0x68], r8
mov qword [rsp + 0xd8], r8
mov qword [r11 - 0x218], r8
mov qword [rsp + 0x118], rdx
mov dword [rsp + 0xb8], edx
lea r10d, [r8 + 8]
cmp r9, r8
je 0x14009356a
mov r11, r9
cmp word [r9], r8w
je 0x14009356a
mov r15b, byte [rsp + 0x330]
lea edx, [r8 + 9]
lea r14d, [rdi + 6]
lea r8d, [rdi + 0x2e]
xor ebx, ebx
cmp dx, word [r11]
ja 0x14009291a
cmp word [r11], 0xd
jbe 0x140092a0b
mov eax, 0x20
cmp ax, word [r11]
je 0x140092a0b
cmp r8w, word [r11]
je 0x1400929fd
mov eax, 0x24
cmp ax, word [r11]
je 0x1400929fd
mov eax, 0x25
cmp ax, word [r11]
je 0x1400929fd
mov eax, 0x2a
cmp ax, word [r11]
jne 0x140092961
or cl, 4
jmp 0x1400929b7
mov r9d, 0x7e
cmp r9w, word [r11]
jne 0x1400929bd
cmp r9w, word [r11 + 2]
jne 0x140092979
or cl, 2
jmp 0x1400929a4
cmp r9w, word [r11]
jne 0x1400929bd
cmp r8w, word [r11 + 2]
jne 0x14009298b
or cl, r10b
jmp 0x1400929a4
cmp r9w, word [r11]
jne 0x1400929bd
mov r14d, eax
cmp r14w, word [r11 + 2]
mov r14d, 6
jne 0x1400929ae
or cl, 0xa
mov byte [rsp + 0x40], cl
add r11, 2
jmp 0x1400929fd
cmp r9w, word [r11]
jne 0x1400929bd
or cl, r12b
mov byte [rsp + 0x40], cl
jmp 0x1400929fd
lea rcx, str._std
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092aba
add r11, r14
mov qword [rsp + 0x150], 0x80
mov r10d, 8
mov r8d, 0x2e
lea edx, [r8 - 0x25]
mov cl, byte [rsp + 0x40]
add r11, 2
cmp word [r11], bx
jne 0x140092909
mov r14, qword [rsp + 0x310]
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0xd0], rbp
cmp rdi, rbx
mov rbx, qword [rsp + 0x318]
mov qword [rsp + 0xd0], rbp
mov byte [rsp + 0x51], r15b
mov qword [rsp + 0xd0], rbp
je 0x140092aa5
mov rax, qword [rsp + 0x328]
xor r8d, r8d
mov rbx, rax
movzx eax, word [rax]
cmp ax, r8w
je 0x140092aa5
lea ecx, [r8 + 0x20]
cmp dx, ax
ja 0x140092a93
cmp ax, 0xd
jbe 0x140092aa5
cmp cx, ax
je 0x140092aa5
add rbx, 2
mov ax, word [rbx]
cmp ax, r8w
jne 0x140092a88
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x138], rax
jmp 0x140093577
lea rcx, str._env
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092ae8
mov eax, 0x40
add r11, r14
mov qword [rsp + 0x150], rax
jmp 0x1400929e9
lea rcx, str._raw
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092b0e
add r11, r14
mov edi, 0x40
jmp 0x1400929e9
mov eax, 0x3c
cmp ax, word [r11]
jne 0x140092b23
mov byte [rsp + 0x50], r12b
jmp 0x1400929e9
mov eax, 0x3e
cmp ax, word [r11]
jne 0x140092b38
mov byte [rsp + 0x50], 2
jmp 0x1400929e9
lea rcx, str._def
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092b5d
add r11, r14
add r15b, 2
jmp 0x1400929e9
lea rcx, str._tom
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092b81
add r11, r14
mov rbp, r12
jmp 0x1400929e9
lea rcx, str._tow
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092ba7
add r11, r14
mov ebp, 2
jmp 0x1400929e9
lea rcx, str._copy
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092bd2
mov r10d, 8
add r11, r10
lea ebp, [r10 - 4]
jmp 0x1400929ef
lea rcx, str._cmp
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092bfe
mov r10d, 8
mov ebp, 0x100
add r11, r10
jmp 0x1400929ef
lea rcx, str._addr
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092c28
mov r10d, 8
add r11, r10
mov rbp, r10
jmp 0x1400929ef
lea rcx, str._mkfixdummy
mov r8d, 0xb
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092c4f
add r11, 0x14
mov ebp, 0x83
jmp 0x1400929e9
lea rcx, str._mkdummy
mov r8d, 8
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092c76
add r11, 0xe
mov ebp, 0x81
jmp 0x1400929e9
lea rcx, str._make
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092ca1
mov r10d, 8
add r11, r10
lea ebp, [r10 + 0x78]
jmp 0x1400929ef
lea rcx, str._swap
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092ccc
mov r10d, 8
add r11, r10
lea ebp, [r10 + 0x18]
jmp 0x1400929ef
lea rcx, str._char
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092cf8
mov qword [rsp + 0x68], r12
mov r10d, 8
add r11, r10
jmp 0x1400929ef
lea rcx, str._wchar
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092d20
mov qword [rsp + 0x68], 2
add r11, 0xa
jmp 0x1400929e9
lea rcx, str._short
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
jne 0x140092d0e
lea rcx, str._ptr
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092d62
mov r10d, 8
add r11, r14
mov qword [rsp + 0x68], r10
jmp 0x1400929ef
lea rcx, str._float
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092d8c
mov eax, 4
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x68], rax
jmp 0x140092d17
lea rcx, str._double
mov r8d, 7
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092dc1
mov r10d, 8
add r11, 0xc
mov qword [rsp + 0x130], r10
mov qword [rsp + 0x68], r10
jmp 0x1400929ef
lea rcx, str._ldouble
mov r8d, 8
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092df6
mov r10d, 8
add r11, 0xe
mov qword [rsp + 0x140], r10
mov qword [rsp + 0x68], r10
jmp 0x1400929ef
lea rcx, str._int64
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092e20
add r11, 0xa
mov r10d, 8
mov qword [rsp + 0x68], r10
jmp 0x1400929ef
lea rcx, str._longlong
mov r8d, 9
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092e3f
add r11, 0x10
jmp 0x140092e10
lea rcx, str._long
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092e66
mov qword [rsp + 0x68], 4
jmp 0x140092cea
lea rcx, str._long
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
jne 0x140092e58
lea rcx, str._zero
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092ead
mov r10d, 8
mov dword [rsp + 0xb8], ebx
add r11, r10
jmp 0x1400929ef
lea rcx, str._intsys
mov r8d, 7
mov rdx, r11
call fcn.140050a6c
cmp al, bl
jne 0x140093227
lea rcx, str._int
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092f0d
movzx eax, word [r11 + 8]
mov ecx, 0xffdf
and ax, cx
cmp ax, 0x41
jb 0x140092efc
cmp ax, 0x5a
jbe 0x140092f0d
add r11, r14
mov qword [rsp + 0x68], 4
jmp 0x1400929e9
lea rcx, [0x1400f98ec]
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092f66
mov r10d, 8
lea rcx, [0x1400f3570]
mov qword [rsp + 0x68], r12
lea edx, [r10 + 0x28]
add r11, r10
mov qword [rsp + 0xd8], r12
mov qword [rsp + 0xc0], rcx
cmp dx, word [r11 + 2]
jne 0x1400932e4
lea rcx, str.0x_02I64X
jmp 0x140092fe7
lea rcx, [0x1400f98cc]
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092f91
mov r8d, 2
mov qword [rsp + 0x68], r8
mov qword [rsp + 0xd8], r8
jmp 0x140092fb9
lea rcx, [0x1400f98c4]
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140092ff8
mov eax, 2
mov qword [rsp + 0x68], rax
mov qword [rsp + 0xd8], rax
mov edx, 0x30
lea rcx, [0x1400f3570]
add r11, 0xa
mov qword [rsp + 0xc0], rcx
lea r10d, [rdx - 0x28]
cmp dx, word [r11 + 2]
jne 0x1400932e4
lea rcx, str.0x_04I64X
add r11, 2
mov qword [rsp + 0xc0], rcx
jmp 0x1400932e4
lea rcx, [0x1400f98a8]
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140093052
mov r10d, 8
add r11, r14
lea rcx, [0x1400f3570]
lea edx, [r10 + 0x28]
mov qword [rsp + 0xd8], 0x64
mov qword [rsp + 0x68], r10
mov qword [rsp + 0xc0], rcx
cmp dx, word [r11 + 2]
jne 0x1400932e4
add r11, 2
jmp 0x1400932e4
lea rcx, [0x1400f98a0]
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x14009309a
mov r13, qword [rsp + 0xf8]
add r11, 0xa
mov qword [rsp + 0x128], 4
mov qword [rsp + 0x68], 4
mov qword [rsp + 0xd8], 4
jmp 0x1400929e9
lea rcx, [0x1400f9898]
mov r8d, 7
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x1400930df
mov r10d, 8
add r11, 0xc
mov qword [rsp + 0x130], r10
mov r13, qword [rsp + 0xf8]
mov qword [rsp + 0x68], r10
mov qword [rsp + 0xd8], r10
jmp 0x1400929ef
lea rcx, [0x1400f9888]
mov r8d, 8
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x14009310c
mov r10d, 8
add r11, 0xe
mov qword [rsp + 0x140], r10
jmp 0x1400930c5
lea rcx, [0x1400f987c]
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140093128
add r11, 0xa
jmp 0x140093145
lea rcx, [0x1400f9870]
mov r8d, 9
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140093173
add r11, 0x10
mov r10d, 8
mov qword [rsp + 0x68], r10
mov qword [rsp + 0xd8], r10
lea ecx, [r10 + 0x28]
cmp cx, word [r11 + 2]
jne 0x1400932dc
lea rcx, str.0x_016I64X
jmp 0x140092fe7
lea rcx, [0x1400f984c]
mov r8d, 5
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x1400931e3
mov r10d, 8
lea rcx, [0x1400f3570]
mov qword [rsp + 0x68], 4
lea edx, [r10 + 0x28]
add r11, r10
mov qword [rsp + 0xd8], 4
mov qword [rsp + 0xc0], rcx
cmp dx, word [r11 + 2]
jne 0x1400932e4
lea rax, str.0x_08I64X
add r11, 2
mov rcx, rax
mov qword [rsp + 0xc0], rax
jmp 0x1400932e4
lea rcx, str._intpe
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140093202
add r11, 0xa
jmp 0x1400932b3
lea rcx, [0x1400f9828]
mov r8d, 7
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x14009327a
mov qword [rsp + 0xd8], 4
mov al, byte [0x140109008]
add r11, 0xc
mov edx, 4
lea r10d, [rdx + 4]
cmp al, 3
lea rcx, [r11 + 2]
cmove rdx, r10
lea r8d, [r10 + 0x26]
mov qword [rsp + 0x68], rdx
lea edx, [r10 + 0x28]
cmp dx, word [rcx]
lea edx, [r10 + 1]
jne 0x1400929f9
mov r11, rcx
cmp al, 3
lea rcx, str.0x_016I64X
lea rax, str.0x_08I64X
cmovne rcx, rax
jmp 0x14009330c
lea rcx, [0x1400f981c]
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140093319
movzx eax, word [r11 + 8]
mov ecx, 0xffdf
and ax, cx
cmp ax, 0x41
jb 0x1400932b0
cmp ax, 0x5a
jbe 0x140093319
add r11, r14
mov ecx, 0x30
mov qword [rsp + 0xd8], 4
mov qword [rsp + 0x68], 4
lea r10d, [rcx - 0x28]
cmp cx, word [r11 + 2]
je 0x1400931c8
mov rcx, qword [rsp + 0xc0]
mov r13, qword [rsp + 0xf8]
mov edx, 0x40
cmp dx, word [r11 + 2]
lea r8d, [rdx - 0x12]
lea edx, [r8 - 0x25]
jne 0x1400929f9
add r11, 2
add rcx, 4
mov qword [rsp + 0xc0], rcx
jmp 0x1400929f9
lea rcx, str._ret
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x1400933bd
mov r10d, 8
mov r13, r12
mov qword [rsp + 0xf8], r12
add r11, r10
lea eax, [r10 + 0x32]
mov qword [rsp + 0x100], r12
mov qword [rsp + 0x58], r11
cmp ax, word [r11]
jne 0x14009336a
add r11, 2
mov qword [rsp + 0x58], r11
mov eax, 0x30
cmp word [r11], ax
jb 0x14009337c
cmp word [r11], 0x39
jbe 0x140093387
mov eax, 0x28
cmp ax, word [r11]
jne 0x1400933b4
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x58]
call fcn.140065394
mov r13, qword [rsp + 0x100]
mov qword [rsp + 0xf8], r13
mov r11, qword [rsp + 0x58]
mov r10d, 8
sub r11, 2
jmp 0x1400929ef
lea rcx, str._get
mov r8d, 4
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x14009343e
mov r10d, 8
mov rsi, r12
mov qword [rsp + 0x100], r12
add r11, r10
lea eax, [r10 + 0x32]
mov qword [rsp + 0x58], r11
cmp ax, word [r11]
jne 0x140093402
add r11, 2
mov qword [rsp + 0x58], r11
mov eax, 0x30
cmp word [r11], ax
jb 0x140093414
cmp word [r11], 0x39
jbe 0x14009341f
mov eax, 0x28
cmp ax, word [r11]
jne 0x1400933b4
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x58]
call fcn.140065394
mov rsi, qword [rsp + 0x100]
jmp 0x1400933a9
lea rcx, [0x1400f9808]
mov r8d, 3
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x140093468
add r11, 4
mov byte [rsp + 0x98], r12b
jmp 0x1400929e9
lea rcx, [0x1400f8584]
mov r8d, 2
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x1400934b2
add r11, 4
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x158], r12
call fcn.140065394
mov r11, qword [rsp + 0x58]
sub r11, 2
jmp 0x1400929e9
lea rcx, [0x1400f9804]
mov r8d, 2
mov rdx, r11
call fcn.140050a6c
cmp al, bl
je 0x1400929e9
add r11, 4
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], r11
call fcn.14008e204
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x58]
call fcn.14008e204
mov r14, qword [rsp + 0xe0]
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x148], r14
mov qword [rsp + 0xe8], r14
call fcn.140065394
mov rdx, qword [rsp + 0xf0]
mov r11, qword [rsp + 0x58]
mov cl, byte [rsp + 0x40]
sub rdx, r14
add rdx, r12
cmp word [r11], 0x5d
mov qword [rsp + 0x118], rdx
mov edx, 9
lea r14d, [rdx - 3]
lea r8d, [rdx + 0x25]
lea r10d, [rdx - 1]
je 0x1400929fd
sub r11, 2
jmp 0x1400929fd
mov r15b, byte [rsp + 0x330]
mov byte [rsp + 0x51], r15b
lea rcx, [rsp + 0x108]
mov qword [rsp + 0x108], rbx
call fcn.14004f534
mov rax, qword [rsp + 0x108]
mov ecx, 0x26
cmp cx, word [rax]
jne 0x1400935b7
add rax, 2
add r15b, r12b
mov qword [rsp + 0x108], rax
cmp cx, word [rax]
je 0x14009359e
mov byte [rsp + 0x51], r15b
lea rcx, [rsp + 0x120]
call fcn.140057154
mov r11, qword [rsp + 0x108]
mov ecx, 0x3d
mov qword [rsp + 0x80], r11
xor edi, edi
jmp 0x1400935ee
cmp cx, ax
je 0x1400935f7
add r11, 2
mov qword [rsp + 0x108], r11
movzx eax, word [r11]
cmp ax, di
jne 0x1400935dd
lea rdx, [0x1400ee4c4]
mov bl, dil
mov rax, r11
mov qword [rsp + 0x48], rdx
mov byte [rsp + 0x318], bl
cmp cx, word [r11]
je 0x140093622
mov bl, r12b
mov byte [rsp + 0x318], bl
jmp 0x140093633
add r11, 2
mov qword [rsp + 0x108], r11
mov qword [rsp + 0x48], r11
mov word [rax], di
mov rcx, qword [rsp + 0x80]
call fcn.140016268
mov rax, qword [rsp + 0x80]
mov r8d, 0x7e
cmp r8w, word [rax]
jne 0x1400936a4
add rax, 2
mov rdx, rax
jmp 0x14009366a
cmp r8w, cx
je 0x14009367a
add rax, 2
mov qword [rsp + 0x80], rax
movzx ecx, word [rax]
cmp cx, di
jne 0x140093660
cmp r8w, word [rax]
jne 0x140094833
mov word [rax], di
add qword [rsp + 0x80], 2
movzx eax, word [rdx]
neg ax
sbb rax, rax
and rax, rdx
mov qword [rsp + 0x188], rax
lea rcx, [rsp + 0x78]
call fcn.140057154
mov ecx, 0x3b
lea r8, [rsp + 0x120]
lea r9d, [rcx - 0xf]
mov word [rsp + 0x20], cx
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.1400493d4
mov eax, 0x3b
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x80]
lea r9d, [rax - 0xf]
mov rcx, r14
mov word [rsp + 0x20], ax
call fcn.1400493d4
mov r11, qword [rsp + 0x120]
mov eax, 8
mov qword [rsp + 0x80], r11
cmp rbp, rax
je 0x140093733
cmp word [r11], di
jne 0x140093733
mov rax, qword [rsp + 0x78]
cmp word [rax], di
jne 0x140093733
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, rdi
jmp 0x140095155
cmp r15b, 2
mov rdi, r14
mov qword [rsp + 0xe8], r14
setge cl
mov r15, r14
mov qword [rsp + 0x58], r14
mov al, cl
mov byte [rsp + 0xc8], cl
neg al
sbb rax, rax
and rax, r14
xor r14d, r14d
cmp r13, r14
mov qword [rsp + 0xa8], rax
jle 0x1400937a0
sub r13, r12
mov qword [rsp + 0xf8], r13
js 0x140093791
sub r13, r12
mov r15, qword [r15 + 0x38]
jns 0x14009377b
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0x58], r15
cmp cl, r14b
cmovne rax, r15
mov qword [rsp + 0xa8], rax
cmp rsi, r14
jle 0x1400937bb
sub rsi, r12
js 0x1400937bb
sub rsi, r12
mov rdi, qword [rdi + 0x38]
jns 0x1400937aa
mov qword [rsp + 0xe8], rdi
cmp bl, r14b
je 0x1400937d0
mov byte [rsp + 0x50], r14b
mov rbp, r14
mov qword [rsp + 0xd0], r14
lea rbx, [0x14010ce50]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rsp + 0x118], r14
mov qword [rsp + 0xa0], r14
xorpd xmm6, xmm6
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x110], r14
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x160], r14
jle 0x14009388f
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, qword [rsp + 0x48]
movsxd rdi, eax
add rdi, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rcx, eax
add rcx, r12
lea rdx, [rcx + rdi + 0xc8]
lea rcx, [rsp + 0xa0]
call fcn.140057254
mov rbp, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x48]
lea rdi, [rbp + rdi*2 + 0x50]
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x160], rdi
mov qword [rsp + 0x190], rbp
mov qword [rsp + 0x110], rcx
jmp 0x140094778
xor edx, edx
lea rcx, [rsp + 0x1a8]
mov r13, r14
lea r8d, [rdx + 0x28]
mov qword [rsp + 0xb0], r14
mov byte [rsp + 0x41], r14b
mov qword [rsp + 0x1a0], r14
call fcn.1400d1fa0
xor eax, eax
lea rcx, [rsp + 0x70]
lea r14, [rsp + 0x1a0]
mov qword [rsp + 0x90], rax
call fcn.140057154
xor r8d, r8d
lea rax, [rsp + 0x60]
cmp dword [rsp + 0xb8], r8d
mov qword [rsp + 0x100], rax
lea rax, [rsp + 0x198]
mov qword [rsp + 0x180], rax
mov rax, r8
mov rsi, r8
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x168], r8
mov qword [rsp + 0x170], rax
mov qword [rsp + 0xe0], rax
jl 0x140093a23
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x48]
mov byte [rsp + 0x42], r8b
call fcn.140006aac
xor r8d, r8d
cmp eax, r8d
jle 0x140093955
movzx eax, byte [rsp + 0xb8]
mov dword [rsp + 0xb8], eax
mov rdi, qword [rsp + 0x48]
cmp word [rdi], r8w
je 0x1400939b4
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x48]
call fcn.140072294
mov rdi, qword [rsp + 0x48]
xor r8d, r8d
cmp word [rdi], r8w
je 0x1400939b4
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x48]
call fcn.140072294
mov rax, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0x48]
mov qword [rsp + 0x170], rax
xor r8d, r8d
mov r14b, r13b
mov rsi, qword [rsp + 0xa8]
mov al, byte [rsp + 0x318]
mov ebp, r8d
cmp qword [rsp + 0xf8], r8
je 0x140094593
cmp byte [rsp + 0x51], r8b
jne 0x140094593
test byte [r15 + 0xd], 0xf
jne 0x140094593
cmp r14b, r8b
jne 0x140094593
cmp dword [rsp + 0xb8], r8d
jge 0x140094593
cmp al, r8b
jne 0x140094593
mov rcx, qword [rsp + 0x80]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
jmp 0x14009472e
cmp byte [rsp + 0x98], r8b
je 0x140093a55
mov rdx, qword [rsp + 0x48]
mov rcx, rdi
call fcn.14005b3c4
mov r13d, 2
mov rdi, rax
mov qword [rsp + 0x48], rax
mov r14b, byte [rsp + 0x41]
xor r8d, r8d
jmp 0x1400939b7
test bpl, bpl
jns 0x140093eb5
mov rdx, qword [rsp + 0x48]
or r10, 0xffffffffffffffff
mov qword [rsp + 0xf0], r8
lea eax, [r10 + 0x27]
mov qword [rsp + 0xb0], r8
mov rsi, r10
mov rdi, rdx
mov qword [rsp + 0x88], rdx
mov r14b, r8b
mov byte [rsp + 0x42], r8b
mov rbp, r8
mov qword [rsp + 0xe0], r8
cmp ax, word [rdx]
jne 0x140093b99
mov r14b, r12b
lea ecx, [rax + 6]
lea esi, [rax + 0x1a]
lea r9d, [r10 + 0x3c]
lea r11d, [r10 + 0x3b]
cmp r9w, ax
je 0x140093ad9
cmp cx, ax
je 0x140093ad9
cmp r11w, ax
je 0x140093ad9
cmp si, ax
je 0x140093ad9
add rdi, 2
mov ax, word [rdi]
cmp ax, r8w
jne 0x140093ab6
mov ax, word [rdi]
mov qword [rsp + 0x88], rdi
cmp ax, r8w
je 0x140093aff
mov word [rdi], r8w
mov rdx, qword [rsp + 0x48]
add rdi, 2
mov qword [rsp + 0x88], rdi
cmp si, ax
jne 0x140093b59
mov ax, word [rdi]
mov rbp, rdi
mov qword [rsp + 0xe0], rdi
cmp ax, r8w
je 0x140093b59
cmp r9w, ax
je 0x140093b36
cmp cx, ax
je 0x140093b36
cmp r11w, ax
je 0x140093b36
add rdi, 2
mov ax, word [rdi]
cmp ax, r8w
jne 0x140093b18
mov qword [rsp + 0x88], rdi
cmp word [rdi], r8w
je 0x140093b59
mov word [rdi], r8w
mov rdx, qword [rsp + 0x48]
add rdi, 2
mov qword [rsp + 0x88], rdi
mov rcx, qword [rsp + 0xe8]
mov r9d, r10d
mov qword [rsp + 0x20], r8
call fcn.140016070
xor r13d, r13d
cmp rax, r13
je 0x1400947ed
mov rcx, qword [rax + 8]
mov qword [rsp + 0x48], rcx
mov rsi, qword [rax + 0x18]
movabs rax, 0x3fffffffffffffff
and rsi, rax
jmp 0x140093cf8
lea rcx, str._shm_
mov r8d, 5
call qword [sym.imp.SHLWAPI.dll_StrCmpNIW]
xor r13d, r13d
cmp eax, r13d
jne 0x140093d43
add rdi, 0xa
lea r8d, [r13 + 0x3b]
mov ax, word [rdi]
mov qword [rsp + 0x88], rdi
mov rdx, rdi
cmp ax, r13w
je 0x140093c0c
lea ecx, [r13 + 0x2c]
lea r9d, [r13 + 0x3a]
lea r10d, [r13 + 0x40]
cmp r8w, ax
je 0x140093c04
cmp cx, ax
je 0x140093c04
cmp r9w, ax
je 0x140093c04
cmp r10w, ax
je 0x140093c04
add rdi, 2
mov ax, word [rdi]
cmp ax, r13w
jne 0x140093be0
mov qword [rsp + 0x88], rdi
mov ax, word [rdi]
cmp ax, r13w
je 0x140093c25
mov word [rdi], r13w
add rdi, 2
mov qword [rsp + 0x88], rdi
mov ecx, 0x40
cmp cx, ax
jne 0x140093c88
mov ax, word [rdi]
mov rbp, rdi
mov qword [rsp + 0xe0], rdi
cmp ax, r13w
je 0x140093c88
mov ecx, 0x2c
lea r9d, [rcx + 0xe]
cmp r8w, ax
je 0x140093c6a
cmp cx, ax
je 0x140093c6a
cmp r9w, ax
je 0x140093c6a
add rdi, 2
mov ax, word [rdi]
cmp ax, r13w
jne 0x140093c4c
mov qword [rsp + 0x88], rdi
cmp word [rdi], r13w
je 0x140093c88
mov word [rdi], r13w
add rdi, 2
mov qword [rsp + 0x88], rdi
cmp word [rdx], r13w
je 0x1400947ed
mov rcx, qword [rsp + 0x310]
lea rax, [0x1400ee4c4]
or r8, 0xffffffffffffffff
mov qword [rsp + 0x28], rax
mov r9, rax
mov qword [rsp + 0x20], rax
call fcn.140052c1c
cmp rax, r13
je 0x1400947ed
cmp dword [rax + 8], 0x14
jne 0x1400947ed
cmp dword [rax + 0x80], 0xfffffffe
jne 0x1400947ed
cmp qword [rax + 0x88], r13
jle 0x1400947ed
mov rcx, qword [rax + 0x78]
mov qword [rsp + 0x48], rcx
mov rsi, qword [rax + 0x88]
sub rsi, 2
mov qword [rsp + 0xb0], rsi
cmp rbp, r13
je 0x140093d72
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0xe0]
call fcn.140072294
cmp eax, r13d
jle 0x140093d72
mov rax, qword [rsp + 0xf0]
cmp rax, r13
jle 0x140093d72
add qword [rsp + 0x48], rax
sub rsi, rax
mov qword [rsp + 0xb0], rsi
jmp 0x140093d72
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x88]
call fcn.140072294
mov r11, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0x88]
mov qword [rsp + 0x48], r11
mov eax, 0x7e
cmp ax, word [rdi]
sete r13b
xor eax, eax
cmp r13b, al
je 0x140093d91
add rdi, 2
mov qword [rsp + 0x88], rdi
mov ecx, 0x2a
cmp cx, word [rdi]
sete bpl
cmp bpl, al
je 0x140093db2
add rdi, 2
mov byte [rsp + 0x42], al
mov qword [rsp + 0x88], rdi
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x88]
call fcn.140072294
mov rdi, qword [rsp + 0x48]
xor r8d, r8d
cmp rdi, r8
jne 0x140093df2
lea rdi, [0x1400eedf0]
mov r13, r8
mov qword [rsp + 0x48], rdi
mov r14b, byte [rsp + 0x41]
jmp 0x1400939b7
cmp eax, r12d
jge 0x140093e2d
cmp r14b, r8b
jne 0x140093e43
cmp bpl, r8b
je 0x140093e0f
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenA]
movsxd r13, eax
jmp 0x140093e23
cmp r13b, r8b
jg 0x140093e43
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd r13, eax
add r13, r13
mov rdi, qword [rsp + 0x48]
xor r8d, r8d
jmp 0x140093e4b
cmp r14b, r8b
je 0x140093e43
mov r13, qword [rsp + 0xb0]
cmp r13, rsi
cmovg r13, rsi
jmp 0x140093e4b
mov r13, qword [rsp + 0xb0]
cmp r13, r8
jl 0x1400948f3
mov rsi, qword [rsp + 0xd0]
movabs rdx, 0x3fffffffffffffff
mov al, sil
and r13, rdx
and al, 0x81
cmp al, 0x81
jne 0x140093de8
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0x20], r8
or r9d, 0xffffffff
xor r8d, r8d
call fcn.140016070
xor ebp, ebp
mov r11, rax
cmp rax, rbp
je 0x14009483f
test byte [rax + 0x1f], 0xc0
je 0x140094862
mov qword [rax + 8], rbp
jmp 0x140094862
movsd qword [rsp + 0x88], xmm6
mov r15, r8
cmp rbp, r8
je 0x1400943fd
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xb0], rax
movzx ecx, word [rax]
cmp cx, r8w
je 0x140093f34
mov r9d, 0x2c
cmp r9w, cx
je 0x140093f21
mov edx, 0x3b
cmp dx, cx
je 0x140093f21
mov edx, 0x3a
cmp dx, cx
je 0x140093f21
mov edx, 0x7c
cmp dx, cx
je 0x140093f21
add rax, 2
mov qword [rsp + 0xb0], rax
mov cx, word [rax]
cmp cx, r8w
jne 0x140093ee6
jmp 0x140093f34
movzx esi, word [rax]
mov word [rax], r8w
add rax, 2
mov qword [rsp + 0xb0], rax
mov r14, qword [rsp + 0x310]
mov word [rsp + 0x20], r8w
lea rdx, [rsp + 0x48]
lea r8, [rsp + 0x70]
mov r9d, 0x2c
mov rcx, r14
call fcn.1400493d4
mov rdx, qword [rsp + 0x70]
xor eax, eax
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140016070
xor r8d, r8d
cmp rax, r8
je 0x1400948f3
lea rdi, [rax + 8]
add rax, 0x18
movabs rdx, 0x3fffffffffffffff
mov rcx, qword [rdi]
mov qword [rsp + 0x48], rcx
mov rbp, qword [rax]
mov rcx, qword [rsp + 0xd0]
mov r13, rbp
and r13, rdx
cmp rcx, 8
jne 0x14009401e
mov r8, qword [rsp + 0x78]
mov edx, r13d
mov rcx, r14
call fcn.14005a1d0
mov r11, qword [rsp + 0x80]
xor esi, esi
cmp word [r11], si
je 0x14009492b
mov r8, qword [rdi]
lea rdx, [0x1400f2dd8]
lea rcx, [rsp + 0x1e0]
call qword [sym.imp.USER32.dll_wsprintfW]
lea r11, [rsp + 0x1e0]
lea rcx, [rsp + 0x1e0]
mov qword [rsp + 0x48], r11
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rdi, qword [rsp + 0x48]
mov r15, qword [rsp + 0x58]
movsxd r13, eax
add r13, r13
jmp 0x140093a48
cmp rcx, 4
jne 0x140094075
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x20], r8
mov r8, qword [rsp + 0xa8]
or r9d, 0xffffffff
call fcn.140016070
xor r8d, r8d
mov rbp, rax
cmp si, r8w
jne 0x140094a67
cmp rax, r8
je 0x140094066
test byte [rax + 0x1f], 0xc0
jne 0x14009497c
mov rdi, qword [rsp + 0x48]
mov r15, qword [rsp + 0x58]
jmp 0x140093de8
cmp rcx, 0x100
jne 0x1400942bf
mov rbp, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x20], r8
mov r8, qword [rsp + 0xa8]
mov rcx, rbp
or r9d, 0xffffffff
call fcn.140016070
xor edi, edi
lea rdx, [rsp + 0x88]
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x198], rax
movabs rax, 0x3fffffffffffffff
and rcx, rax
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0xe0], 0xfffffffffffffff8
mov qword [rsp + 0x1d0], rcx
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0xf0], rdi
movzx ebp, di
mov si, di
call fcn.14008e204
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0xb0]
call fcn.14008e204
mov r14d, edi
mov rdi, qword [rsp + 0xe0]
xor eax, eax
cmp rdi, rax
jge 0x14009412f
mov r14d, r12d
mov rdi, r13
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0xb0]
call fcn.14008e204
mov r11, qword [rsp + 0xb0]
mov ecx, 0x20
movzx eax, word [r11]
lea r10d, [rcx + 0x53]
lea r9d, [rcx + 0x49]
or ax, cx
cmp r10w, ax
je 0x14009416c
cmp r9w, ax
jne 0x140094183
mov bp, word [r11]
xor r8d, r8d
movzx r15d, bp
xor r15w, cx
cmp bp, r8w
jne 0x140094189
jmp 0x140094186
xor r8d, r8d
mov r14d, r8d
mov rcx, qword [rsp + 0xf0]
cmp rcx, r8
jl 0x1400948f3
mov rdx, qword [rsp + 0x88]
cmp rdx, r8
jl 0x1400948f3
cmp rdi, r8
jle 0x1400948f3
cmp rdx, r13
jg 0x1400948f3
mov rax, qword [rsp + 0x1d0]
cmp rcx, rax
jg 0x1400948f3
cmp r14d, r8d
jne 0x1400941f4
sub rax, rcx
sub r13, rdx
cmp rax, r13
cmovg rax, r13
cmp rdi, rax
cmovg rdi, rax
mov eax, 0x20
test al, r15b
je 0x1400941f4
shr rdi, 1
cmp rdi, r8
jle 0x1400942a1
mov rax, qword [rsp + 0x198]
mov rax, qword [rax + 8]
add rcx, rax
mov rax, qword [rsp + 0x48]
add rdx, rax
cmp r10w, bp
jne 0x140094234
cmp r14d, r8d
je 0x140094229
call qword [sym.imp.KERNEL32.dll_lstrcmpA]
mov esi, eax
jmp 0x1400942a1
mov r8d, edi
call qword [sym.imp.SHLWAPI.dll_StrCmpNA]
jmp 0x14009429e
mov eax, 0x53
cmp ax, bp
jne 0x140094256
cmp r14d, r8d
je 0x14009424b
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
jmp 0x14009429e
mov r8d, edi
call qword [sym.imp.SHLWAPI.dll_StrCmpNW]
jmp 0x14009429e
cmp r9w, bp
jne 0x140094274
cmp r14d, r8d
je 0x140094269
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
jmp 0x14009429e
mov r8d, edi
call qword [sym.imp.SHLWAPI.dll_StrCmpNIA]
jmp 0x14009429e
mov eax, 0x49
cmp ax, bp
jne 0x140094296
cmp r14d, r8d
je 0x14009428b
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
jmp 0x14009429e
mov r8d, edi
call qword [sym.imp.SHLWAPI.dll_StrCmpNIW]
jmp 0x14009429e
mov r8, rdi
call fcn.14004f594
mov si, ax
lea rdx, [0x1400eec10]
lea rcx, [rsp + 0x1e0]
movsx r8d, si
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x140093fee
cmp rcx, r12
jne 0x140094372
movabs rax, 0x1fffffffffffffff
shr rbp, 1
lea rcx, [rsp + 0x60]
and rbp, rax
lea rsi, [rbp + rbp*4]
lea rdx, [rsi + 1]
call fcn.140056fe0
mov rdi, qword [rsp + 0x60]
mov r8, qword [rsp + 0x48]
xor r14d, r14d
mov r9d, ebp
xor edx, edx
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
xor ecx, ecx
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd r13, eax
cmp r13, r14
jge 0x140094325
mov r13, r14
jmp 0x14009432c
cmp r13, rsi
cmovg r13, rsi
mov byte [r13 + rdi], r14b
lea rax, [r13 + 1]
cqo
sub rax, rdx
sar rax, 1
mov rdi, rax
lea ecx, [rax + 1]
movsxd rdx, ecx
lea rcx, [rsp + 0x60]
call fcn.140057254
movsxd r11, edi
mov rdi, qword [rsp + 0x60]
xor r8d, r8d
mov word [rdi + r11*2], r8w
mov qword [rsp + 0x48], rdi
mov r15, qword [rsp + 0x58]
mov r14b, r12b
jmp 0x1400939b7
cmp rcx, 2
jne 0x1400943cb
lea rdx, [r13 + 1]
lea rcx, [rsp + 0x60]
call fcn.140057254
mov rax, qword [rsp + 0x60]
mov r8, qword [rsp + 0x48]
mov r9d, r13d
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], rax
call qword [0x14010b900]
mov esi, eax
xor eax, eax
cmp esi, eax
cmovl esi, eax
lea ecx, [rsi + 1]
movsxd rdx, ecx
lea rcx, [rsp + 0x60]
call fcn.140057254
lea eax, [rsi + rsi]
movsxd r11, esi
movsxd r13, eax
jmp 0x140094353
mov r9d, 0x20
cmp rcx, r9
jne 0x140094a20
mov qword [rsp + 0x100], rdi
mov rdi, qword [rdi]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x48], rdi
mov r13, qword [rax]
and r13, rdx
jmp 0x140094365
mov al, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
cmp al, r8b
je 0x140094447
cmp word [rdi], r8w
je 0x140094447
mov bpl, byte [rsp + 0x150]
lea rcx, [rsp + 0x70]
mov rdx, rdi
or bpl, al
call fcn.14006168c
mov rcx, qword [rsp + 0xe8]
mov rdx, rax
mov r8b, bpl
call fcn.14007214c
xor r8d, r8d
mov rdi, rax
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x158]
lea ebp, [rax - 1]
cmp ebp, r8d
jl 0x140094495
mov rbx, qword [rsp + 0xe8]
mov byte [rsp + 0x20], r8b
lea r8, [rsp + 0x90]
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call fcn.140069518
sub ebp, r12d
mov rdi, qword [rsp + 0x90]
mov qword [rsp + 0x48], rdi
mov r8, rsi
jns 0x14009445e
lea rbx, [0x14010ce50]
cmp word [rdi], r8w
je 0x1400944cf
mov r8, qword [rsp + 0x328]
lea r9, [rsp + 0xb0]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x48]
call fcn.140071574
mov rdi, qword [rsp + 0x48]
mov r13, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x60]
xor r8d, r8d
cmp rdi, rsi
sete al
cmp qword [rsp + 0xd8], r8
mov byte [rsp + 0x41], al
jg 0x140094eff
mov rsi, qword [rsp + 0x68]
cmp rsi, r8
jg 0x140094da6
cmp byte [rsp + 0x50], r8b
je 0x140094562
cmp r13, r8
jle 0x140094a20
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x58]
xor edi, edi
mov r8, rsi
or r9d, 0xffffffff
mov qword [rsp + 0x20], rdi
call fcn.140016070
mov r15, rax
cmp rax, rdi
jne 0x140094bc3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rsp + 0x48]
mov r15, qword [rsp + 0x58]
mov r14b, byte [rsp + 0x41]
xor r8d, r8d
jmp 0x1400939bf
mov al, byte [rsp + 0x318]
cmp al, r8b
je 0x14009457c
cmp byte [rsp + 0xc8], r8b
je 0x140094ca3
mov r15, qword [rsp + 0x58]
mov r14b, byte [rsp + 0x41]
mov rsi, qword [rsp + 0xa8]
jmp 0x1400939c6
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x20], r8
or r9d, 0xffffffff
mov r8, rsi
mov rcx, r15
call fcn.140016070
xor r10d, r10d
mov rdi, rax
mov rsi, rax
cmp rax, r10
jne 0x140094631
cmp dword [rsp + 0xb8], r10d
jge 0x140094629
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x80]
cmp r14b, r10b
lea rcx, [0x1400ee4c4]
mov rax, r13
cmovne rax, r10
cmp r14b, r10b
cmovne r8, rcx
or r9d, 0xffffffff
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.14001b1c8
xor r10d, r10d
mov rdi, rax
mov rax, qword [rsp + 0x188]
cmp rax, r10
je 0x140094624
cmp rdi, r10
je 0x140094629
lea rcx, [rdi + 0x10]
mov rdx, rax
call fcn.140061724
xor r10d, r10d
cmp rdi, r10
jne 0x140094631
mov ebp, r12d
jmp 0x14009472e
mov r9d, dword [rsp + 0xb8]
cmp r9d, r10d
jl 0x140094696
mov r8, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x170]
mov rcx, qword [rdi + 0x18]
movabs rax, 0x3fffffffffffffff
and rcx, rax
mov rax, rcx
sub rax, r8
cmp rdx, rax
cmova rdx, rax
cmp r8, rcx
jae 0x14009472e
cmp rdx, r10
jbe 0x14009472e
mov rax, qword [rdi + 8]
lea rcx, [r8 + rax]
mov r8, rdx
mov edx, r9d
call fcn.1400d1fa0
jmp 0x14009472e
cmp byte [rsp + 0x318], r10b
jne 0x14009472e
cmp rsi, r10
je 0x1400946e4
mov al, byte [rsi + 0x1f]
and al, 0xc0
cmp al, 0xc0
jne 0x1400946db
cmp r14b, r10b
je 0x1400946c9
mov rdx, qword [rsp + 0x100]
mov rdx, qword [rdx]
mov qword [rsp + 0x48], rdx
jmp 0x1400946ce
mov rdx, qword [rsp + 0x48]
mov r8, r13
mov rcx, rdi
call fcn.14004fb50
jmp 0x14009472e
cmp al, r10b
je 0x1400946e4
mov qword [rsi + 8], r10
cmp r14b, r10b
je 0x140094714
mov rax, qword [rdi + 0x18]
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x100]
mov qword [rcx], rax
mov rax, qword [rdi + 8]
mov rcx, qword [rdx]
mov qword [rdx], rax
mov qword [rdi + 8], rcx
mov qword [rdi + 0x18], r13
jmp 0x14009472e
cmp rsi, r10
je 0x14009472e
mov r8, qword [rsp + 0x48]
lea rdx, [rdi + 0x18]
lea rcx, [rdi + 8]
mov r9, r13
call fcn.140059a98
xor r14d, r14d
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x118], r14
jle 0x140094d4d
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
mov rbp, qword [rsp + 0x190]
mov rdi, qword [rsp + 0x160]
mov rax, qword [rsp + 0x178]
mov rsi, qword [rsp + 0x148]
sub qword [rsp + 0x118], r12
mov rdx, rax
mov rcx, rbp
mov r9d, esi
mov r8d, esi
mov qword [rsp + 0x80], rbp
call qword [sym.imp.USER32.dll_wsprintfW]
mov rbp, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x110]
mov r8d, ebp
mov rcx, rdi
mov qword [rsp + 0x48], rdi
call fcn.140052f98
mov rdi, qword [rsp + 0xe8]
add rsi, r12
add rbp, r12
mov qword [rsp + 0x138], rbp
mov rbp, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rsi
jmp 0x14009388f
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, r13
je 0x140094829
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, 0xffffffff80070057
jmp 0x140095155
mov rdx, qword [rsp + 0x80]
lea r8, [0x1400ee4c4]
or r9d, 0xffffffff
mov rcx, r15
mov qword [rsp + 0x20], rbp
call fcn.14001b1c8
mov r11, rax
movabs rcx, 0xc000000000000000
movabs rax, 0x8000000000000000
cmp rsi, 0x83
cmove rax, rcx
lea rcx, [rsp + 0x328]
or rax, r13
mov qword [r11 + 0x18], rax
mov rax, qword [r11 + 8]
mov qword [r11 + 8], rdi
mov qword [rsp + 0x328], rax
call fcn.14004f564
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, rbp
je 0x1400948e1
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, rbp
jmp 0x140095155
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
xor eax, eax
cmp rbx, rax
jmp 0x14009481e
mov rax, qword [rsp + 0x78]
mov r12, 0xffffffff80070057
movzx ecx, word [rax]
neg cx
lea rcx, [rsp + 0x60]
sbb rax, rax
not rax
and r12, rax
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, rsi
jmp 0x140095140
mov r14, qword [rsp + 0x48]
mov rsi, r13
mov qword [rsp + 0x68], r13
mov r12, qword [rbp + 0x18]
movabs rax, 0x3fffffffffffffff
lea r13, [r15 + rsi]
and r12, rax
test byte [rbp + 0x1f], 0xc0
je 0x1400949ad
cmp r13, r12
jg 0x1400948f3
mov rax, r13
sub rax, r12
cmp rax, r8
jle 0x1400949f3
lea rax, [r13 + 1]
lea rcx, [rbp + 8]
cqo
sub rax, rdx
sar rax, 1
lea rdi, [rax + 2]
mov rdx, rdi
call fcn.140057254
mov rax, qword [rbp + 8]
lea r8, [rdi + rdi]
lea rcx, [r12 + rax]
sub r8, r12
xor edx, edx
call fcn.1400d1fa0
mov rsi, qword [rsp + 0x68]
mov qword [rbp + 0x18], r13
cmp qword [rsp + 0xd0], 4
jne 0x140094a0d
add rsi, 3
and rsi, 0xfffffffffffffffe
cmp rsi, r12
cmovg rsi, r12
mov rax, qword [rbp + 8]
mov r8, rsi
mov rdx, r14
lea rcx, [r15 + rax]
call fcn.14001a9b0
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
xor edi, edi
cmp rbx, rdi
je 0x140093721
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140093721
mov rdi, qword [rax + 0x18]
movabs rax, 0x3fffffffffffffff
lea rdx, [rsp + 0x328]
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0x328], r8
mov qword [rsp + 0x318], r13
and rdi, rax
mov qword [rsp + 0x110], r8
call fcn.14008e204
lea rdx, [rsp + 0x318]
lea rcx, [rsp + 0xb0]
call fcn.14008e204
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0xb0]
call fcn.14008e204
mov r11, qword [rsp + 0x328]
xor esi, esi
cmp r11, rsi
jl 0x140094b8d
mov r8, qword [rsp + 0x318]
cmp r8, rsi
jle 0x140094b8d
cmp r11, r13
jg 0x140094b8d
mov rcx, qword [rsp + 0x110]
cmp rcx, rdi
jg 0x140094b8d
cmp rcx, rsi
cmovl rcx, rsi
sub r13, r11
sub rdi, rcx
cmp r8, r13
cmovg r8, r13
cmp r8, rdi
cmovg r8, rdi
cmp r8, rsi
jle 0x140094b3f
mov rax, qword [rsp + 0x48]
add rcx, qword [rbp + 8]
lea rdx, [r11 + rax]
call fcn.14001a968
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, rsi
je 0x140094b7b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, rsi
jmp 0x140095155
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, rsi
jmp 0x14009481e
mov rsi, qword [rax + 0x18]
movabs rax, 0x3fffffffffffffff
and rsi, rax
cmp qword [r15 + 0x18], rdi
mov rax, qword [r15 + 8]
setl r14b
mov qword [rsp + 0x328], rax
cmp r14b, dil
je 0x140094bf1
mov qword [r15 + 8], rdi
lea rax, [rsi + r13]
lea rcx, [r15 + 8]
mov qword [rsp + 0x318], rax
cqo
sub rax, rdx
sar rax, 1
mov rdi, rax
lea rdx, [rax + 2]
call fcn.140057254
mov rcx, qword [r15 + 8]
mov al, byte [rsp + 0x50]
xor edx, edx
mov word [rcx + rdi*2 + 2], dx
mov rcx, qword [r15 + 8]
mov word [rcx + rdi*2], dx
mov rdi, qword [r15 + 8]
cmp al, r12b
jne 0x140094c53
cmp r14b, dl
je 0x140094c4d
mov rdx, qword [rsp + 0x328]
mov r8, rsi
mov rcx, rdi
call fcn.14001a9b0
lea rcx, [rdi + rsi]
jmp 0x140094c7d
cmp al, 2
jne 0x140094c8a
lea rcx, [rdi + r13]
mov r8, rsi
cmp r14b, dl
je 0x140094c72
mov rdx, qword [rsp + 0x328]
call fcn.14001a9b0
jmp 0x140094c7a
mov rdx, rdi
call fcn.14001a968
mov rcx, rdi
mov rdx, qword [rsp + 0x48]
mov r8, r13
call fcn.14001a9b0
mov rax, qword [rsp + 0x318]
mov rcx, rbx
mov qword [r15 + 0x18], rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor esi, esi
jmp 0x140094cf3
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x20], r8
mov r8, qword [rsp + 0xa8]
or r9d, 0xffffffff
call fcn.140016070
xor esi, esi
mov rdi, rax
cmp rax, rsi
je 0x140094cf3
test byte [rax + 0x1f], 0xc0
je 0x140094cdf
mov rax, qword [rax + 8]
mov word [rax], si
jmp 0x140094cf3
lea rcx, [rax + 8]
lea rdx, [0x1400ee4c4]
call fcn.14006168c
mov qword [rdi + 0x18], rsi
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, rsi
je 0x140094d2f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
lea rcx, [rsp + 0x120]
call fcn.14004f564
xor eax, eax
jmp 0x140095165
movsxd rdi, ebp
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, r14
je 0x140094d87
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
lea rcx, [rsp + 0x120]
call fcn.14004f564
mov rax, rdi
jmp 0x140095165
mov qword [rsp + 0x328], rdi
lea rcx, [rsp + 0x328]
cmp qword [rsp + 0x128], r8
je 0x140094de1
lea rdx, [rsp + 0x88]
call fcn.14005ae30
cvtsd2ss xmm5, qword [rsp + 0x88]
movss dword [rsp + 0x1a0], xmm5
jmp 0x140094e23
cmp qword [rsp + 0x130], r8
jne 0x140094df5
cmp qword [rsp + 0x140], r8
je 0x140094e16
lea rdx, [rsp + 0x88]
call fcn.14005ae30
movsd xmm5, qword [rsp + 0x88]
movsd qword [rsp + 0x1a0], xmm5
jmp 0x140094e23
lea rdx, [rsp + 0x1a0]
call fcn.140065394
mov rax, qword [rsp + 0x328]
xor edi, edi
cmp word [rax], di
je 0x140094e63
add rax, 2
lea rdx, [rsp + 0x318]
lea rcx, [rsp + 0x328]
mov qword [rsp + 0x318], rdi
mov qword [rsp + 0x328], rax
call fcn.140065394
mov r15, qword [rsp + 0x318]
mov r8, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x20], rdi
mov rdi, qword [rsp + 0x58]
or r9d, 0xffffffff
mov rcx, rdi
call fcn.140016070
xor r8d, r8d
mov rbp, rax
cmp rax, r8
jne 0x140094989
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x20], r8
lea r8, [0x1400ee4c4]
or r9d, 0xffffffff
mov rcx, rdi
call fcn.14001b1c8
xor r8d, r8d
mov rbp, rax
cmp rax, r8
jne 0x140094989
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
xor eax, eax
cmp rbx, rax
jmp 0x140095140
lea rcx, [rsp + 0x328]
mov qword [rsp + 0x108], rdi
call fcn.140057154
mov rcx, qword [rsp + 0x310]
mov eax, 0x2c
lea r8, [rsp + 0x328]
lea rdx, [rsp + 0x108]
lea r9d, [rax + 0xe]
mov word [rsp + 0x20], ax
call fcn.1400493d4
mov r11, qword [rsp + 0x328]
xor r14d, r14d
cmp word [r11], r14w
jne 0x140094fab
lea rcx, [rsp + 0x328]
call fcn.14004f564
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, r14
je 0x140094f99
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, r14
jmp 0x140095155
lea rdx, [rsp + 0x318]
lea rcx, [rsp + 0x108]
mov qword [rsp + 0x318], r14
call fcn.140065394
mov rbp, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x318]
mov r13, qword [rsp + 0x68]
mov r8, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x80]
mov rcx, rbp
or r9d, 0xffffffff
lea rsi, [rdi + r13]
mov word [rsp + 0x220], r14w
mov qword [rsp + 0x20], r14
call fcn.140016070
mov rcx, r14
cmp rax, r14
je 0x140095021
mov rcx, qword [rax + 0x18]
movabs rdx, 0x3fffffffffffffff
and rcx, rdx
cmp rcx, rsi
jl 0x1400950e7
mov rax, qword [rax + 8]
lea rcx, [rsp + 0x1a0]
mov r8, r13
lea rdx, [rdi + rax]
mov r12d, r14d
call fcn.14001a9b0
lea rcx, [rsp + 0x220]
cmp qword [rsp + 0x128], r14
je 0x14009506e
movss xmm1, dword [rsp + 0x1a0]
lea r8, [0x1400f97f0]
call fcn.1400c1734
jmp 0x1400950e7
cmp qword [rsp + 0x130], r14
je 0x14009508f
movsd xmm1, qword [rsp + 0x1a0]
lea r8, [0x1400f97e8]
call fcn.1400c1768
jmp 0x1400950e7
cmp qword [rsp + 0x140], r14
je 0x1400950b0
movsd xmm1, qword [rsp + 0x1a0]
lea r8, [0x1400f97e8]
call fcn.1400c1768
jmp 0x1400950e7
cmp qword [rsp + 0xd8], 0x64
jne 0x1400950d2
mov r8, qword [rsp + 0x1a0]
lea rdx, [0x1400f2dd8]
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x1400950e7
mov r8, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0x1a0]
call fcn.1400c16ec
mov rdx, qword [rsp + 0x328]
lea r8, [rsp + 0x220]
mov rcx, rbp
call fcn.140056790
lea rcx, [rsp + 0x328]
movsxd r12, r12d
call fcn.14004f564
lea rcx, [rsp + 0x60]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x90]
call fcn.14004f564
lea rcx, [rsp + 0xa0]
call fcn.14004f564
cmp rbx, r14
je 0x14009514b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x78]
call fcn.14004f564
lea rcx, [rsp + 0x120]
call fcn.14004f564
mov rax, r12
lea r11, [rsp + 0x2d0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret