Function at 0x14003b6fc
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1220
call fcn.1400ed430
sub rsp, rax
mov r15d, r8d
mov bl, r8b
mov rbp, rcx
mov edi, 1
lea rcx, [rsp + 0x3d8]
and bl, 0xf0
and r15d, edi
mov byte [rsp + 0x380], bl
mov qword [rsp + 0x340], r9
mov dword [rsp + 0x1270], r15d
call fcn.14006252c
mov r12, qword [rsp + 0x1268]
or dword [rsp + 0x3d0], 0xffffffff
lea rcx, [rsp + 0x1268]
call fcn.140014d28
xor r15d, r15d
lea rcx, [rsp + 0x390]
mov r13d, 0xffff0000
mov byte [rsp + 0x327], 0xff
mov byte [rsp + 0x326], 0xff
mov byte [rsp + 0x329], r15b
mov r14b, r15b
mov byte [rsp + 0x322], r15b
mov byte [rsp + 0x321], r15b
mov sil, r15b
mov byte [rsp + 0x328], r15b
mov byte [rsp + 0x349], r15b
mov byte [rsp + 0x324], r15b
mov dword [rsp + 0x34c], r13d
mov qword [rsp + 0x338], r15
mov byte [rsp + 0x32b], r15b
call fcn.140058038
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f3ac0]
mov r8d, edi
mov qword [rsp + 0x790], r15
mov word [rsp + 0x7a0], r15w
call fcn.14005a810
cmp al, r15b
jne 0x14003b821
mov al, r15b
cmp bl, r15b
je 0x14003b824
mov al, dil
cmp bl, r15b
mov byte [rsp + 0x323], al
setne byte [rsp + 0x32a]
cmp al, r15b
je 0x14003b84b
mov byte [rsp + 0x327], r15b
mov byte [rsp + 0x326], dil
mov rdx, qword [rsp + 0x1268]
mov bl, 0x2a
cmp word [rdx], 0x2d
jne 0x14003b85d
mov bl, byte [rdx]
movzx eax, word [rdx]
movsx edi, bl
mov r13d, 5
cmp eax, edi
jne 0x14003bded
movzx eax, word [rdx + 2]
cmp eax, edi
jne 0x14003bdc6
add rdx, 4
lea rcx, [0x1400f6130]
mov r8d, 1
mov qword [rsp + 0x1268], rdx
lea rdx, [rsp + 0x1268]
call fcn.14005a810
cmp al, r15b
je 0x14003b8b9
mov eax, 1
mov dword [rsp + 0x1270], eax
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f612c]
mov r8d, 2
call fcn.14005a810
cmp al, r15b
je 0x14003b8e9
mov eax, 1
mov byte [rsp + 0x327], al
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f5490]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003b915
mov byte [rsp + 0x327], r15b
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, str.nrcd
mov r8d, 4
call fcn.14005a810
cmp al, r15b
je 0x14003b941
mov byte [rsp + 0x326], 2
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6120]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003b96d
mov byte [rsp + 0x326], r15b
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f611c]
mov r8d, 2
call fcn.14005a810
cmp al, r15b
je 0x14003b999
mov byte [rsp + 0x322], 1
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6118]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003b9c5
mov byte [rsp + 0x322], 0x23
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6114]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003b9f1
mov byte [rsp + 0x322], 0x2a
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6110]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003ba1d
mov byte [rsp + 0x322], 0x24
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f610c]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003ba49
mov byte [rsp + 0x322], 0x40
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6108]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003ba75
mov byte [rsp + 0x322], 0x3d
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6104]
mov r8d, 2
call fcn.14005a810
cmp al, r15b
je 0x14003baa2
mov eax, 1
mov dword [rsp + 0x34c], eax
jmp 0x14003bac9
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f6100]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003bad4
mov dword [rsp + 0x34c], r15d
mov r13d, 5
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f60fc]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003bafb
mov sil, 1
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f60f8]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003bb27
mov byte [rsp + 0x328], 1
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f3bc0]
mov r8d, 1
call fcn.14005a810
cmp al, r15b
je 0x14003bb53
mov byte [rsp + 0x349], 1
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f17b0]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003bb7f
mov byte [rsp + 0x324], 1
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f60f4]
mov r8d, 3
call fcn.14005a810
cmp al, r15b
je 0x14003bbab
mov byte [rsp + 0x32b], 1
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, str.bool
mov r8d, 4
call fcn.14005a810
cmp al, r15b
je 0x14003bbd7
mov byte [rsp + 0x324], 2
jmp 0x14003bda6
mov rdx, qword [rsp + 0x1268]
lea rcx, str.sret:
mov r8d, r13d
call fcn.140051938
cmp al, r15b
je 0x14003bc01
mov r8, qword [rsp + 0x1268]
add r8, 2
jmp 0x14003bc2c
mov rdx, qword [rsp + 0x1268]
lea rcx, str.ret:
mov r8d, 4
call fcn.140051938
cmp al, r15b
je 0x14003bcdd
mov r8, qword [rsp + 0x1268]
add r8, 8
mov qword [rsp + 0x1268], r8
mov rdx, r8
movzx eax, word [r8]
cmp ax, r15w
je 0x14003bc75
mov ecx, 0x20
lea r9d, [rcx - 0x17]
cmp r9w, ax
ja 0x14003bc5a
cmp ax, 0xd
jbe 0x14003bc75
cmp cx, ax
je 0x14003bc75
add r8, 2
mov qword [rsp + 0x1268], r8
mov ax, word [r8]
cmp ax, r15w
jne 0x14003bc4e
sub r8, rdx
lea rcx, [rsp + 0x390]
sar r8, 1
call fcn.1400582a0
lea rcx, [rsp + 0x1268]
call fcn.140014d28
lea rdx, [rsp + 0x390]
xor r8d, r8d
mov rcx, rbp
call fcn.140003720
mov rdx, qword [rsp + 0x390]
lea rcx, [0x1400f17d8]
mov r14b, 1
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
cmp eax, r15d
jne 0x14003bda6
mov rax, qword [rsp + 0x390]
mov r14b, 3
mov word [rax], r15w
jmp 0x14003bda6
lea rdx, [rsp + 0x1268]
lea rcx, [0x1400f60d8]
mov r8d, 1
call fcn.14005a810
cmp al, r15b
je 0x14003bd09
mov byte [rsp + 0x321], 1
jmp 0x14003bda6
mov rax, qword [rsp + 0x1268]
cmp bl, 0x2a
jne 0x14003bd5f
movzx ecx, word [rax]
mov rdx, rax
cmp cx, r15w
je 0x14003bd99
mov r8d, 0x20
lea r9d, [r8 + 0xc]
lea r10d, [r8 - 0x17]
cmp r10w, cx
ja 0x14003bd3c
cmp cx, 0xd
jbe 0x14003bd65
cmp r8w, cx
je 0x14003bd65
cmp r9w, cx
je 0x14003bdba
add rax, 2
mov qword [rsp + 0x1268], rax
mov cx, word [rax]
cmp cx, r15w
je 0x14003bd99
jmp 0x14003bd30
mov r10d, 9
movzx ecx, word [rax]
cmp cx, r15w
je 0x14003bd99
mov edx, 0x20
cmp r10w, cx
ja 0x14003bd7f
cmp cx, 0xd
jbe 0x14003bd99
cmp dx, cx
je 0x14003bd99
add rax, 2
mov qword [rsp + 0x1268], rax
mov cx, word [rax]
cmp cx, r15w
jne 0x14003bd73
lea rcx, [rsp + 0x1268]
call fcn.140014d28
mov rdx, qword [rsp + 0x1268]
movzx eax, word [rdx]
cmp eax, edi
jne 0x14003bdc6
jmp 0x14003b871
add rdx, 0xfffffffffffffffc
mov qword [rsp + 0x1268], rdx
cmp sil, r15b
je 0x14003bded
lea r9, [0x1400f04f4]
xor r8d, r8d
mov rcx, rbp
mov dword [rsp + 0x20], 0xffffff9c
call fcn.140095398
mov rsi, rax
jmp 0x14003ed3e
lea rcx, [rsp + 0x3f8]
xor edx, edx
mov r8d, 0x370
mov ebx, r15d
mov qword [rsp + 0x3f0], r15
call fcn.1400d3e60
lea rcx, [rsp + 0x828]
xor edx, edx
mov r8d, 0x350
call fcn.1400d3e60
mov edi, 0x348
lea rcx, [rsp + 0xb88]
mov r8, rdi
xor edx, edx
call fcn.1400d3e60
lea rcx, [rsp + 0xed8]
mov r8, rdi
xor edx, edx
mov qword [rsp + 0xed0], r15
call fcn.1400d3e60
lea rcx, [rsp + 0x3b0]
call fcn.1400584fc
mov rcx, qword [rsp + 0x1268]
mov rdi, qword [rsp + 0x340]
mov esi, 1
mov qword [rsp + 0x350], rdi
mov qword [rsp + 0x820], rcx
lea edx, [rsi + 0x2b]
mov qword [rsp + 0xb80], rcx
mov dword [rsp + 0x3a0], esi
call qword [sym.imp.SHLWAPI.dll_StrChrW]
mov rbp, rax
mov qword [rsp + 0x358], rax
cmp rax, r15
je 0x14003bed2
mov rdi, rax
sub rdi, r12
sar rdi, 1
add rbp, 2
mov qword [rsp + 0x3d0], rdi
mov rdi, qword [rsp + 0x340]
mov qword [rsp + 0x358], rbp
mov qword [rsp + 0x828], rbp
mov qword [rsp + 0xb88], rbp
mov r12d, 0xc
cmp rbp, r15
je 0x14003bf07
lea rcx, str._LoadLibrary
mov r8d, r12d
mov rdx, rbp
call fcn.140051938
cmp al, r15b
je 0x14003bf07
mov r15b, sil
xor r8d, r8d
mov byte [rsp + 0x320], r15b
cmp rbp, r8
je 0x14003bf37
lea rcx, str._GetProcAddress
mov r8d, 0xf
mov rdx, rbp
call fcn.140051938
xor r8d, r8d
mov r13b, sil
cmp al, r8b
jne 0x14003bf3a
mov r13b, r8b
cmp rbp, r8
je 0x14003bf68
lea rcx, str._FreeLibrary
mov r8d, r12d
mov rdx, rbp
call fcn.140051938
xor r8d, r8d
cmp al, r8b
je 0x14003bf68
mov rcx, rsi
mov r12b, cl
mov byte [rsp + 0x325], cl
jmp 0x14003bf76
mov r12b, r8b
mov byte [rsp + 0x325], r8b
mov rcx, rsi
mov sil, r12b
or sil, r13b
or sil, r15b
mov byte [rsp + 0x32c], sil
cmp rbp, r8
je 0x14003bfa0
mov eax, 0x2a
cmp ax, word [rbp]
jne 0x14003bfa0
mov byte [rsp + 0x348], cl
jmp 0x14003bfc9
mov byte [rsp + 0x348], r8b
cmp byte [rsp + 0x323], r8b
jne 0x14003bfc9
cmp byte [rsp + 0x32a], r8b
jne 0x14003bfc9
cmp r15b, r8b
jne 0x14003bfc9
mov r15b, cl
cmp r12b, r8b
je 0x14003bfcc
mov r15b, r8b
mov al, r13b
or al, byte [rsp + 0x320]
je 0x14003bfe0
or byte [rsp + 0x32b], 0x10
cmp byte [rsp + 0x328], r8b
jne 0x14003c087
cmp r15b, r8b
je 0x14003c087
mov rax, rdi
cmp rdi, rbx
mov esi, 1
cmove rax, qword [rsp + 0x1268]
mov ebp, ecx
mov rdi, rcx
mov qword [rsp + 0x350], rax
lea r12d, [rsi + 0x2b]
mov edx, r12d
mov rcx, rax
call qword [sym.imp.SHLWAPI.dll_StrChrW]
mov qword [rsp + 0x350], rax
cmp rax, rbx
je 0x14003c065
mov word [rax], bx
mov rax, qword [rsp + 0x350]
add rax, 2
cmp rdi, 2
mov qword [rsp + 0x350], rax
jl 0x14003c05a
mov qword [rsp + rdi*8 + 0x820], rax
add rdi, rsi
add ebp, esi
cmp rdi, 0x6a
jl 0x14003c01c
mov sil, byte [rsp + 0x32c]
mov r12b, byte [rsp + 0x325]
mov dword [rsp + 0x3a0], ebp
mov rbp, qword [rsp + 0x358]
xor r8d, r8d
mov rdx, r8
mov qword [rsp + 0x368], r8
mov edi, 0x2c
mov qword [rsp + 0x330], rdx
cmp rbp, r8
je 0x14003c0c7
mov edx, edi
mov rcx, rbp
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r8d, r8d
mov qword [rsp + 0x330], rax
mov word [rbp - 2], r8w
mov rdx, qword [rsp + 0x330]
mov rax, qword [rsp + 0x1268]
cmp word [rax], r8w
jne 0x14003c10d
cmp sil, r8b
jne 0x14003c10d
lea rcx, [rsp + 0x368]
call fcn.140050424
lea rcx, [rsp + 0x3b0]
call fcn.14001addc
lea rcx, [rsp + 0x3b0]
call fcn.140050424
mov rsi, 0xffffffff80070057
jmp 0x14003ed3e
cmp rdx, r8
je 0x14003c12a
mov word [rdx], r8w
mov rdx, qword [rsp + 0x330]
add rdx, 2
mov qword [rsp + 0x330], rdx
and r14b, 2
mov byte [rsp + 0x32c], r14b
je 0x14003c155
cmp rbp, r8
je 0x14003c155
movzx eax, word [rbp]
neg ax
sbb rcx, rcx
and rcx, rbp
mov rbp, rcx
mov qword [rsp + 0x358], rcx
mov rsi, qword [rsp + 0x1260]
cmp r14b, r8b
je 0x14003c1a8
cmp rdx, r8
je 0x14003c1a8
mov word [rsp + 0x20], r8w
lea rdx, [rsp + 0x330]
lea r8, [rsp + 0x390]
mov r9d, edi
mov rcx, rsi
call fcn.140049f20
mov r11, qword [rsp + 0x330]
movzx eax, word [r11]
neg ax
sbb rcx, rcx
and rcx, r11
xor r8d, r8d
mov qword [rsp + 0x330], rcx
lea rcx, [rsp + 0x398]
mov edx, 0x20a
mov rdi, r8
mov qword [rsp + 0x3a8], r8
mov r14, r8
mov qword [rsp + 0x3e0], r8
call fcn.1400580ac
xor edx, edx
cmp byte [rsp + 0x326], dl
jg 0x14003c1f0
mov rdx, qword [rsp + 0x398]
mov ecx, 0x208
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
xor edx, edx
movsxd rax, dword [rsp + 0x3a0]
mov rcx, qword [rsp + 0x330]
mov qword [rsp + 0x3c8], rax
cmp byte [rsp + 0x320], dl
je 0x14003c27c
mov rax, qword [rsp + 0x390]
cmp word [rax], dx
je 0x14003c26a
mov r8d, 0x2a
cmp r8w, word [rax]
je 0x14003c26a
cmp rcx, rdx
je 0x14003c282
cmp r8w, word [rcx]
je 0x14003c282
mov rdx, rcx
lea rcx, [rsp + 0x327]
call fcn.1400178a0
mov rcx, qword [rsp + 0x330]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
xor r15d, r15d
mov rdi, rax
mov eax, 1
mov byte [rsp + 0x329], al
jmp 0x14003ecc7
lea rcx, [rsp + 0x398]
call fcn.140050424
jmp 0x14003c0da
mov r8d, 0x2a
cmp r13b, dl
je 0x14003c377
mov r12d, 1
mov bpl, r12b
cmp r8w, word [rcx]
jne 0x14003c2a6
add rcx, 2
mov qword [rsp + 0x330], rcx
mov bl, byte [rsp + 0x321]
mov edi, 0x23
cmp r8w, word [rcx]
je 0x14003c2bd
cmp di, word [rcx]
jne 0x14003c2ce
add rcx, 2
mov bl, r12b
mov qword [rsp + 0x330], rcx
jmp 0x14003c2b2
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x330]
xor r15d, r15d
mov qword [rsp + 0x340], r15
call fcn.1400662b4
mov rdx, qword [rsp + 0x330]
mov rdi, r15
cmp rdx, r15
je 0x14003ed7c
add rdx, 2
mov qword [rsp + 0x330], rdx
je 0x14003ed7c
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x358]
mov qword [rsp + 0x358], r15
mov r9, rax
mov r8, rax
call fcn.140057f74
mov rcx, qword [rsp + 0x340]
cmp bl, r15b
je 0x14003c354
cmp rcx, r15
je 0x14003c365
mov rdx, qword [rsp + 0x358]
call fcn.140015af0
jmp 0x14003c362
mov rdx, qword [rsp + 0x358]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
lea rcx, [rsp + 0x358]
call fcn.140050424
jmp 0x14003ed7c
xor r13d, r13d
cmp r12b, r13b
je 0x14003c415
lea r12d, [r13 + 1]
mov bpl, r12b
cmp r8w, word [rcx]
jne 0x14003c39c
add rcx, 2
mov qword [rsp + 0x330], rcx
mov bl, byte [rsp + 0x321]
mov edi, 0x23
cmp r8w, word [rcx]
je 0x14003c3b3
cmp di, word [rcx]
jne 0x14003c3c4
add rcx, 2
mov bl, r12b
mov qword [rsp + 0x330], rcx
jmp 0x14003c3a8
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x330]
xor r15d, r15d
mov qword [rsp + 0x340], r15
call fcn.1400662b4
cmp bl, r12b
mov rcx, qword [rsp + 0x340]
mov rdi, r15
jle 0x14003c407
cmp rcx, r15
je 0x14003ed7c
call fcn.140015aac
jmp 0x14003ed7c
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
movsxd rdi, eax
jmp 0x14003ed7c
cmp byte [rsp + 0x380], r13b
movzx edx, r13b
mov eax, 1
cmovne edx, eax
mov dword [rsp + 0x360], edx
cmp rcx, r13
jne 0x14003c63a
cmp rbp, r13
jne 0x14003c44f
lea rbp, [0x1400f6082]
mov qword [rsp + 0x358], rbp
jmp 0x14003c47d
lea rcx, [0x1400f6082]
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r13d
je 0x14003c47d
lea rcx, [0x1400f6052]
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r13d
jne 0x14003c63a
mov eax, dword [rsp + 0x34c]
or r12, 0xffffffffffffffff
cmp eax, r13d
lea ecx, [r12 + 0x32]
mov byte [rsp + 0x360], r12b
cmovl eax, ecx
mov dword [rsp + 0x34c], eax
cmp al, r13b
je 0x14003c63a
lea rcx, [rsp + 0x338]
call fcn.140058038
lea rdx, str.___exe:_
lea rcx, [rsp + 0x3a8]
mov r8, r12
call fcn.14006256c
lea rdx, [rsp + 0x3a8]
lea rcx, [rsp + 0x338]
call fcn.1400625f8
lea rcx, [rsp + 0x3a8]
call fcn.140050424
lea rcx, [rsp + 0x338]
mov edx, 0x51c
call fcn.140058138
mov rdx, qword [rsp + 0x338]
xor ecx, ecx
add rdx, 0x10
mov r8d, 0x208
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rdx, str.____nowin___nfb___hide_PECMDpecmd_cmd_CALL__
lea rcx, [rsp + 0x3c8]
mov r8, r12
call fcn.14006256c
lea rcx, [rsp + 0x338]
mov rdx, qword [rax]
call fcn.140058174
lea rcx, [rsp + 0x3c8]
call fcn.140050424
mov rax, qword [rsp + 0x3d0]
cmp eax, r13d
jl 0x14003c56e
movsxd rcx, eax
mov rax, qword [rsp + 0x3d8]
mov word [rax + rcx*2], r13w
mov rdx, qword [rsp + 0x3d8]
lea rcx, [rsp + 0x338]
call fcn.140058174
lea rdx, [0x1400f6000]
lea rcx, [rsp + 0x3c8]
mov r8, r12
call fcn.14006256c
lea rcx, [rsp + 0x338]
mov rdx, qword [rax]
call fcn.140058174
lea rcx, [rsp + 0x3c8]
call fcn.140050424
lea rcx, [rsp + 0x338]
mov rdx, rbp
call fcn.140058174
mov rdx, qword [rsp + 0x338]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
xor r9d, r9d
mov r8, rsi
mov rcx, rsi
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], r13d
call fcn.14000c7c8
lea rcx, [rsp + 0x338]
mov rsi, rax
call fcn.140050424
lea rcx, [rsp + 0x398]
call fcn.140050424
lea rcx, [rsp + 0x368]
call fcn.140050424
lea rcx, [rsp + 0x3b0]
call fcn.14001addc
lea rcx, [rsp + 0x3b0]
call fcn.140050424
jmp 0x14003ed3e
cmp rbp, r13
je 0x14003eef7
cmp word [rbp], r13w
je 0x14003eef7
mov r12b, byte [rsp + 0x328]
cmp r12b, r13b
jne 0x14003c71c
cmp r15b, r13b
je 0x14003c71c
mov r9, qword [rsp + 0x340]
cmp r9, r13
je 0x14003c71c
xor ecx, ecx
lea r13, [rsp + 0xb80]
lea esi, [rcx + 2]
mov qword [rsp + 0x340], rcx
cmp dword [rsp + 0x3a0], esi
jle 0x14003c70d
mov r12, qword [rsp + 0x1260]
mov rdi, qword [rsp + 0x3c8]
xor ebx, ebx
lea r14d, [rcx + 1]
mov rdx, qword [rsp + rsi*8 + 0x820]
lea r8, [rsp + 0x340]
xor r9d, r9d
mov rcx, r12
mov byte [rsp + 0x20], r14b
call fcn.14006b814
mov r11, qword [rsp + 0x340]
mov qword [rsp + 0x340], rbx
mov qword [rsp + rsi*8 + 0xed0], r11
mov qword [rsp + rsi*8 + 0xb80], r11
add rsi, r14
cmp rsi, rdi
jl 0x14003c6ad
mov rdi, qword [rsp + 0x3a8]
mov r14, qword [rsp + 0x3e0]
mov r12b, byte [rsp + 0x328]
lea rcx, [rsp + 0x340]
call fcn.140050424
jmp 0x14003c724
lea r13, [rsp + 0x820]
xor ecx, ecx
mov eax, 2
cmp r12b, cl
jne 0x14003c8ca
cmp r15b, cl
je 0x14003c8ca
xor r15d, r15d
cmp qword [r13 + 8], r15
je 0x14003c8cd
cmp byte [rsp + 0x32c], r15b
je 0x14003c75e
cmp qword [r13 + 0x10], r15
lea ecx, [rax + 1]
cmovne eax, ecx
mov r14b, byte [rsp + 0x322]
mov rbp, qword [rsp + 0x1260]
cdqe
lea rdi, [r13 + rax*8]
lea r15, [rsp + rax*8 + 0x818]
lea r12, [rsp + 0x3f0]
mov r8d, 0x7e
mov r9d, 0xfde9
xor esi, esi
mov rax, qword [rdi]
add r15, 8
add rdi, 8
mov qword [rsp + 0x350], rax
cmp rax, rsi
je 0x14003c8b2
movzx ecx, word [rax]
mov r11d, 0x23
mov qword [r12], rax
mov dl, sil
cmp r14b, r11b
je 0x14003c852
lea r10d, [r11 + 7]
cmp r14b, r10b
je 0x14003cb2d
cmp r14b, 0x24
je 0x14003cc89
lea r13d, [r11 + 0x1d]
cmp r14b, r13b
je 0x14003cb18
cmp r14b, 0x3d
je 0x14003cb04
cmp r14b, r8b
je 0x14003c83a
cmp r14b, sil
je 0x14003c84c
add rax, 2
movzx ecx, cx
mov dl, 1
mov qword [rsp + 0x350], rax
cmp ecx, r11d
je 0x14003c864
cmp ecx, r10d
je 0x14003cb2d
cmp ecx, 0x3d
je 0x14003cb04
cmp ecx, r13d
je 0x14003cb18
cmp ecx, r8d
jne 0x14003cc89
mov r13w, r9w
cmp rax, rsi
je 0x14003cc89
jmp 0x14003cc01
cmp cx, r11w
jne 0x14003c88d
cmp r11w, word [rax]
jne 0x14003c864
add rax, 2
mov qword [rsp + 0x350], rax
lea rdx, [rsp + 0x3d0]
lea rcx, [rsp + 0x350]
mov qword [rsp + 0x3d0], rsi
call fcn.1400663a0
mov r11, qword [rsp + 0x3d0]
mov qword [r12], r11
inc ebx
add r12, 8
cmp byte [rsp + 0x349], sil
jne 0x14003c8b2
mov r8d, 0x7e
mov r9d, 0xfde9
cmp ebx, 0x64
jbe 0x14003c793
mov rdi, qword [rsp + 0x3a8]
mov rbp, qword [rsp + 0x358]
mov r14, qword [rsp + 0x3e0]
xor r15d, r15d
lea rdx, str._DllRegisterServer
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov esi, dword [rsp + 0x34c]
mov r13d, 1
cmp eax, r15d
jne 0x14003c917
lea eax, [r13 + 0x30]
cmp esi, r15d
lea rbp, [0x1400f6082]
cmovl esi, eax
mov byte [rsp + 0x360], 0xff
mov byte [rsp + 0x327], r13b
mov dword [rsp + 0x34c], esi
lea rdx, str._DllUnregisterServer
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r15d
jne 0x14003c955
mov eax, 0x71
cmp esi, r15d
lea rbp, [0x1400f6052]
cmovl esi, eax
mov byte [rsp + 0x360], 0xff
mov byte [rsp + 0x327], r13b
mov dword [rsp + 0x34c], esi
mov rdx, qword [rsp + 0x1268]
mov eax, 0x23
mov qword [rsp + 0x788], r15
mov rsi, r15
cmp ax, word [rdx]
jne 0x14003c9cf
cmp word [rdx + 2], r15w
jne 0x14003c9cf
lea rdx, [rsp + 0x788]
lea rcx, [rsp + 0x3d0]
mov qword [rsp + 0x3d0], rbp
call fcn.1400663a0
mov rsi, qword [rsp + 0x788]
cmp rsi, r15
je 0x14003ee08
movzx ecx, byte [rsp + 0x326]
mov rdx, qword [rsp + 0x1268]
mov byte [rsp + 0x360], r13b
mov eax, ecx
cmp cl, r15b
cmovl eax, r13d
mov byte [rsp + 0x326], al
cmp byte [rsp + 0x320], r15b
je 0x14003c9f4
mov rax, rdx
mov rdx, qword [rsp + 0x330]
mov qword [rsp + 0x1268], rdx
mov qword [rsp + 0x330], rax
mov byte [rsp + 0x325], r15b
mov r12d, r15d
mov eax, 0x22
cmp rdx, r15
je 0x14003ca23
cmp ax, word [rdx]
mov rcx, rdx
cmove r12d, r13d
call fcn.140019058
mov rdx, rax
mov qword [rsp + 0x1268], rax
mov r8d, 0x2a
mov qword [rsp + 0x388], rdx
mov r13b, r15b
mov rcx, rdx
cmp r8w, word [rdx]
jne 0x14003ca58
lea rax, [rcx + 2]
cmp r8w, word [rax]
jne 0x14003ca58
mov qword [rsp + 0x388], rax
mov rcx, rax
cmp r8w, word [rax]
je 0x14003ca3d
mov r10d, 9
cmp r8w, word [rcx]
jne 0x14003ca7a
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r10w
jbe 0x14003ca7a
or byte [rsp + 0x321], 2
mov r9d, 0x2e
cmp r8w, word [rcx]
jne 0x14003ccb7
lea r8, [rcx + 2]
movzx eax, word [r8]
sub ax, 0x30
cmp ax, r10w
ja 0x14003ccb7
cmp rcx, rdx
lea rdx, [rsp + 0x3e0]
lea rcx, [rsp + 0x388]
seta r13b
mov qword [rsp + 0x3e0], r15
mov qword [rsp + 0x388], r8
inc r13b
call fcn.1400662b4
cmp eax, r15d
jle 0x14003c26a
mov r14, qword [rsp + 0x3e0]
cmp r14, r15
je 0x14003c26a
mov rdx, qword [rsp + 0x1268]
mov rcx, qword [rsp + 0x388]
mov r9d, 0x2e
jmp 0x14003ccc8
mov rax, qword [r15]
movsx rcx, dl
lea rcx, [rax + rcx*2]
mov qword [r12], rcx
jmp 0x14003c88d
mov r13d, esi
cmp rax, rsi
jne 0x14003cc01
mov qword [r12], rsi
jmp 0x14003c88d
cmp r10w, word [rax]
jne 0x14003cb3f
add rax, 2
mov qword [rsp + 0x350], rax
mov r13w, si
cmp r8w, word [rax]
jne 0x14003cb5b
add rax, 2
mov r13w, r9w
mov qword [rsp + 0x350], rax
jmp 0x14003cb69
mov ecx, 0x40
cmp cx, word [rax]
jne 0x14003cb69
mov r13w, si
lea rcx, [rsp + 0x340]
call fcn.140058038
lea r8, [rsp + 0x340]
lea rdx, [rsp + 0x350]
mov r9d, 0x2c
mov rcx, rbp
mov word [rsp + 0x20], si
call fcn.140049f20
mov rdx, qword [rsp + 0x340]
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, rbp
mov qword [rsp + 0x350], rsi
mov qword [rsp + 0x20], rsi
call fcn.140016218
cmp rax, rsi
je 0x14003cbd0
mov rax, qword [rax + 8]
mov qword [rsp + 0x350], rax
jmp 0x14003cbd8
mov rax, qword [rsp + 0x350]
cmp r13w, si
je 0x14003cca1
cmp rax, rsi
je 0x14003cc92
cmp word [rax], si
je 0x14003cca1
lea rcx, [rsp + 0x340]
call fcn.140050424
mov ecx, 8
call fcn.1400d4138
mov rsi, rax
xor eax, eax
cmp rsi, rax
je 0x14003cc1a
mov qword [rsi], rax
jmp 0x14003cc1d
mov rsi, rax
mov rdx, qword [rsp + 0x350]
movzx r9d, r13w
or r8, 0xffffffffffffffff
mov rcx, rsi
call fcn.140057f74
mov r11, qword [rsi]
mov eax, 1
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x378]
lea r8, [rsp + 0x3c0]
lea rdx, [rsp + 0x3b8]
lea rcx, [rsp + 0x3b0]
mov qword [rsp + 0x350], r11
mov qword [rsp + 0x378], rsi
mov dword [rsp + 0x20], 8
call fcn.140058388
mov rax, qword [rsp + 0x350]
xor esi, esi
mov qword [r12], rax
jmp 0x14003c88d
lea rax, [0x1400f04f4]
mov qword [rsp + 0x350], rax
lea rcx, [rsp + 0x340]
mov qword [r12], rax
call fcn.140050424
jmp 0x14003c88d
cmp word [rcx], r15w
jne 0x14003cccd
mov rcx, r15
mov qword [rsp + 0x388], rcx
cmp r13b, r15b
jne 0x14003cce6
cmp rcx, r15
je 0x14003cce6
cmp word [rcx], r9w
jne 0x14003cce6
cmp word [rcx + 2], r15w
jne 0x14003cce6
mov r15b, 1
xor eax, eax
jmp 0x14003ccf1
xor eax, eax
cmp r13b, al
jne 0x14003cd85
cmp byte [rsp + 0x348], al
je 0x14003cd85
cmp byte [rsp + 0x321], al
jne 0x14003cd85
cmp r15b, al
je 0x14003cd15
mov rax, qword [0x14010dd78]
jmp 0x14003cd23
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdx, qword [rsp + 0x1268]
xor r15d, r15d
cmp rax, r15
jne 0x14003cd6b
lea rcx, [rsp + 0x327]
call fcn.1400178a0
mov rcx, qword [rsp + 0x1268]
lea r13d, [r15 + 1]
mov bl, r13b
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp rax, r15
jne 0x14003cd74
cmp byte [rsp + 0x32a], r15b
je 0x14003cd61
mov eax, r15d
jmp 0x14003cd67
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x14003cd77
mov bl, r15b
mov r13d, 1
mov rdi, r15
cmp bl, r13b
je 0x14003ecc7
jmp 0x14003ed07
lea rcx, [rsp + 0x327]
call fcn.1400178a0
xor r8d, r8d
cmp rsi, r8
jne 0x14003d4b2
mov al, byte [rsp + 0x321]
mov r9, qword [rsp + 0x388]
mov ecx, 0xffdf
cmp al, r8b
jne 0x14003cdf5
cmp r14, r8
jne 0x14003cdf5
cmp byte [rsp + 0x360], r8b
jne 0x14003cdf5
cmp r9, r8
je 0x14003cded
lea edx, [r8 + 0x2e]
cmp word [r9], dx
jne 0x14003d225
cmp word [r9 + 2], r8w
jne 0x14003d225
mov r14, qword [0x14010dd78]
jmp 0x14003cdfe
mov byte [rsp + 0x360], 2
cmp r9, r8
je 0x14003d2d2
cmp r14, r8
jne 0x14003d2e6
cmp al, r8b
je 0x14003d225
mov rcx, r9
mov qword [rsp + 0x770], r8
mov qword [rsp + 0x778], r8
mov qword [rsp + 0x780], r8
movzx r10d, word [r9]
mov r15d, 0x23
mov qword [rsp + 0x378], rcx
cmp r12d, r8d
jne 0x14003ce67
cmp r15w, word [r9]
jne 0x14003ce67
movzx eax, word [r9 + 2]
lea edx, [r15 - 0x1a]
sub ax, 0x30
cmp ax, dx
ja 0x14003ce67
mov r11, qword [rsp + 0x1268]
jmp 0x14003cef7
mov r12d, 0x2a
cmp r12w, r10w
jne 0x14003ce8a
add r9, 2
mov rcx, r9
mov qword [rsp + 0x388], r9
mov qword [rsp + 0x378], rcx
mov edx, 0x22
mov r11, r8
cmp dx, word [r9]
jne 0x14003ceed
add r9, 2
lea rcx, [rsp + 0x378]
mov qword [rsp + 0x388], r9
mov qword [rsp + 0x378], r9
call fcn.140009210
mov rcx, qword [rsp + 0x378]
xor r8d, r8d
cmp word [rcx], r8w
je 0x14003ceed
mov word [rcx], r8w
mov r9, qword [rsp + 0x388]
mov r11, rcx
mov rcx, qword [rsp + 0x378]
add rcx, 2
mov qword [rsp + 0x378], rcx
cmp r12w, r10w
jne 0x14003d00a
mov r10, qword [0x14010dd78]
mov r13, r8
jmp 0x14003cf15
cmp r15w, ax
je 0x14003cf1e
add rcx, 2
mov qword [rsp + 0x378], rcx
movzx eax, word [rcx]
cmp ax, r8w
jne 0x14003cf03
mov rax, rcx
cmp word [rcx], r8w
je 0x14003cf57
mov edx, 0x7c
cmp dx, word [rax]
je 0x14003cf47
mov edx, 0x3a
cmp dx, word [rax]
je 0x14003cf47
add rax, 2
cmp word [rax], r8w
jne 0x14003cf27
jmp 0x14003cf57
mov word [rax], r8w
mov rcx, qword [rsp + 0x378]
add rax, 2
cmp word [rax], r8w
lea r12, str.EXEDATA
cmovne r12, rax
cmp r15w, word [rcx]
jne 0x14003d01d
mov word [rcx], r8w
cmp r11, r8
je 0x14003cf7d
mov word [r11], r8w
mov rcx, qword [rsp + 0x388]
mov eax, 0x2e
cmp ax, word [rcx]
jne 0x14003cfab
lea rax, [rcx + 2]
cmp word [rax], r8w
jne 0x14003cfab
mov r10, qword [0x14010dd78]
mov rcx, rax
mov qword [rsp + 0x388], rax
cmp word [rcx], r8w
je 0x14003cfc6
xor edx, edx
lea r8d, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
xor r8d, r8d
mov r10, rax
mov r13, rax
mov rax, qword [rsp + 0x378]
mov word [rax], r15w
cmp r10, r8
je 0x14003cffa
mov rdx, qword [rsp + 0x378]
mov qword [rsp + 0x20], r8
lea r9, [rsp + 0x770]
mov r8, r12
mov rcx, r10
call fcn.14001b8d4
xor r8d, r8d
cmp r13, r8
je 0x14003d01d
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x14003d01a
lea rdx, [rsp + 0x770]
mov rcx, r9
call fcn.14001b158
xor r8d, r8d
mov r13, qword [rsp + 0x770]
mov r15d, dword [rsp + 0x778]
cmp r13, r8
jne 0x14003d0d0
mov bl, byte [rsp + 0x323]
xor r15d, r15d
lea rcx, [rsp + 0x770]
cmp byte [rsp + 0x320], r15b
lea r13d, [r15 + 1]
mov rdi, r15
sete dil
mov byte [rsp + 0x324], r13b
mov qword [rsp + 0x338], r13
call fcn.140050424
cmp bl, r15b
je 0x14003ecce
mov bl, byte [rsp + 0x325]
cmp byte [rsp + 0x32a], r15b
jne 0x14003c601
cmp rsi, r15
je 0x14003d0ab
lea rdx, str.0x_p
lea rcx, [rsp + 0x7a0]
mov r8, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
mov rdx, qword [rsp + 0x390]
mov rcx, qword [rsp + 0x1260]
lea r8, [rsp + 0x7a0]
call fcn.140057714
cmp bl, 2
jmp 0x14003cd7a
lea rcx, [rsp + 0x368]
mov edx, 0x38
call fcn.140057e3c
mov r12, qword [rsp + 0x368]
xor eax, eax
cmp r12, rax
je 0x14003d0f9
mov rcx, r12
call fcn.140015a8c
mov r8, r15
mov rdx, r13
mov rcx, r12
call fcn.140029240
xor r15d, r15d
cmp rax, r15
je 0x14003d1f0
mov sil, byte [rsp + 0x320]
cmp sil, r15b
je 0x14003d1a9
mov rax, qword [rsp + 0x330]
cmp rax, r15
je 0x14003d18a
cmp word [rax], r15w
je 0x14003d18a
mov rax, qword [rsp + 0x770]
mov rcx, qword [rsp + 0x1260]
lea r9d, [r15 + 0x38]
mov qword [r12 + 0x10], rax
mov r8, qword [rsp + 0x368]
mov rdx, qword [rsp + 0x330]
lea eax, [r15 + 1]
mov qword [rsp + 0x770], r15
mov byte [rsp + 0x28], al
lea rax, [rsp + 0x368]
mov qword [rsp + 0x20], rax
call fcn.140066ba4
mov qword [rsp + 0x368], r15
lea rcx, [rsp + 0x770]
mov rdi, r12
mov bpl, 1
call fcn.140050424
mov bl, byte [rsp + 0x321]
jmp 0x14003ed84
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x340]
mov rdx, rbp
mov r9, rax
mov r8, rax
mov qword [rsp + 0x340], r15
call fcn.140057f74
mov rdx, qword [rsp + 0x340]
mov rcx, r12
call fcn.140015af0
lea rcx, [rsp + 0x340]
mov rsi, rax
call fcn.140050424
cmp rsi, r15
jne 0x14003d213
cmp byte [rsp + 0x320], r15b
mov eax, 1
mov rdi, r15
sete dil
mov byte [rsp + 0x324], al
mov qword [rsp + 0x338], rax
lea rcx, [rsp + 0x770]
call fcn.140050424
jmp 0x14003d4b5
movzx eax, word [r9]
and ax, cx
mov ecx, 0x4b
cmp cx, ax
jne 0x14003d25f
lea rdx, [0x1400f5fc0]
mov rcx, r9
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
xor r8d, r8d
cmp eax, r8d
jne 0x14003d257
mov r14, qword [0x14010ddd8]
jmp 0x14003d2c0
mov r9, qword [rsp + 0x388]
movzx eax, word [r9]
mov ecx, 0xffdf
and ax, cx
mov ecx, 0x55
cmp cx, ax
jne 0x14003d29e
lea rdx, str.user32.DLL
mov rcx, r9
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
xor r8d, r8d
cmp eax, r8d
jne 0x14003d296
mov r14, qword [0x14010ddd0]
jmp 0x14003d2c0
mov r9, qword [rsp + 0x388]
cmp r15b, r8b
je 0x14003d2ac
mov r14, qword [0x14010dd78]
jmp 0x14003d2c0
mov rcx, r9
mov byte [rsp + 0x325], 1
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r14, rax
xor r15d, r15d
cmp r14, r15
jne 0x14003d2e9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x14003d2d5
xor r15d, r15d
cmp r14, r15
jne 0x14003d2e9
mov bl, byte [rsp + 0x323]
jmp 0x14003d070
xor r15d, r15d
or r12, 0xffffffffffffffff
lea rcx, [rsp + 0x358]
mov rdx, rbp
mov r9, r12
mov r8, r12
mov qword [rsp + 0x358], r15
call fcn.140057f74
mov rdx, qword [rsp + 0x358]
mov rcx, r14
test r13b, 2
je 0x14003d323
call fcn.140015af0
jmp 0x14003d329
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
cmp rax, r15
jne 0x14003d4a5
cmp byte [rsp + 0x328], r15b
je 0x14003d49d
cmp byte [rsp + 0x322], r15b
jne 0x14003d49d
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd r15, eax
mov eax, 0xffdf
lea r12, [r15 + r15]
movzx ecx, word [r12 + rbp - 2]
and cx, ax
mov eax, 0x41
cmp cx, ax
je 0x14003d49a
mov eax, 0x57
cmp cx, ax
je 0x14003d49a
lea ecx, [rax - 0x4f]
call fcn.1400d4138
mov rsi, rax
xor eax, eax
cmp rsi, rax
je 0x14003d3ae
lea ecx, [r15 + 2]
movsxd rdx, ecx
mov rcx, rsi
call fcn.1400580ac
jmp 0x14003d3b1
mov rsi, rax
mov eax, 1
lea r9, [rsp + 0x3a8]
lea r8, [rsp + 0x3c0]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x3b8]
lea rcx, [rsp + 0x3b0]
mov dword [rsp + 0x20], 8
mov qword [rsp + 0x3a8], rsi
call fcn.140058388
mov rcx, qword [rsi]
mov r8, r12
mov rdx, rbp
call fcn.14001aa74
mov rbp, qword [rsi]
xor ecx, ecx
mov word [rbp + r15*2 + 2], cx
mov eax, 0x57
mov rcx, r14
mov word [r12 + rbp], ax
mov rdx, qword [rsp + 0x358]
cmp r13b, 2
jne 0x14003d42b
call fcn.140015af0
jmp 0x14003d431
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r15d, r15d
mov rsi, rax
cmp rax, r15
jne 0x14003d4a5
lea eax, [r15 + 0x41]
lea rcx, [rsp + 0x3a8]
mov rdx, rbp
mov word [r12 + rbp], ax
or rax, 0xffffffffffffffff
mov qword [rsp + 0x3a8], r15
mov r9, rax
mov r8, rax
call fcn.140057f74
mov rdx, qword [rsp + 0x3a8]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rsp + 0x3a8]
mov rsi, rax
call fcn.140050424
cmp rsi, r15
je 0x14003d49d
lea eax, [r15 + 0x40]
mov byte [rsp + 0x322], al
jmp 0x14003d4a5
xor r15d, r15d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
lea rcx, [rsp + 0x358]
jmp 0x14003d21b
xor r15d, r15d
cmp byte [rsp + 0x323], r15b
je 0x14003d4fa
mov bl, byte [rsp + 0x325]
mov eax, 1
cmp bl, al
jne 0x14003d080
cmp byte [rsp + 0x360], r15b
jg 0x14003d080
cmp r14, r15
je 0x14003d080
mov rcx, r14
mov bl, 2
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x14003d080
mov r12b, r15b
cmp rsi, r15
je 0x14003d69f
mov r13d, dword [rsp + 0x34c]
test r13b, 7
je 0x14003d57f
call fcn.140056aa0
cmp r13d, r15d
je 0x14003d57f
cmp qword [0x14010e570], r15
je 0x14003d57f
cmp qword [0x14010e578], r15
je 0x14003d57f
lea rcx, [0x14010ee78]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r13, qword [rsp + 0x1260]
mov al, byte [r13 + 0x12]
test al, 2
jne 0x14003d570
mov ecx, 1
movzx r12d, r15b
test cl, al
cmove r12d, ecx
or al, 3
xor ecx, ecx
mov byte [r13 + 0x12], al
or r12b, 2
call qword [0x14010e570]
jmp 0x14003d587
lea rcx, [0x14010ee78]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14003d587
mov r13, qword [rsp + 0x1260]
cmp byte [rsp + 0x324], r15b
je 0x14003d599
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp byte [rsp + 0x328], r15b
je 0x14003d6dc
mov edi, 1
mov qword [rsp + 0x338], r15
mov word [rsp + 0x1270], r15w
lea eax, [rdi + 0x3f]
mov byte [rsp + 0x329], dil
cmp byte [rsp + 0x322], al
jne 0x14003d607
mov rdx, qword [rsp + 0x330]
cmp rdx, r15
je 0x14003d614
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x338]
mov r9, rax
mov r8, rax
call fcn.140057f74
mov r11, qword [rsp + 0x338]
mov qword [rsp + 0x330], r11
jmp 0x14003d60f
mov r11, qword [rsp + 0x330]
cmp r11, r15
jne 0x14003d624
lea rax, [rsp + 0x1270]
mov qword [rsp + 0x330], rax
mov rbx, qword [0x14010dd78]
xor edx, edx
mov rcx, r13
call fcn.1400185e4
cmp rbp, r15
je 0x14003d66e
lea rcx, str.InstallHinfSection
mov r8d, 0x12
mov rdx, rbp
call fcn.140051938
cmp al, r15b
je 0x14003d66e
cmp word [rbp + 0x24], r15w
je 0x14003d666
mov word [rbp + 0x24], di
cmp word [rbp + 0x26], r15w
jne 0x14003d66e
mov rbp, r15
mov rbx, r15
jmp 0x14003d673
mov ebp, 5
mov rcx, qword [r13 + 0x40]
call fcn.140050790
mov r8, qword [rsp + 0x330]
mov r9, rbp
mov rcx, rax
mov rdx, rbx
call rsi
lea rcx, [rsp + 0x338]
mov rdi, rax
call fcn.140050424
mov r13d, 1
mov bl, byte [rsp + 0x324]
mov qword [rsp + 0x338], rdi
cmp bl, r15b
je 0x14003ec7e
cmp bl, 2
jne 0x14003ec6e
cmp edi, r13d
jne 0x14003ec5f
mov qword [rsp + 0x338], r15
jmp 0x14003ec7e
mov r13d, 1
cmp dword [rsp + 0x1270], r13d
jne 0x14003e2c7
cmp ebx, 0x64
setbe al
mov byte [rsp + 0x329], al
cmp ebx, 0x10
ja 0x14003d8ba
cmp ebx, 8
ja 0x14003d7ab
je 0x14003e436
cmp ebx, r15d
je 0x14003e373
sub ebx, r13d
je 0x14003e367
sub ebx, r13d
je 0x14003e353
sub ebx, r13d
je 0x14003e337
sub ebx, r13d
je 0x14003e313
sub ebx, r13d
je 0x14003e37d
sub ebx, r13d
je 0x14003e491
sub ebx, r13d
jne 0x14003d6a5
mov rax, qword [rsp + 0x420]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov eax, 9
sub ebx, eax
je 0x14003e3ce
sub ebx, r13d
je 0x14003e4d2
sub ebx, r13d
je 0x14003e80d
sub ebx, r13d
je 0x14003e77e
sub ebx, r13d
je 0x14003e6e2
sub ebx, r13d
je 0x14003e639
sub ebx, r13d
je 0x14003e583
sub ebx, r13d
jne 0x14003d6a5
mov rax, qword [rsp + 0x468]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
cmp ebx, 0x14
jbe 0x14003e8b3
cmp ebx, 0x1e
ja 0x14003da6f
mov rax, qword [rsp + 0x4d8]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x4d0]
mov rdx, qword [rsp + 0x3f8]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x4c8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x490]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
cmp ebx, 0x28
ja 0x14003dcbb
mov rax, qword [rsp + 0x528]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x520]
mov rdx, qword [rsp + 0x3f8]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x518]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x508]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x500]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x4f8]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x4f0]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x4e8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x490]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
cmp ebx, 0x64
ja 0x14003d6a5
mov rax, qword [rsp + 0x708]
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x700]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x6f8]
mov qword [rsp + 0x308], rax
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0x6e8]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0x6d8]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x6d0]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x6c8]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x6c0]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x6b8]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x6b0]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x6a8]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x6a0]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x698]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0x690]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x688]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x680]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x678]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x670]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x668]
mov qword [rsp + 0x278], rax
mov rax, qword [rsp + 0x660]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x658]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x650]
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x648]
mov qword [rsp + 0x258], rax
mov rax, qword [rsp + 0x640]
mov qword [rsp + 0x250], rax
mov rax, qword [rsp + 0x638]
mov qword [rsp + 0x248], rax
mov rax, qword [rsp + 0x630]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x628]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0x620]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x618]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x610]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0x608]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x600]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x5f8]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x5f0]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x5e8]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x5e0]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0x5d8]
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x5d0]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x5c8]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x5c0]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x5b8]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x5b0]
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x5a8]
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x5a0]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x598]
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x590]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x588]
mov qword [rsp + 0x198], rax
mov rax, qword [rsp + 0x580]
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x578]
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x570]
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0x568]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x560]
mov qword [rsp + 0x170], rax
mov rax, qword [rsp + 0x558]
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x550]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x540]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x538]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x528]
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x518]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x508]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x500]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x4f8]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x4f0]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x4e8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x490]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x480]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
cmp ebx, 0x14
setbe al
mov byte [rsp + 0x329], al
cmp ebx, 0xa
ja 0x14003e547
je 0x14003e4d2
mov ebp, 5
cmp ebx, ebp
ja 0x14003e3ae
je 0x14003e37d
cmp ebx, r15d
je 0x14003e373
sub ebx, r13d
je 0x14003e367
sub ebx, r13d
je 0x14003e353
sub ebx, r13d
je 0x14003e337
sub ebx, r13d
jne 0x14003d6a5
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
call rsi
jmp 0x14003e375
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
call rsi
jmp 0x14003e375
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
call rsi
jmp 0x14003e375
mov rcx, qword [rsp + 0x3f0]
call rsi
jmp 0x14003e375
call rsi
mov rdi, rax
jmp 0x14003d6a5
mov rax, qword [rsp + 0x410]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
sub ebx, 6
je 0x14003e491
sub ebx, r13d
je 0x14003d75d
sub ebx, r13d
je 0x14003e436
sub ebx, r13d
jne 0x14003d6a5
mov rax, qword [rsp + 0x430]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x428]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x418]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x438]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
cmp ebx, 0x10
ja 0x14003e88f
je 0x14003d7f7
sub ebx, 0xb
je 0x14003e80d
sub ebx, r13d
je 0x14003e77e
sub ebx, r13d
je 0x14003e6e2
sub ebx, r13d
je 0x14003e639
sub ebx, r13d
jne 0x14003d6a5
mov rax, qword [rsp + 0x460]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x458]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x450]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x448]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x440]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
sub ebx, 0x11
je 0x14003eb8c
sub ebx, r13d
je 0x14003eaa9
sub ebx, r13d
je 0x14003e9b6
sub ebx, r13d
jne 0x14003d6a5
mov rax, qword [rsp + 0x488]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x480]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x480]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x478]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
mov rax, qword [rsp + 0x470]
mov r9, qword [rsp + 0x408]
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x3f0]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x20], rax
call rsi
jmp 0x14003e375
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r15d
cmove eax, r13d
jmp 0x14003ec76
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov eax, eax
mov qword [rsp + 0x338], rax
cmp byte [rsp + 0x325], r15b
jle 0x14003eca0
cmp byte [rsp + 0x360], r15b
jg 0x14003eca0
cmp r14, r15
je 0x14003eca0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp r12b, r15b
je 0x14003ecc7
call qword [0x14010e578]
mov rax, qword [rsp + 0x1260]
lea rcx, [0x14010ee78]
not r12b
and byte [rax + 0x12], r12b
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov bl, byte [rsp + 0x323]
mov al, byte [rsp + 0x326]
cmp al, r15b
jg 0x14003ecee
mov rcx, qword [rsp + 0x398]
call fcn.14001784c
mov al, byte [rsp + 0x326]
cmp qword [rsp + 0x788], r15
je 0x14003ecfd
cmp al, r15b
jg 0x14003ed02
call fcn.14001b1e0
cmp bl, r15b
je 0x14003ed6d
lea rcx, [rsp + 0x398]
call fcn.140050424
lea rcx, [rsp + 0x368]
call fcn.140050424
lea rcx, [rsp + 0x3b0]
call fcn.14001addc
lea rcx, [rsp + 0x3b0]
call fcn.140050424
mov rsi, rdi
lea rcx, [rsp + 0x790]
call fcn.140050424
lea rcx, [rsp + 0x390]
call fcn.140050424
lea rcx, [rsp + 0x3d8]
call fcn.140050424
mov rax, rsi
jmp 0x14003ef65
mov bl, byte [rsp + 0x321]
mov bpl, byte [rsp + 0x329]
mov sil, byte [rsp + 0x320]
mov rax, qword [rsp + 0x390]
cmp word [rax], r15w
je 0x14003ee08
mov r12d, 0x2a
cmp r12w, word [rax]
je 0x14003ede9
cmp bpl, r15b
je 0x14003ede9
cmp byte [rsp + 0x32b], r15b
lea rax, [0x1400f5f98]
lea r8, [0x1400f5f88]
cmovne r8, rax
cmp sil, r15b
je 0x14003edd5
cmp bl, r15b
je 0x14003edd5
cmp rdi, r15
jne 0x14003edd9
lea r8, [0x1400f04f4]
jmp 0x14003edd9
add r8, 2
lea rcx, [rsp + 0x7a0]
mov rdx, rdi
call fcn.1400c38b4
neg byte [rsp + 0x324]
sbb rax, rax
and rax, qword [rsp + 0x338]
mov rbx, rax
mov qword [rsp + 0x338], rax
jmp 0x14003ee16
mov rbx, qword [rsp + 0x338]
mov r12d, 0x2a
mov rcx, qword [rsp + 0x368]
cmp rcx, r15
je 0x14003ee28
call fcn.140015aac
mov rdx, qword [rsp + 0x390]
cmp word [rdx], r15w
je 0x14003ee51
cmp r12w, word [rdx]
je 0x14003ee51
mov rcx, qword [rsp + 0x1260]
lea r8, [rsp + 0x7a0]
call fcn.140057714
cmp dword [rsp + 0x3a0], r15d
jge 0x14003ee97
mov rdi, qword [rsp + 0x3c8]
mov ebx, 1
mov rax, qword [rsp + rdi*8 + 0xed0]
cmp rax, r15
je 0x14003ee8a
lea rcx, [rsp + 0x3c8]
mov qword [rsp + 0x3c8], rax
call fcn.140050424
add rdi, rbx
js 0x14003ee68
mov rbx, qword [rsp + 0x338]
lea rcx, [rsp + 0x398]
call fcn.140050424
lea rcx, [rsp + 0x368]
call fcn.140050424
lea rcx, [rsp + 0x3b0]
call fcn.14001addc
lea rcx, [rsp + 0x3b0]
call fcn.140050424
lea rcx, [rsp + 0x790]
call fcn.140050424
lea rcx, [rsp + 0x390]
call fcn.140050424
lea rcx, [rsp + 0x3d8]
call fcn.140050424
mov rax, rbx
jmp 0x14003ef65
lea rcx, [rsp + 0x398]
call fcn.140050424
lea rcx, [rsp + 0x368]
call fcn.140050424
lea rcx, [rsp + 0x3b0]
call fcn.14001addc
lea rcx, [rsp + 0x3b0]
call fcn.140050424
lea rcx, [rsp + 0x790]
call fcn.140050424
lea rcx, [rsp + 0x390]
call fcn.140050424
lea rcx, [rsp + 0x3d8]
call fcn.140050424
neg byte [rsp + 0x32a]
sbb rax, rax
not rax
and rax, 0xffffffff80070057
mov rbx, qword [rsp + 0x1278]
add rsp, 0x1220
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret