Function at 0x14003f1ac
Capabilities:
Get common file path

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
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, 0x590
mov eax, r8d
mov bl, r8b
mov r13, rcx
mov edi, 1
lea rcx, [r11 - 0x158]
and bl, 0xf0
and eax, edi
mov byte [rsp + 0x322], bl
mov qword [rsp + 0x370], r9
mov dword [rsp + 0x5e0], eax
call fcn.14006d444
mov r14, qword [rsp + 0x5d8]
or r8, 0xffffffffffffffff
xor esi, esi
lea rcx, [rsp + 0x5d8]
mov dword [rsp + 0x3d8], r8d
mov qword [rsp + 0x380], rsi
mov qword [rsp + 0x3c0], r8
mov qword [rsp + 0x3e8], rsi
call fcn.140016ba0
lea rcx, [rsp + 0x3a8]
mov r15d, 0xffff0000
mov byte [rsp + 0x325], r8b
mov byte [rsp + 0x326], r8b
mov byte [rsp + 0x388], sil
mov byte [rsp + 0x324], sil
mov byte [rsp + 0x321], sil
mov byte [rsp + 0x323], sil
mov bpl, sil
mov byte [rsp + 0x329], sil
mov byte [rsp + 0x378], sil
mov byte [rsp + 0x339], r8b
mov byte [rsp + 0x34e], dil
mov byte [rsp + 0x327], sil
mov byte [rsp + 0x3bc], sil
mov dword [rsp + 0x3b0], r15d
mov qword [rsp + 0x368], rsi
mov byte [rsp + 0x34d], sil
call fcn.140061620
lea rcx, [rsp + 0x460]
mov qword [rsp + 0x4b8], rsi
call fcn.140061620
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140116188]
mov r8d, edi
mov word [rsp + 0x510], si
call fcn.14006402c
cmp al, sil
jne 0x14003f30c
mov al, sil
cmp bl, sil
je 0x14003f30f
mov al, dil
cmp bl, sil
mov byte [rsp + 0x32a], al
mov byte [rsp + 0x32b], sil
setne byte [rsp + 0x328]
cmp al, sil
je 0x14003f33e
mov byte [rsp + 0x325], sil
mov byte [rsp + 0x326], dil
mov rax, qword [rsp + 0x5d8]
mov dil, 0x2a
cmp word [rax], 0x2d
jne 0x14003f352
mov dil, byte [rax]
lea rcx, [rsp + 0x488]
mov edx, 0x17e0
mov qword [rsp + 0x438], rsi
mov qword [rsp + 0x350], rsi
call fcn.1400613a8
mov rcx, qword [rsp + 0x488]
call fcn.140058e60
mov rbx, qword [rsp + 0x488]
mov byte [rsp + 0x34c], sil
lea rdx, [rbx + 0xa08]
lea r15, [rbx + 0x378]
mov qword [rsp + 0x458], rsi
lea rax, [r15 + 0x6b0]
mov qword [rsp + 0x360], rdx
movsx esi, dil
mov qword [rsp + 0x448], rax
lea rax, [rdx + 0xa08]
mov qword [rsp + 0x4d8], rbx
mov qword [rsp + 0x3f8], rax
lea rax, [rdx + 0xa20]
mov rdx, qword [rsp + 0x5d8]
mov qword [rsp + 0x430], rax
add rax, 0x30
mov qword [rsp + 0x490], r15
mov qword [rsp + 0x428], rax
movzx eax, word [rdx]
mov qword [rsp + 0x4d0], 5
cmp eax, esi
jne 0x14003fdee
movzx eax, word [rdx + 2]
cmp eax, esi
jne 0x14003fdc5
add rdx, 4
lea rcx, [0x140118750]
mov r8d, 1
mov qword [rsp + 0x5d8], rdx
lea rdx, [rsp + 0x5d8]
call fcn.14006402c
xor r8d, r8d
cmp al, r8b
je 0x14003f465
lea eax, [r8 + 1]
mov dword [rsp + 0x5e0], eax
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x14011874c]
mov r8d, 2
call fcn.14006402c
test al, al
je 0x14003f494
mov eax, 1
mov byte [rsp + 0x325], al
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140117424]
mov r8d, 3
call fcn.14006402c
xor r8d, r8d
cmp al, r8b
je 0x14003f4c3
mov byte [rsp + 0x325], r8b
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, str.nrcd
mov r8d, 4
call fcn.14006402c
test al, al
je 0x14003f4ee
mov byte [rsp + 0x326], 2
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118740]
mov r8d, 3
call fcn.14006402c
xor r8d, r8d
cmp al, r8b
je 0x14003f51d
mov byte [rsp + 0x326], r8b
jmp 0x14003fda5
mov rdx, qword [rsp + 0x5d8]
mov r8d, 0x20
movzx eax, word [rdx]
lea ecx, [r8 + 0x51]
or ax, r8w
cmp cx, ax
jne 0x14003f763
movzx eax, word [rdx + 2]
lea ecx, [r8 + 0x44]
or ax, r8w
cmp cx, ax
jne 0x14003f763
add rdx, 4
lea rcx, [0x140113230]
xor r8d, r8d
mov qword [rsp + 0x5d8], rdx
lea rdx, [rsp + 0x5d8]
call fcn.14006402c
test al, al
je 0x14003f588
mov byte [rsp + 0x321], 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x14011873c]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f5b3
mov byte [rsp + 0x321], 0x23
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x14011748c]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f5de
mov byte [rsp + 0x321], 0x2a
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118738]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f609
mov byte [rsp + 0x321], 0x3e
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118734]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f634
mov byte [rsp + 0x321], 0x24
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118730]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f65f
mov byte [rsp + 0x321], 0x40
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x14011872c]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f68a
mov byte [rsp + 0x321], 0x3d
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118728]
mov r8d, 1
call fcn.14006402c
test al, al
je 0x14003f6b5
mov byte [rsp + 0x321], 0x3c
jmp 0x14003fda5
mov rdx, qword [rsp + 0x5d8]
lea rcx, str.:____
mov r8d, 1
call fcn.14005a5c4
xor r8d, r8d
cmp al, r8b
mov rax, qword [rsp + 0x5d8]
je 0x14003f752
add rax, 2
mov qword [rsp + 0x5d8], rax
mov rdx, rax
movzx ecx, word [rax]
cmp cx, r8w
je 0x14003f73b
lea r9d, [r8 + 9]
lea r11d, [r8 + 0x20]
cmp r9w, cx
ja 0x14003f70b
cmp cx, 0xd
jbe 0x14003f728
cmp r11w, cx
je 0x14003f728
add rax, 2
mov qword [rsp + 0x5d8], rax
mov cx, word [rax]
cmp cx, r8w
je 0x14003f73b
jmp 0x14003f6ff
cmp word [rax], r8w
je 0x14003f73b
mov word [rax], r8w
add qword [rsp + 0x5d8], 2
cmp word [rdx], r8w
je 0x14003fd98
mov qword [rsp + 0x438], rdx
jmp 0x14003fd98
sub rax, 4
mov qword [rsp + 0x5d8], rax
jmp 0x14003fd0b
lea rcx, [0x14011871c]
mov r8d, 4
call fcn.14005a5c4
xor r8d, r8d
cmp al, r8b
je 0x14003f7f9
mov rax, qword [rsp + 0x5d8]
add rax, 8
mov qword [rsp + 0x5d8], rax
mov rcx, rax
mov qword [rsp + 0x350], rax
movzx ecx, word [rax]
cmp cx, r8w
je 0x14003fd98
lea edx, [r8 + 9]
lea r11d, [r8 + 0x20]
cmp dx, cx
ja 0x14003f7bc
cmp cx, 0xd
jbe 0x14003f7dd
cmp r11w, cx
je 0x14003f7dd
add rax, 2
mov qword [rsp + 0x5d8], rax
mov cx, word [rax]
cmp cx, r8w
je 0x14003fd98
jmp 0x14003f7b1
cmp word [rax], r8w
je 0x14003fd98
mov word [rax], r8w
add qword [rsp + 0x5d8], 2
jmp 0x14003fd98
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118718]
mov r8d, 2
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f828
lea eax, [rcx + 1]
mov dword [rsp + 0x3b0], eax
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118714]
mov r8d, 3
call fcn.14006402c
xor r8d, r8d
cmp al, r8b
je 0x14003f857
mov dword [rsp + 0x3b0], r8d
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118710]
mov r8d, 3
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f87f
mov bpl, 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x14011870c]
mov r8d, 3
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f8ac
mov byte [rsp + 0x329], 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140117e60]
mov r8d, 1
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f8d9
mov byte [rsp + 0x378], 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140113ba8]
mov r8d, 3
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f906
mov byte [rsp + 0x327], 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140118708]
mov r8d, 2
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f933
mov byte [rsp + 0x34d], 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, str.bool
mov r8d, 4
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003f960
mov byte [rsp + 0x327], 2
jmp 0x14003fda5
mov rdx, qword [rsp + 0x5d8]
lea rcx, str.sret:
mov r8d, 5
call fcn.14005a5c4
xor r8d, r8d
cmp al, r8b
je 0x14003f990
mov rax, qword [rsp + 0x5d8]
add rax, 2
jmp 0x14003f9be
mov rdx, qword [rsp + 0x5d8]
lea rcx, [0x1401186f0]
mov r8d, 4
call fcn.14005a5c4
xor r8d, r8d
cmp al, r8b
je 0x14003fa93
mov rax, qword [rsp + 0x5d8]
add rax, 8
mov qword [rsp + 0x5d8], rax
mov rdx, rax
movzx ecx, word [rax]
cmp cx, r8w
je 0x14003fa07
mov r9d, 9
lea r11d, [r9 + 0x17]
cmp r9w, cx
ja 0x14003f9ec
cmp cx, 0xd
jbe 0x14003fa07
cmp r11w, cx
je 0x14003fa07
add rax, 2
mov qword [rsp + 0x5d8], rax
mov cx, word [rax]
cmp cx, r8w
jne 0x14003f9e0
mov ecx, 0x7e
cmp cx, word [rdx]
je 0x14003fa86
mov ecx, 0x40
cmp cx, word [rdx]
je 0x14003fa86
sub rax, rdx
lea rcx, [rsp + 0x3a8]
sar rax, 1
mov r8, rax
call fcn.140061888
lea rdx, [rsp + 0x3a8]
xor r8d, r8d
mov rcx, r13
call fcn.140003978
mov rdx, qword [rsp + 0x3a8]
lea rcx, [0x140113bd0]
mov byte [rsp + 0x324], 1
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
xor r8d, r8d
cmp eax, r8d
jne 0x14003fd98
mov rax, qword [rsp + 0x3a8]
mov byte [rsp + 0x324], 3
mov word [rax], r8w
jmp 0x14003fd98
mov qword [rsp + 0x458], rdx
jmp 0x14003f7dd
mov rdx, qword [rsp + 0x5d8]
lea rcx, str.vret:
mov r8d, 5
call fcn.14005a5c4
xor ecx, ecx
cmp al, cl
je 0x14003fb84
mov r8, qword [rsp + 0x5d8]
add r8, 0xa
mov qword [rsp + 0x5d8], r8
mov rdx, r8
movzx eax, word [r8]
cmp ax, cx
je 0x14003fb06
lea r9d, [rcx + 9]
lea r11d, [rcx + 0x20]
cmp r9w, ax
ja 0x14003faeb
cmp ax, 0xd
jbe 0x14003fb06
cmp r11w, ax
je 0x14003fb06
add r8, 2
mov qword [rsp + 0x5d8], r8
mov ax, word [r8]
cmp ax, cx
jne 0x14003fadf
sub r8, rdx
lea rcx, [rsp + 0x420]
sar r8, 1
call fcn.14006d468
lea rcx, [rsp + 0x5d8]
call fcn.140016ba0
lea rdx, [rsp + 0x420]
xor r8d, r8d
mov rcx, r13
call fcn.140003978
mov rdx, qword [rsp + 0x420]
xor eax, eax
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.1400183dc
xor ecx, ecx
cmp rax, rcx
je 0x14003fb72
mov rax, qword [rax + 8]
mov byte [rsp + 0x34c], 1
mov qword [rsp + 0x3f8], rax
lea rcx, [rsp + 0x420]
call fcn.140058efc
jmp 0x14003fda5
mov rdx, qword [rsp + 0x5d8]
lea rcx, str.ivret:
mov r8d, 6
call fcn.14005a5c4
xor ecx, ecx
cmp al, cl
je 0x14003fc2f
mov r8, qword [rsp + 0x5d8]
add r8, 0xc
mov qword [rsp + 0x5d8], r8
mov rdx, r8
movzx eax, word [r8]
cmp ax, cx
je 0x14003fbf7
lea r9d, [rcx + 9]
lea r11d, [rcx + 0x20]
cmp r9w, ax
ja 0x14003fbdc
cmp ax, 0xd
jbe 0x14003fbf7
cmp r11w, ax
je 0x14003fbf7
add r8, 2
mov qword [rsp + 0x5d8], r8
mov ax, word [r8]
cmp ax, cx
jne 0x14003fbd0
sub r8, rdx
lea rcx, [rsp + 0x460]
sar r8, 1
call fcn.140061888
lea rcx, [rsp + 0x5d8]
call fcn.140016ba0
lea rdx, [rsp + 0x460]
xor r8d, r8d
mov rcx, r13
call fcn.140003978
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x140117430]
mov r8d, 1
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003fc5c
mov byte [rsp + 0x323], 1
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x1401186dc]
mov r8d, 3
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003fc91
mov byte [rsp + 0x339], 2
mov byte [rsp + 0x34e], 2
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, [0x1401186d8]
mov r8d, 3
call fcn.14006402c
xor ecx, ecx
cmp al, cl
je 0x14003fcc6
mov byte [rsp + 0x339], 4
mov byte [rsp + 0x34e], 4
jmp 0x14003fda5
lea rdx, [rsp + 0x5d8]
lea rcx, str.putref
mov r8d, 6
call fcn.14006402c
xor r8d, r8d
cmp al, r8b
je 0x14003fd03
mov r8d, 8
mov byte [rsp + 0x339], r8b
mov byte [rsp + 0x34e], r8b
jmp 0x14003fda5
mov rax, qword [rsp + 0x5d8]
mov ecx, 0x2a
cmp dil, cl
jne 0x14003fd5e
movzx ecx, word [rax]
mov rdx, rax
cmp cx, r8w
je 0x14003fd98
mov r9d, 0x2c
lea r10d, [r9 - 0x23]
lea r11d, [r9 - 0xc]
cmp r10w, cx
ja 0x14003fd3b
cmp cx, 0xd
jbe 0x14003fd64
cmp r11w, cx
je 0x14003fd64
cmp r9w, cx
je 0x14003fdb9
add rax, 2
mov qword [rsp + 0x5d8], rax
mov cx, word [rax]
cmp cx, r8w
je 0x14003fd98
jmp 0x14003fd2f
mov r10d, 9
movzx ecx, word [rax]
cmp cx, r8w
je 0x14003fd98
mov edx, 0x20
cmp r10w, cx
ja 0x14003fd7e
cmp cx, 0xd
jbe 0x14003fd98
cmp dx, cx
je 0x14003fd98
add rax, 2
mov qword [rsp + 0x5d8], rax
mov cx, word [rax]
cmp cx, r8w
jne 0x14003fd72
lea rcx, [rsp + 0x5d8]
call fcn.140016ba0
mov rdx, qword [rsp + 0x5d8]
movzx eax, word [rdx]
cmp eax, esi
jne 0x14003fdc5
jmp 0x14003f41b
add rdx, 0xfffffffffffffffc
mov qword [rsp + 0x5d8], rdx
xor eax, eax
cmp bpl, al
je 0x14003fdf0
lea r9, [0x140112598]
xor r8d, r8d
mov rcx, r13
mov dword [rsp + 0x20], 0xffffff9c
call fcn.1400d0a9c
mov rdi, rax
jmp 0x140041685
xor eax, eax
lea rcx, [rsp + 0x408]
mov esi, eax
mov dword [rsp + 0x348], eax
call fcn.140061ae4
mov rax, qword [rsp + 0x5d8]
mov rdi, qword [rsp + 0x370]
mov qword [rsp + 0x330], rdi
mov qword [r15], rax
mov rax, qword [rsp + 0x5d8]
mov ebp, 1
mov qword [r15 + 0x358], rax
mov rcx, qword [rsp + 0x5d8]
lea edx, [rbp + 0x2b]
mov qword [rsp + 0x4c8], r15
mov r13d, ebp
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r10d, r10d
mov r12, rax
mov qword [rsp + 0x3a0], rax
cmp rax, r10
je 0x14003fe88
mov r15, rax
sub r15, r14
sar r15, 1
add r12, 2
mov qword [rsp + 0x3d8], r15
mov qword [rsp + 0x3a0], r12
lea r15, [rbx + 0x378]
mov qword [r15 + 8], r12
mov qword [r15 + 0x360], r12
cmp r12, r10
je 0x14003febd
lea rcx, str._LoadLibrary
mov r8d, 0xc
mov rdx, r12
call fcn.14005a5c4
xor r10d, r10d
mov byte [rsp + 0x320], bpl
cmp al, r10b
jne 0x14003fec5
mov byte [rsp + 0x320], r10b
cmp r12, r10
je 0x14003feea
lea rcx, str._GetProcAddress
mov r8d, 0xf
mov rdx, r12
call fcn.14005a5c4
xor r10d, r10d
mov r15b, bpl
cmp al, r10b
jne 0x14003feed
mov r15b, r10b
cmp r12, r10
je 0x14003ff12
lea rcx, str._FreeLibrary
mov r8d, 0xc
mov rdx, r12
call fcn.14005a5c4
xor r10d, r10d
mov r14b, bpl
cmp al, r10b
jne 0x14003ff15
mov r14b, r10b
mov dl, byte [rsp + 0x320]
mov bpl, r14b
mov r8d, 0x2c
or bpl, r15b
or bpl, dl
cmp r12, r10
je 0x14003ff73
lea eax, [r8 - 2]
cmp ax, word [r12]
jne 0x14003ff73
movzx eax, word [r12 + 2]
cmp r8w, ax
je 0x14003ff66
cmp ax, r10w
je 0x14003ff66
lea ecx, [r8 - 0x23]
cmp cx, ax
ja 0x14003ff5c
cmp ax, 0xd
jbe 0x14003ff66
mov ecx, 0x20
cmp cx, ax
jne 0x14003ff73
mov r9, r13
mov byte [rsp + 0x34f], r9b
jmp 0x14003ff9f
mov byte [rsp + 0x34f], r10b
mov r9, r13
cmp byte [rsp + 0x32a], r10b
jne 0x14003ff9f
cmp byte [rsp + 0x328], r10b
jne 0x14003ff9f
cmp dl, r10b
jne 0x14003ff9f
mov cl, r9b
cmp r14b, r10b
je 0x14003ffa2
mov cl, r10b
mov al, r15b
mov byte [rsp + 0x338], cl
mov r11d, 0x10
or al, dl
je 0x14003ffbe
or byte [rsp + 0x34d], r11b
mov dword [rsp + 0x400], r10d
cmp byte [rsp + 0x329], r10b
jne 0x1400401ba
cmp cl, r10b
je 0x1400401ba
cmp rdi, r10
mov rcx, rdi
mov edx, r8d
cmove rcx, qword [rsp + 0x5d8]
mov qword [rsp + 0x330], rcx
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r10d, r10d
mov qword [rsp + 0x330], rax
cmp rax, r10
je 0x140040025
mov word [rax], r10w
mov rax, qword [rsp + 0x330]
add rax, 2
mov qword [rsp + 0x330], rax
mov r8, qword [rsp + 0x350]
cmp r8, r10
je 0x140040140
movzx ecx, word [rax]
cmp cx, r10w
je 0x140040083
mov edx, 9
lea r9d, [rdx + 0x17]
cmp dx, cx
ja 0x140040053
cmp cx, 0xd
jbe 0x140040070
cmp r9w, cx
je 0x140040070
add rax, 2
mov qword [rsp + 0x330], rax
mov cx, word [rax]
cmp cx, r10w
je 0x140040083
jmp 0x140040048
cmp word [rax], r10w
je 0x140040083
mov word [rax], r10w
add qword [rsp + 0x330], 2
lea rcx, [rsp + 0x330]
call fcn.140016ba0
mov edi, 2
lea r9d, [rdi - 1]
mov r13d, edi
jmp 0x14004012c
cmp rdi, 0x6a
jge 0x1400401ba
movzx edx, word [r8]
cmp dx, r10w
je 0x1400400c9
lea rax, [r8 + 2]
cmp word [rax], r10w
cmovne r8, rax
mov qword [rsp + 0x350], r8
mov qword [rsp + 0x3f0], rcx
mov ecx, 0x7e
mov eax, 0x48d
cmp cx, dx
mov r8d, 0x5a5
lea rdx, [rsp + 0x4e0]
lea rcx, [rsp + 0x3f0]
cmove r8d, eax
call fcn.140024820
mov r8, qword [rsp + 0x350]
mov r9d, 1
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x3f0]
add r13d, r9d
mov qword [rbx + rdi*8 + 0x378], rax
add rdi, r9
xor r10d, r10d
mov rcx, qword [rsp + 0x330]
cmp word [rcx], r10w
jne 0x1400400a1
jmp 0x1400401ba
mov r12, r13
mov rdi, r13
mov esi, 0x2c
cmp rax, r10
je 0x1400401a5
cmp rdi, 2
jl 0x140040166
mov qword [rbx + rdi*8 + 0x378], rax
mov rax, qword [rsp + 0x330]
mov edx, esi
mov rcx, rax
add r13d, r12d
add rdi, r12
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r10d, r10d
mov qword [rsp + 0x330], rax
cmp rax, r10
je 0x14004019f
mov word [rax], r10w
mov rax, qword [rsp + 0x330]
add rax, 2
mov qword [rsp + 0x330], rax
cmp rdi, 0x6a
jl 0x14004014b
mov esi, dword [rsp + 0x348]
mov r12, qword [rsp + 0x3a0]
mov r9d, 1
mov qword [rsp + 0x3d0], r10
mov qword [rsp + 0x3f0], r10
cmp r12, r10
je 0x1400401d5
mov word [r12 - 2], r10w
cmp byte [rsp + 0x34f], r10b
jne 0x140040216
cmp r12, r10
je 0x140040216
mov ecx, 0x2a
cmp cx, word [r12]
jne 0x140040216
mov rax, qword [rsp + 0x380]
add r12, 2
add rax, r9
cmp cx, word [r12]
je 0x1400401f8
mov qword [rsp + 0x380], rax
mov qword [rsp + 0x3a0], r12
mov rdx, qword [rsp + 0x350]
mov r8, r10
mov qword [rsp + 0x340], r10
cmp r12, r10
je 0x140040309
cmp rdx, r10
je 0x1400402e5
mov r9, r12
mov r11d, 0x2c
cmp word [r12], r10w
je 0x140040275
lea eax, [r11 - 0x23]
lea ecx, [rax + 0x17]
cmp r11w, word [r9]
je 0x140040275
cmp ax, word [r9]
ja 0x140040265
cmp word [r9], 0xd
jbe 0x140040275
cmp cx, word [r9]
je 0x140040275
add r9, 2
cmp word [r9], r10w
jne 0x140040252
cmp word [r9], r10w
je 0x140040309
lea rcx, [rsp + 0x340]
mov qword [rsp + 0x340], r9
call fcn.140016ba0
mov rdx, qword [rsp + 0x340]
cmp r11w, word [rdx]
jne 0x1400402c3
add rdx, 2
lea rcx, [rsp + 0x340]
mov qword [rsp + 0x340], rdx
call fcn.140016ba0
mov rdx, qword [rsp + 0x340]
movzx eax, word [rdx]
neg ax
sbb rcx, rcx
and rcx, rdx
mov qword [rsp + 0x340], rcx
mov word [r9], r10w
mov r8, qword [rsp + 0x340]
jmp 0x140040301
mov edx, 0x2c
mov rcx, r12
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r10d, r10d
mov r8, rax
mov qword [rsp + 0x340], rax
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x5d8]
cmp word [rcx], r10w
jne 0x14004034f
cmp bpl, r10b
jne 0x14004034f
lea rcx, [rsp + 0x3d0]
call fcn.140058efc
lea rcx, [rsp + 0x408]
call fcn.1400ec7d8
lea rcx, [rsp + 0x408]
call fcn.140058efc
mov rdi, 0xffffffff80070057
jmp 0x140041685
cmp rdx, r10
jne 0x140040377
cmp r8, r10
je 0x140040377
cmp word [r8], r10w
je 0x140040377
mov word [r8], r10w
mov r8, qword [rsp + 0x340]
add r8, 2
mov qword [rsp + 0x340], r8
mov ebp, 7
lea eax, [rbp + 0x27]
cmp r12, r10
je 0x140040470
mov edx, eax
mov rcx, r12
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r10d, r10d
cmp rax, r10
je 0x140040460
mov word [rax], r10w
add rax, 2
movzx edx, word [rax]
mov rcx, rax
mov qword [rsp + 0x440], rax
cmp dx, r10w
je 0x1400403e2
lea r8d, [rbp + 2]
lea r9d, [rbp + 0x19]
cmp r8w, dx
ja 0x1400403cf
cmp dx, 0xd
jbe 0x1400403e2
cmp r9w, dx
je 0x1400403e2
add rax, 2
mov dx, word [rax]
cmp dx, r10w
jne 0x1400403c3
mov edx, 1
mov byte [rsp + 0x3bc], dl
cmp rax, rcx
je 0x140040460
cmp word [rax], r10w
je 0x1400403fd
mov word [rax], r10w
mov eax, 0x3f
cmp ax, word [rcx]
jne 0x14004041b
add rcx, 2
mov byte [rsp + 0x32b], 2
mov qword [rsp + 0x440], rcx
mov qword [rsp + 0x3e8], rcx
lea rdx, [rsp + 0x3c0]
lea rcx, [rsp + 0x440]
mov dil, 3
mov dword [rsp + 0x3bc], edi
call fcn.140065cf0
xor r10d, r10d
cmp eax, r10d
je 0x140040460
cmp qword [rsp + 0x3c0], r10
movzx edi, dil
cmovge edi, ebp
mov dword [rsp + 0x3bc], edi
mov rdx, qword [rsp + 0x350]
mov r8, qword [rsp + 0x340]
mov r9b, byte [rsp + 0x324]
and r9b, 2
mov byte [rsp + 0x324], r9b
je 0x1400404a4
cmp r12, r10
je 0x1400404a4
movzx eax, word [r12]
neg ax
sbb rcx, rcx
and rcx, r12
mov r12, rcx
mov qword [rsp + 0x3a0], rcx
cmp r9b, r10b
je 0x1400405a3
cmp r8, r10
je 0x1400405a3
cmp rdx, r10
je 0x140040561
movzx eax, word [r8]
mov rdx, r8
mov edi, 0x2c
cmp ax, r10w
je 0x140040504
lea ecx, [rdi - 0x23]
lea r9d, [rdi - 0xc]
cmp di, ax
je 0x140040504
cmp cx, ax
ja 0x1400404e8
cmp ax, 0xd
jbe 0x140040504
cmp r9w, ax
je 0x140040504
add r8, 2
mov qword [rsp + 0x340], r8
mov ax, word [r8]
cmp ax, r10w
jne 0x1400404d8
sub r8, rdx
lea rcx, [rsp + 0x3a8]
sar r8, 1
call fcn.140061888
mov r11, qword [rsp + 0x340]
xor r10d, r10d
cmp word [r11], r10w
je 0x14004059b
lea rcx, [rsp + 0x340]
call fcn.140016ba0
mov rax, qword [rsp + 0x340]
cmp di, word [rax]
jne 0x14004055b
add rax, 2
lea rcx, [rsp + 0x340]
mov qword [rsp + 0x340], rax
call fcn.140016ba0
mov word [r11], r10w
jmp 0x14004058d
mov rcx, qword [rsp + 0x5d0]
lea r8, [rsp + 0x3a8]
lea rdx, [rsp + 0x340]
mov r9d, 0x2c
mov word [rsp + 0x20], r10w
call fcn.140052694
xor r10d, r10d
mov rax, qword [rsp + 0x340]
cmp word [rax], r10w
jne 0x1400405a3
mov qword [rsp + 0x340], r10
lea rcx, [rsp + 0x3e0]
mov edx, 0x20a
mov rdi, r10
mov qword [rsp + 0x478], r10
mov qword [rsp + 0x350], r10
mov rbp, r10
mov qword [rsp + 0x3c8], r10
mov byte [rsp + 0x358], 0xff
call fcn.140061694
xor edx, edx
cmp byte [rsp + 0x326], dl
jg 0x1400405fb
mov rdx, qword [rsp + 0x3e0]
mov ecx, 0x208
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
xor edx, edx
mov cl, byte [rsp + 0x320]
mov r8, qword [rsp + 0x340]
mov r10d, 0x5e
lea r11d, [r10 - 0x34]
cmp cl, dl
je 0x140040633
cmp r8, rdx
je 0x140040633
cmp r10w, word [r8]
jne 0x140040633
cmp r11w, word [r8 + 2]
jne 0x140040633
lea r9d, [r10 - 0x5d]
mov eax, r9d
jmp 0x14004063b
mov eax, edx
mov r9d, 1
cmp cl, dl
je 0x14004065b
cmp r8, rdx
je 0x14004065b
cmp r10w, word [r8]
jne 0x14004065b
cmp r11w, word [r8 + 2]
je 0x14004065b
mov byte [rsp + 0x379], r9b
jmp 0x140040666
mov byte [rsp + 0x379], dl
cmp eax, edx
je 0x140040672
add r8, 2
mov qword [rsp + 0x340], r8
mov r10d, 0x3c
cmp r8, rdx
je 0x140040699
cmp r10w, word [r8]
jne 0x140040699
add r8, 2
mov byte [rsp + 0x398], r9b
mov qword [rsp + 0x340], r8
jmp 0x1400406a0
mov byte [rsp + 0x398], dl
cmp cl, dl
je 0x14004082a
cmp byte [rsp + 0x323], dl
jne 0x14004082a
mov rax, qword [rsp + 0x3a8]
cmp word [rax], dx
je 0x140040818
cmp r11w, word [rax]
je 0x140040818
cmp r8, rdx
je 0x14004082a
cmp r11w, word [r8]
je 0x14004082a
mov ebx, dword [rsp + 0x398]
xor r15d, r15d
mov qword [rsp + 0x380], r8
mov al, bl
lea r12d, [r15 + 0x22]
mov qword [rsp + 0x360], r15
neg al
sbb rcx, rcx
and ecx, 8
mov qword [rsp + 0x3f8], rcx
cmp r12w, word [r8]
jne 0x140040738
lea r8d, [r12 + 0x6b]
lea rcx, [rsp + 0x340]
xor edx, edx
call fcn.140024820
mov r8, rax
mov qword [rsp + 0x380], rax
mov edx, 0x2c
mov rcx, r8
call qword [sym.imp.SHLWAPI.dll_StrChrW]
mov qword [rsp + 0x380], rax
cmp rax, r15
je 0x14004078a
mov word [rax], r15w
add qword [rsp + 0x380], 2
lea rdx, [rsp + 0x360]
lea rcx, [rsp + 0x380]
call fcn.14001d754
lea rdx, [rsp + 0x3f8]
lea rcx, [rsp + 0x380]
call fcn.14001d754
mov r12d, 0x10
cmp bl, r15b
je 0x1400407ab
cmp dword [rsp + 0x360], r15d
movzx ebx, bl
cmovne ebx, r12d
mov dword [rsp + 0x398], ebx
mov rdx, qword [rsp + 0x340]
lea rcx, [rsp + 0x325]
call fcn.140019e64
cmp bl, r15b
je 0x1400407e1
call fcn.140003854
mov edx, dword [rsp + 0x360]
mov rcx, qword [rsp + 0x340]
call qword [0x140132810]
jmp 0x1400407ff
mov r8d, dword [rsp + 0x3f8]
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0x340]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov r14d, 1
mov rdi, rax
mov rbx, r15
mov byte [rsp + 0x388], r14b
jmp 0x14004160f
lea rcx, [rsp + 0x3e0]
call fcn.140058efc
jmp 0x14004031c
cmp r15b, dl
je 0x14004093f
xor r15d, r15d
lea r14d, [r15 + 1]
cmp r8, r15
je 0x140043f41
mov sil, r14b
cmp r11w, word [r8]
jne 0x140040858
add r8, 2
mov qword [rsp + 0x340], r8
mov bl, byte [rsp + 0x323]
mov ebp, 0x23
cmp r11w, word [r8]
je 0x140040870
cmp bp, word [r8]
jne 0x140040881
add r8, 2
mov bl, r14b
mov qword [rsp + 0x340], r8
jmp 0x140040864
mov byte [rsp + 0x323], bl
mov rbp, r15
cmp r10w, word [r8]
jne 0x14004089d
add r8, 2
mov qword [rsp + 0x340], r8
cmp word [r8], r15w
je 0x140040937
lea rdx, [rsp + 0x420]
lea rcx, [rsp + 0x340]
mov qword [rsp + 0x420], r15
call fcn.140007a28
mov rdx, qword [rsp + 0x340]
cmp word [rdx], r15w
je 0x140040930
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x3a0]
mov qword [rsp + 0x3a0], r15
mov r9, rax
mov r8, rax
call fcn.14006155c
mov rcx, qword [rsp + 0x420]
cmp bl, r15b
je 0x140040912
cmp rcx, r15
je 0x140040923
mov rdx, qword [rsp + 0x3a0]
call fcn.140017a3c
jmp 0x140040920
mov rdx, qword [rsp + 0x3a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
lea rcx, [rsp + 0x3a0]
call fcn.140058efc
mov cl, byte [rsp + 0x320]
mov rbx, rbp
jmp 0x140043f4b
xor r15d, r15d
cmp r14b, r15b
lea r14d, [r15 + 1]
je 0x140040a2c
cmp r8, r15
je 0x140043f41
mov sil, r14b
mov bl, r15b
cmp r11w, word [r8]
jne 0x140040970
add r8, 2
mov qword [rsp + 0x340], r8
mov r12b, byte [rsp + 0x323]
mov ebp, 0x23
cmp r11w, word [r8]
je 0x140040989
cmp bp, word [r8]
jne 0x14004099a
add r8, 2
mov r12b, r14b
mov qword [rsp + 0x340], r8
jmp 0x14004097d
mov byte [rsp + 0x323], r12b
mov rbp, r15
cmp r10w, word [r8]
jne 0x1400409ba
add r8, 2
mov bl, r14b
mov qword [rsp + 0x340], r8
cmp word [r8], r15w
je 0x140040937
lea rdx, [rsp + 0x350]
lea rcx, [rsp + 0x340]
mov qword [rsp + 0x350], r15
call fcn.1400713b4
cmp r12b, r14b
mov rcx, qword [rsp + 0x350]
jle 0x140040a0e
cmp rcx, r15
je 0x140040930
call fcn.1400179d4
mov cl, byte [rsp + 0x320]
mov rdi, r15
mov rbx, r15
jmp 0x140043f4b
cmp bl, r15b
je 0x140040a1e
call qword [0x140132818]
jmp 0x140040930
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
movsxd rdi, eax
jmp 0x140040930
cmp byte [rsp + 0x322], r15b
movzx eax, r15b
cmovne eax, r14d
mov dword [rsp + 0x3b4], eax
cmp r8, r15
jne 0x140040c21
cmp r12, r15
jne 0x140040a62
lea r12, [0x14011867a]
mov qword [rsp + 0x3a0], r12
jmp 0x140040a90
lea rcx, [0x14011867a]
mov rdx, r12
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r15d
je 0x140040a90
lea rcx, [0x14011864a]
mov rdx, r12
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r15d
jne 0x140040c21
mov eax, dword [rsp + 0x3b0]
mov ecx, 0x31
mov byte [rsp + 0x3b4], 0xff
cmp eax, r15d
cmovl eax, ecx
mov dword [rsp + 0x3b0], eax
cmp al, r15b
je 0x140040c21
lea rcx, [rsp + 0x360]
call fcn.140061620
or rbx, 0xffffffffffffffff
lea rdx, str.___exe:_
lea rcx, [rsp + 0x448]
mov r8, rbx
call fcn.14006d484
lea rdx, [rsp + 0x448]
lea rcx, [rsp + 0x360]
call fcn.14006d510
lea rcx, [rsp + 0x448]
call fcn.140058efc
lea rcx, [rsp + 0x360]
mov edx, 0x51c
call fcn.140061720
mov rdx, qword [rsp + 0x360]
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 + 0x458]
mov r8, rbx
call fcn.14006d484
lea rcx, [rsp + 0x360]
mov rdx, qword [rax]
call fcn.14006175c
lea rcx, [rsp + 0x458]
call fcn.140058efc
mov rax, qword [rsp + 0x3d8]
cmp eax, r15d
jl 0x140040b81
movsxd rcx, eax
mov rax, qword [rsp + 0x470]
mov word [rax + rcx*2], r15w
mov rdx, qword [rsp + 0x470]
lea rcx, [rsp + 0x360]
call fcn.14006175c
lea rdx, [0x1401185fc]
lea rcx, [rsp + 0x458]
mov r8, rbx
call fcn.14006d484
lea rcx, [rsp + 0x360]
mov rdx, qword [rax]
call fcn.14006175c
lea rcx, [rsp + 0x458]
call fcn.140058efc
lea rcx, [rsp + 0x360]
mov rdx, r12
call fcn.14006175c
mov rax, qword [rsp + 0x5d0]
mov rdx, qword [rsp + 0x360]
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov r8, rax
mov rcx, rax
xor r9d, r9d
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], r15d
call fcn.14000dedc
lea rcx, [rsp + 0x360]
mov rdi, rax
call fcn.140058efc
jmp 0x140041651
cmp r12, r15
je 0x14004409e
cmp word [r12], r15w
je 0x14004409e
cmp byte [rsp + 0x329], r15b
jne 0x140040d6a
cmp byte [rsp + 0x338], r15b
je 0x140040d6a
mov r9, qword [rsp + 0x370]
cmp r9, r15
je 0x140040d6a
xor eax, eax
cmp r13d, 2
lea rcx, [rbx + 0x378]
lea r15, [rcx + 0x358]
mov qword [rsp + 0x370], rax
mov dword [rsp + 0x400], 2
mov qword [rsp + 0x4c8], r15
jle 0x140040d5a
mov rdi, qword [rsp + 0x5d0]
mov ebx, dword [rsp + 0x400]
movsxd r14, r13d
mov r13, qword [rsp + 0x448]
sub r15, rcx
add r14, 0xfffffffffffffffe
add r13, 0x10
lea r12, [rcx + 0x10]
lea esi, [rax + 1]
xor ebp, ebp
mov rcx, qword [r12]
mov edx, 0x25
call qword [sym.imp.SHLWAPI.dll_StrChrW]
cmp rax, rbp
jne 0x140040ce3
mov rax, qword [r12]
mov qword [r15 + r12], rax
jmp 0x140040d1d
mov rdx, qword [r12]
lea r8, [rsp + 0x370]
xor r9d, r9d
mov rcx, rdi
mov byte [rsp + 0x20], sil
call fcn.140078800
mov r11, qword [rsp + 0x370]
add ebx, esi
mov qword [r13], r11
mov qword [r15 + r12], r11
add r13, 8
mov qword [rsp + 0x370], rbp
add r12, 8
sub r14, rsi
jne 0x140040cc5
mov rdi, qword [rsp + 0x478]
mov esi, dword [rsp + 0x348]
mov rbp, qword [rsp + 0x3c8]
mov r12, qword [rsp + 0x3a0]
mov dword [rsp + 0x400], ebx
mov rbx, qword [rsp + 0x4d8]
mov r14d, 1
lea rcx, [rsp + 0x370]
call fcn.140058efc
xor r15d, r15d
lea rdx, str._DllRegisterServer
mov rcx, r12
mov dword [rsp + 0x370], 2
mov qword [rsp + 0x450], r15
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov r13d, dword [rsp + 0x3b0]
cmp eax, r15d
jne 0x140040dcd
cmp r13d, r15d
mov eax, 0x31
lea r12, [0x14011867a]
cmovl r13d, eax
mov byte [rsp + 0x3b4], 0xff
mov byte [rsp + 0x325], r14b
mov dword [rsp + 0x3b0], r13d
mov qword [rsp + 0x3a0], r12
lea rdx, str._DllUnregisterServer
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r15d
jne 0x140040e15
cmp r13d, r15d
mov eax, 0x71
lea r12, [0x14011864a]
cmovl r13d, eax
mov byte [rsp + 0x3b4], 0xff
mov byte [rsp + 0x325], r14b
mov dword [rsp + 0x3b0], r13d
mov qword [rsp + 0x3a0], r12
mov ecx, 0x28
mov qword [rsp + 0x440], r15
lea eax, [rcx + 8]
cmp word [r12], ax
jb 0x140040e38
cmp word [r12], 0x39
jbe 0x1400410bb
mov r13, qword [rsp + 0x380]
cmp cx, word [r12]
je 0x1400410c3
mov eax, 0x26
cmp ax, word [r12]
je 0x140040e82
cmp r13, r15
jg 0x140040e82
mov rdx, qword [rsp + 0x5d8]
mov eax, 0x23
cmp ax, word [rdx]
jne 0x14004112c
cmp word [rdx + 2], r15w
jne 0x14004112c
jmp 0x1400410c3
mov rcx, qword [rsp + 0x5d0]
or r9d, 0xffffffff
xor r8d, r8d
mov rdx, r12
mov qword [rsp + 0x20], r15
call fcn.1400183dc
cmp rax, r15
je 0x140040eb8
mov rbp, qword [rax + 8]
mov qword [rsp + 0x3c8], rbp
cmp rbp, r15
jne 0x1400410fc
neg byte [rsp + 0x328]
mov esi, dword [rsp + 0x398]
mov r12d, 0x10
sbb rdi, rdi
not rdi
and rdi, 0xffffffff80070057
mov r8, qword [rsp + 0x3a8]
cmp word [r8], r15w
je 0x140040ff2
mov eax, 0x2a
cmp ax, word [r8]
je 0x140040ff2
cmp byte [rsp + 0x379], r15b
je 0x140044079
cmp rdi, r15
je 0x140044079
test r12b, sil
jne 0x140044079
mov rcx, qword [rsp + 0x5d0]
mov rdx, rdi
call fcn.14003ebbc
mov rbx, rax
cmp sil, r15b
je 0x140040f64
cmp rax, r15
je 0x140040f64
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rdx, qword [rbx + 8]
lea ecx, [rax + 1]
movsxd r8, ecx
lea rcx, [rdx + 2]
add r8, r8
call fcn.14001d004
mov r10, qword [rbx + 8]
mov eax, 0x3c
mov word [r10], ax
mov rbx, qword [rsp + 0x5d0]
cmp byte [rsp + 0x32b], r15b
je 0x140040ff2
mov rdx, qword [rsp + 0x3a8]
lea rcx, [rsp + 0x3f0]
call fcn.14006d444
lea rdx, str..args
lea rcx, [rsp + 0x3a8]
call fcn.14006175c
lea rdx, str..addr
lea rcx, [rsp + 0x3f0]
call fcn.14006175c
movsx edx, byte [rsp + 0x358]
mov r8, qword [rsp + 0x3a8]
mov rcx, rbx
call fcn.1400648ec
mov r8, qword [rsp + 0x3f0]
lea r9, [0x140112690]
mov rdx, rbp
mov rcx, rbx
call fcn.140064814
lea rcx, [rsp + 0x3f0]
call fcn.140058efc
mov eax, dword [rsp + 0x400]
sub eax, r14d
cmp eax, 2
movsxd rbx, eax
jl 0x140041039
mov rax, qword [rsp + 0x448]
mov r8, qword [rax + rbx*8]
cmp r8, r15
je 0x140041030
mov rcx, qword [0x1401322f8]
add r8, 0xfffffffffffffff8
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x448]
sub rbx, r14
cmp rbx, 2
jge 0x14004100c
lea rcx, [rsp + 0x3e0]
call fcn.140058efc
lea rcx, [rsp + 0x3d0]
call fcn.140058efc
lea rcx, [rsp + 0x408]
call fcn.1400ec7d8
lea rcx, [rsp + 0x408]
call fcn.140058efc
lea rcx, [rsp + 0x488]
call fcn.140058efc
lea rcx, [rsp + 0x460]
call fcn.140058efc
lea rcx, [rsp + 0x4b8]
call fcn.140058efc
lea rcx, [rsp + 0x3a8]
call fcn.140058efc
lea rcx, [rsp + 0x470]
call fcn.140058efc
mov rax, qword [rsp + 0x368]
jmp 0x140044126
mov r13, qword [rsp + 0x380]
lea rdx, [rsp + 0x440]
lea rcx, [rsp + 0x4e0]
mov qword [rsp + 0x4e0], r12
call fcn.140071538
mov r11, qword [rsp + 0x440]
cmp r11, r15
je 0x140040eb8
mov rbp, r11
mov qword [rsp + 0x3c8], r11
movzx ecx, byte [rsp + 0x326]
mov rdx, qword [rsp + 0x5d8]
mov byte [rsp + 0x3b4], r14b
mov eax, ecx
cmp cl, r15b
mov byte [rsp + 0x34f], r15b
cmovl eax, r14d
mov byte [rsp + 0x326], al
cmp r13, r15
jle 0x140041150
cmp rbp, r15
je 0x140041150
lea rax, [r13 - 1]
cmp rax, r15
jl 0x140041150
sub rax, r14
mov rbp, qword [rbp]
jns 0x14004113f
mov qword [rsp + 0x3c8], rbp
mov rax, qword [rsp + 0x3e8]
or dword [rsp + 0x404], 0xffffffff
mov qword [rsp + 0x4e8], rbp
cmp rax, r15
je 0x1400416ce
cmp qword [rsp + 0x3c0], r15
jge 0x1400416ce
mov r13b, r14b
mov byte [rsp + 0x322], r14b
cmp rbp, r15
jne 0x1400411a7
mov qword [rsp + 0x368], 0xffffffff80070057
mov rbx, 0xffffffff80070057
jmp 0x140041609
mov r12, qword [rbp]
mov qword [rsp + 0x380], r15
mov qword [rsp + 0x4c0], r12
cmp r12, r15
je 0x1400412de
lea rcx, str.Release
mov rdx, rax
call fcn.14005a63c
cmp al, r15b
je 0x1400411e9
mov qword [rsp + 0x3c0], 2
jmp 0x140041571
mov rdx, qword [rsp + 0x3e8]
lea rcx, str.AddRef
call fcn.14005a63c
cmp al, r15b
je 0x14004120f
mov qword [rsp + 0x3c0], r14
jmp 0x140041571
mov rdx, qword [rsp + 0x3e8]
lea rcx, str.QueryInterface
call fcn.14005a63c
cmp al, r15b
je 0x140041235
mov qword [rsp + 0x3c0], r15
jmp 0x140041571
mov rdx, qword [rsp + 0x3e8]
lea rcx, str.GetTypeInfoCount
call fcn.14005a63c
cmp al, r15b
je 0x140041260
mov eax, 3
mov qword [rsp + 0x3c0], rax
jmp 0x140041571
mov rdx, qword [rsp + 0x3e8]
lea rcx, str.GetTypeInfo
call fcn.14005a63c
cmp al, r15b
je 0x14004128a
mov qword [rsp + 0x3c0], 4
jmp 0x140041571
mov rdx, qword [rsp + 0x3e8]
lea rcx, str.GetIDsOfNames
call fcn.14005a63c
cmp al, r15b
je 0x1400412b4
mov qword [rsp + 0x3c0], 5
jmp 0x140041571
mov rdx, qword [rsp + 0x3e8]
lea rcx, str.Invoke
call fcn.14005a63c
cmp al, r15b
je 0x1400412de
mov qword [rsp + 0x3c0], 6
jmp 0x140041571
mov rax, qword [rbp]
lea rcx, [rsp + 0x404]
lea r8, [rsp + 0x3e8]
mov qword [rsp + 0x28], rcx
lea rdx, [0x140122968]
mov r9d, r14d
mov rcx, rbp
mov dword [rsp + 0x20], 0x800
call qword [rax + 0x28]
movsxd rdx, dword [rsp + 0x404]
movsxd rcx, eax
mov rax, rdx
mov qword [rsp + 0x3c0], rdx
cmp rcx, r15
jne 0x1400415e7
cmp edx, r15d
jl 0x1400415e7
mov eax, r15d
mov dword [rsp + 0x480], eax
cmp r12, r15
je 0x14004135f
mov rax, qword [rbp]
lea rdx, [rsp + 0x480]
mov rcx, rbp
call qword [rax + 0x18]
mov eax, dword [rsp + 0x480]
mov qword [rsp + 0x3d8], r15
cmp eax, r15d
je 0x140041398
cmp r12, r15
je 0x140041398
mov rcx, qword [rsp + 0x380]
cmp rcx, r15
jne 0x1400413a9
mov rax, qword [rbp]
lea r9, [rsp + 0x380]
xor edx, edx
mov r8d, 0x800
mov rcx, rbp
call qword [rax + 0x20]
mov rcx, qword [rsp + 0x380]
cmp rcx, r15
je 0x1400415da
cmp qword [0x140131980], r15
jne 0x1400413bf
call fcn.140003854
mov rcx, qword [rsp + 0x380]
cmp byte [rsp + 0x339], r15b
mov al, byte [rsp + 0x32b]
jge 0x1400413d8
cmp al, r15b
jg 0x1400413d8
mov r15b, r14b
xor edx, edx
cmp al, dl
jle 0x1400413f9
mov rax, qword [rsp + 0x3a8]
cmp word [rax], dx
je 0x1400413f9
lea r8d, [rdx + 0x2a]
lea r14d, [rdx + 0x70]
cmp r8w, word [rax]
jne 0x1400413ff
mov r14d, 2
mov r12d, 7
mov qword [rsp + 0x3d8], rdx
mov rax, qword [rcx]
lea r8, [rsp + 0x3d8]
mov edx, r12d
call qword [rax + 0x28]
mov rdx, qword [rsp + 0x3d8]
xor eax, eax
cmp rdx, rax
je 0x1400415af
mov rcx, qword [rsp + 0x380]
movsxd r13, dword [rdx]
mov rax, qword [rcx]
call qword [rax + 0xa0]
xor edx, edx
cmp r15b, dl
je 0x140041465
movsxd rax, dword [rsp + 0x404]
cmp r13, rax
je 0x140041555
lea eax, [rdx + 1]
jmp 0x14004153c
mov rcx, qword [rsp + 0x380]
or dword [rsp + 0x348], 0xffffffff
mov r8, qword [rsp + 0x428]
mov rax, qword [rcx]
lea rdx, [rsp + 0x348]
mov r9d, r14d
mov qword [rsp + 0x20], rdx
mov edx, r13d
call qword [rax + 0x38]
mov r11d, dword [rsp + 0x348]
mov r13, qword [rsp + 0x428]
xor edx, edx
cmp r11d, edx
jle 0x140041521
mov rdx, qword [rsp + 0x3e8]
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
xor edx, edx
cmp eax, edx
jne 0x140041519
mov al, byte [rsp + 0x339]
cmp al, dl
jl 0x1400414e0
movsx ecx, al
mov rax, qword [rsp + 0x3d8]
cmp ecx, dword [rax + 0x1c]
jne 0x140041519
mov r11d, dword [rsp + 0x348]
lea eax, [r11 - 1]
mov byte [rsp + 0x358], al
jmp 0x140041521
movsxd rcx, r11d
cmp qword [r13 + rcx*8], rdx
je 0x140041526
mov rcx, qword [r13 + rcx*8]
call qword [0x140131980]
movsxd r11, dword [rsp + 0x348]
xor edx, edx
mov qword [r13 + r11*8], rdx
mov r11d, dword [rsp + 0x348]
mov eax, 1
sub r11d, eax
mov dword [rsp + 0x348], r11d
jns 0x1400414f5
cmp byte [rsp + 0x358], dl
jge 0x140041555
add r12, rax
cmp r12, 0x7fffffff
jge 0x1400415af
mov rcx, qword [rsp + 0x380]
jmp 0x140041405
mov rax, qword [rsp + 0x4c0]
xor r15d, r15d
cmp qword [rax + r12*8], r15
je 0x1400415b2
mov qword [rsp + 0x3c0], r12
mov r12, rax
mov al, byte [rsp + 0x34c]
or byte [rsp + 0x3bc], 6
mov r13b, 0xff
mov byte [rsp + 0x322], r13b
cmp al, r15b
je 0x140041599
or al, 2
mov byte [rsp + 0x34c], al
mov rax, qword [rsp + 0x3c0]
mov rbp, qword [r12 + rax*8]
mov qword [rsp + 0x3c8], rbp
jmp 0x1400415ba
xor r15d, r15d
mov r13b, byte [rsp + 0x322]
mov rcx, qword [rsp + 0x380]
cmp rcx, r15
je 0x1400415da
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x380], r15
call fcn.14005f7b4
mov rdx, qword [rsp + 0x5d8]
jmp 0x1400416d9
mov qword [rsp + 0x368], 0xffffffff80004001
cmp byte [rsp + 0x32b], r15b
jne 0x1400416e9
mov rbx, qword [rsp + 0x368]
mov r12d, 0x10
mov al, byte [rsp + 0x326]
cmp al, r15b
jg 0x14004162f
mov rcx, qword [rsp + 0x3e0]
call fcn.140019e10
mov al, byte [rsp + 0x326]
cmp qword [rsp + 0x440], r15
je 0x14004163e
cmp al, r15b
jg 0x140041643
call fcn.14001db7c
cmp byte [rsp + 0x32a], r15b
je 0x140043f31
lea rcx, [rsp + 0x3e0]
call fcn.140058efc
lea rcx, [rsp + 0x3d0]
call fcn.140058efc
lea rcx, [rsp + 0x408]
call fcn.1400ec7d8
lea rcx, [rsp + 0x408]
call fcn.140058efc
lea rcx, [rsp + 0x488]
call fcn.140058efc
lea rcx, [rsp + 0x460]
call fcn.140058efc
lea rcx, [rsp + 0x4b8]
call fcn.140058efc
lea rcx, [rsp + 0x3a8]
call fcn.140058efc
lea rcx, [rsp + 0x470]
call fcn.140058efc
mov rax, rdi
jmp 0x140044126
mov r13b, r15b
mov byte [rsp + 0x322], r15b
cmp byte [rsp + 0x32b], r15b
je 0x140041711
mov r14d, 1
mov rbx, qword [rsp + 0x3c0]
mov cl, byte [rsp + 0x320]
mov r12d, 0x10
mov qword [rsp + 0x368], rbx
mov rdi, rbx
mov sil, r12b
jmp 0x140043f51
mov r10d, 1
lea r9, [rbx + 0xa08]
cmp r13b, r10b
jne 0x140041736
mov rax, qword [rsp + 0x430]
mov qword [rax], r9
mov rdx, qword [rsp + 0x5d8]
cmp byte [rsp + 0x329], r15b
jne 0x140041e3c
cmp byte [rsp + 0x338], r15b
je 0x140041e3c
mov r8, qword [rsp + 0x4c8]
cmp qword [r8 + 8], r15
je 0x140041e3c
mov r11b, byte [rsp + 0x324]
mov ecx, dword [rsp + 0x370]
cmp r11b, r15b
je 0x14004178f
mov rax, qword [r8 + 0x10]
cmp rax, r15
mov qword [rsp + 0x330], rax
mov eax, 3
cmovne ecx, eax
cmp byte [rsp + 0x3bc], r15b
je 0x1400417a7
mov qword [rbx], r15
mov rdx, qword [rsp + 0x5d8]
mov esi, r10d
mov al, byte [rsp + 0x321]
mov byte [rsp + 0x338], al
movsxd rax, ecx
movsxd rcx, esi
cmp esi, 0x64
ja 0x140041e3c
lea r14, [rbx + rcx*8]
mov rcx, qword [rsp + 0x490]
mov bl, byte [rsp + 0x338]
lea rdi, [r8 + rax*8]
mov bpl, bl
xor r10d, r10d
lea r15, [rcx + rax*8 - 8]
mov rax, qword [rdi]
mov ecx, 8
add rdi, rcx
add r15, rcx
mov qword [rsp + 0x330], rax
cmp rax, r10
je 0x140041e0d
mov rdx, qword [rsp + 0x438]
mov qword [r14], rax
mov rcx, qword [rsp + 0x330]
mov r12w, word [rcx]
mov r8b, r10b
cmp rdx, r10
jne 0x140041829
mov bpl, bl
jmp 0x140041846
cmp word [rdx], r10w
je 0x140041846
mov bpl, byte [rdx]
lea rax, [rdx + 2]
cmp word [rax], r10w
cmovne rdx, rax
mov qword [rsp + 0x438], rdx
mov eax, 0x23
lea edx, [rax + 7]
cmp bpl, al
je 0x14004194b
cmp bpl, dl
je 0x14004194b
lea r11d, [rax + 0x19]
cmp bpl, r11b
lea r11d, [rax + 0x1b]
je 0x140041951
cmp bpl, r11b
je 0x140041951
lea edx, [rax + 1]
cmp bpl, dl
je 0x140041acf
lea edx, [rax + 0x1d]
cmp bpl, dl
je 0x140041b06
lea edx, [rax + 0x1a]
cmp bpl, dl
je 0x140041b22
lea edx, [rax + 0x5b]
cmp bpl, dl
je 0x140041abb
cmp bpl, r10b
jne 0x140041a73
cmp ax, r12w
je 0x140041d30
lea r8d, [rax + 0x19]
cmp r8w, r12w
je 0x140041b3b
cmp r11w, r12w
jne 0x140041dec
cmp r11w, word [rcx]
jne 0x1400418e7
add rcx, 2
mov qword [rsp + 0x330], rcx
mov r8d, 0x3a
mov dword [rsp + 0x348], 0xc
cmp r8w, word [rcx]
jne 0x1400419d2
add rcx, 2
lea rdx, [rsp + 0x348]
mov qword [rsp + 0x330], rcx
lea rcx, [rsp + 0x330]
call fcn.140065d1c
mov rcx, qword [rsp + 0x330]
mov r8d, 0x3a
cmp r8w, word [rcx]
jne 0x140041943
add rcx, 2
mov qword [rsp + 0x330], rcx
xor r10d, r10d
jmp 0x1400419d2
mov r11d, 0x3e
mov r8d, 0x3c
cmp r8w, r12w
je 0x140041a73
cmp ax, r12w
je 0x140041a73
cmp dx, r12w
je 0x140041a73
lea edx, [r8 - 0x18]
cmp dx, r12w
je 0x140041a73
lea edx, [r8 + 4]
cmp dx, r12w
je 0x140041a73
lea edx, [r8 + 1]
cmp dx, r12w
je 0x140041a73
lea edx, [r8 + 0x42]
cmp dx, r12w
je 0x140041a73
cmp bpl, al
je 0x140041d30
cmp bpl, r8b
je 0x140041b3b
movsx r12d, bpl
cmp bpl, r11b
je 0x1400418d5
mov r8d, 0x3a
mov r9d, 0x2a
cmp r9w, word [rcx]
jne 0x1400419ea
add rcx, 2
mov qword [rsp + 0x330], rcx
cmp r9w, r12w
mov eax, 0xc
mov edx, 0x400b
cmove eax, edx
mov r13w, r10w
mov dword [rsp + 0x348], eax
cmp r8w, word [rcx]
jne 0x140041a4e
add rcx, 2
lea rdx, [rsp + 0x348]
mov qword [rsp + 0x330], rcx
lea rcx, [rsp + 0x330]
call fcn.140065d1c
mov rcx, qword [rsp + 0x330]
mov eax, 0x3a
cmp ax, word [rcx]
jne 0x140041a4b
add rcx, 2
mov qword [rsp + 0x330], rcx
xor r10d, r10d
mov eax, 0x7e
cmp ax, word [rcx]
jne 0x140041b5d
add rcx, 2
mov r13d, 0xfde9
mov qword [rsp + 0x330], rcx
jmp 0x140041b6b
add rcx, 2
movzx edx, r12w
mov r8b, 1
sub edx, eax
mov qword [rsp + 0x330], rcx
je 0x140041d30
sub edx, 7
je 0x1400419cc
sub edx, 0x12
je 0x140041b35
mov eax, 1
sub edx, eax
je 0x140041b22
sub edx, eax
je 0x1400418d5
sub edx, 2
je 0x140041b06
cmp edx, r11d
jne 0x140041ad4
mov r13d, 0xfde9
cmp rcx, r10
je 0x140041c9b
jmp 0x140041c0f
mov eax, 1
mov qword [r14], rcx
cmp r13b, al
jne 0x140041dec
mov eax, 8
mov word [r9], ax
mov rax, qword [rsp + 0x330]
add r9, 0x18
mov qword [r9 - 0x10], rax
mov qword [rsp + 0x360], r9
jmp 0x140041dec
mov r13d, r10d
cmp rcx, r10
jne 0x140041c0f
mov r13b, byte [rsp + 0x322]
mov qword [r14], r10
jmp 0x140041dec
mov rax, qword [r15]
movsx rcx, r8b
lea rcx, [rax + rcx*2]
mov qword [r14], rcx
jmp 0x140041dec
mov r8d, 0x3c
cmp r8w, word [rcx]
jne 0x140041b4d
add rcx, 2
mov qword [rsp + 0x330], rcx
mov dword [rsp + 0x348], 0x14
jmp 0x140041d4d
mov eax, 0x40
cmp ax, word [rcx]
jne 0x140041b6b
mov r13w, r10w
lea rcx, [rsp + 0x370]
call fcn.140061620
mov r12, qword [rsp + 0x5d0]
xor eax, eax
lea r9d, [rax + 0x2c]
lea r8, [rsp + 0x370]
lea rdx, [rsp + 0x330]
mov rcx, r12
mov word [rsp + 0x20], ax
call fcn.140052694
mov rdx, qword [rsp + 0x370]
xor eax, eax
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x330], rax
mov qword [rsp + 0x20], rax
call fcn.1400183dc
xor ecx, ecx
cmp rax, rcx
je 0x140041bde
mov rax, qword [rax + 8]
mov qword [rsp + 0x330], rax
jmp 0x140041be6
mov rax, qword [rsp + 0x330]
cmp r13w, cx
je 0x140041cc2
cmp rax, rcx
je 0x140041cb3
cmp word [rax], cx
je 0x140041cc2
lea rcx, [rsp + 0x370]
call fcn.140058efc
mov ecx, 8
call fcn.1400f8a38
mov r12, rax
xor eax, eax
cmp r12, rax
je 0x140041c29
mov qword [r12], rax
jmp 0x140041c2c
mov r12, rax
mov rdx, qword [rsp + 0x330]
movzx r9d, r13w
or r8, 0xffffffffffffffff
mov rcx, r12
call fcn.14006155c
mov r11, qword [r12]
mov eax, 1
mov qword [rsp + 0x28], rax
mov eax, 8
lea r9, [rsp + 0x490]
lea r8, [rsp + 0x418]
lea rdx, [rsp + 0x410]
lea rcx, [rsp + 0x408]
mov dword [rsp + 0x20], eax
mov qword [rsp + 0x330], r11
mov qword [rsp + 0x490], r12
call fcn.140061970
mov rcx, qword [rsp + 0x330]
xor r10d, r10d
mov r13b, byte [rsp + 0x322]
mov r9, qword [rsp + 0x360]
mov qword [r14], rcx
jmp 0x140041dec
lea rax, [0x140112598]
mov qword [rsp + 0x330], rax
lea rcx, [rsp + 0x370]
mov qword [r14], rax
call fcn.140058efc
mov r13b, byte [rsp + 0x322]
mov r9, qword [rsp + 0x360]
cmp r13b, 1
jne 0x140041de9
mov eax, dword [rsp + 0x348]
mov word [r9], ax
cmp eax, 0xc
jne 0x140041d1f
mov rcx, qword [rsp + 0x330]
mov rax, qword [rcx]
mov qword [r9], rax
mov rax, qword [rcx + 8]
mov qword [r9 + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [r9 + 0x10], rax
jmp 0x140041ddd
mov rax, qword [rsp + 0x330]
mov qword [r9 + 8], rax
jmp 0x140041ddd
cmp ax, word [rcx]
jne 0x140041d41
add rcx, 2
mov qword [rsp + 0x330], rcx
mov eax, 3
mov dword [rsp + 0x348], eax
mov r12d, 0x3a
cmp r12w, word [rcx]
jne 0x140041d97
add rcx, 2
lea rdx, [rsp + 0x348]
mov qword [rsp + 0x330], rcx
lea rcx, [rsp + 0x330]
call fcn.140065d1c
mov rax, qword [rsp + 0x330]
cmp r12w, word [rax]
jne 0x140041d94
add rax, 2
mov qword [rsp + 0x330], rax
xor r10d, r10d
lea rdx, [rsp + 0x450]
lea rcx, [rsp + 0x330]
mov qword [rsp + 0x450], r10
call fcn.140071538
mov r11, qword [rsp + 0x450]
mov r9, qword [rsp + 0x360]
mov qword [r14], r11
cmp r13b, 1
jne 0x140041de9
movzx eax, word [rsp + 0x348]
mov qword [r9 + 8], r11
mov word [r9], ax
add r9, 0x18
mov qword [rsp + 0x360], r9
xor r10d, r10d
mov eax, 8
inc esi
add r14, rax
cmp byte [rsp + 0x378], r10b
jne 0x140041e0d
mov eax, 0x64
cmp esi, eax
jbe 0x1400417e6
mov rdx, qword [rsp + 0x5d8]
mov rbx, qword [rsp + 0x4d8]
mov rdi, qword [rsp + 0x478]
xor r15d, r15d
mov byte [rsp + 0x321], bpl
mov rbp, qword [rsp + 0x3c8]
lea r10d, [r15 + 1]
cmp byte [rsp + 0x320], r15b
je 0x140041e61
mov rax, rdx
mov rdx, qword [rsp + 0x340]
mov qword [rsp + 0x5d8], rdx
mov qword [rsp + 0x340], rax
mov byte [rsp + 0x324], r15b
mov r14d, r15d
mov r12d, 0x22
cmp rdx, r15
je 0x140041e92
cmp r12w, word [rdx]
mov rcx, rdx
cmove r14d, r10d
call fcn.14001b5a4
mov rdx, rax
mov qword [rsp + 0x5d8], rax
mov r8d, 0x2a
mov qword [rsp + 0x390], rdx
mov rcx, rdx
cmp r8w, word [rdx]
jne 0x140041ec4
lea rax, [rcx + 2]
cmp r8w, word [rax]
jne 0x140041ec4
mov qword [rsp + 0x390], rax
mov rcx, rax
cmp r8w, word [rax]
je 0x140041ea9
mov r9d, 0x30
lea r10d, [r9 - 0x27]
cmp r8w, word [rcx]
jne 0x140041f6e
movzx eax, word [rcx + 2]
sub ax, r9w
cmp ax, r10w
jbe 0x140041eee
or byte [rsp + 0x323], 2
cmp r8w, word [rcx]
jne 0x140041f6e
lea r8, [rcx + 2]
movzx eax, word [r8]
sub ax, r9w
cmp ax, r10w
ja 0x140041f6e
cmp rcx, rdx
lea rdx, [rsp + 0x478]
lea rcx, [rsp + 0x390]
seta r15b
xor eax, eax
mov qword [rsp + 0x390], r8
mov qword [rsp + 0x478], rax
inc r15b
call fcn.1400713b4
xor r8d, r8d
cmp eax, r8d
jle 0x140040818
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x350], rax
cmp rax, r8
je 0x140040818
mov rdx, qword [rsp + 0x5d8]
mov rcx, qword [rsp + 0x390]
jmp 0x140041f82
xor r8d, r8d
cmp word [rcx], r8w
jne 0x140041f87
mov rcx, r8
mov qword [rsp + 0x390], rcx
cmp r15b, r8b
jne 0x140041fa7
cmp rcx, r8
je 0x140041fa7
mov eax, 0x2e
cmp word [rcx], ax
jne 0x140041fa7
cmp word [rcx + 2], r8w
jne 0x140041fa7
mov eax, 1
mov r13b, al
jmp 0x140041fb3
mov r13b, r8b
cmp r15b, r8b
jne 0x14004204f
cmp byte [rsp + 0x34f], r8b
je 0x14004204f
cmp byte [rsp + 0x323], r8b
jne 0x14004204f
xor r15d, r15d
cmp r13b, r15b
je 0x140041fe0
mov rax, qword [0x140131a70]
jmp 0x140041fee
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdx, qword [rsp + 0x5d8]
cmp rax, r15
jne 0x140042035
lea rcx, [rsp + 0x325]
call fcn.140019e64
mov rcx, qword [rsp + 0x5d8]
mov r14d, 1
mov bl, r14b
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp rax, r15
jne 0x14004203e
cmp byte [rsp + 0x328], r15b
je 0x14004202b
mov eax, r15d
jmp 0x140042031
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x140042041
mov bl, r15b
mov r14d, 1
mov rdi, r15
cmp bl, r14b
je 0x1400426f5
jmp 0x140041651
lea rcx, [rsp + 0x325]
call fcn.140019e64
xor r8d, r8d
cmp rbp, r8
jne 0x1400428f7
mov dl, byte [rsp + 0x323]
mov rax, qword [0x140131a70]
mov r9, qword [rsp + 0x390]
mov rcx, qword [rsp + 0x350]
mov r10d, 0xffdf
cmp dl, r8b
jne 0x1400420d3
cmp rcx, r8
jne 0x1400420d3
cmp byte [rsp + 0x3b4], r8b
jne 0x1400420d3
cmp r9, r8
je 0x1400420cb
lea ecx, [r8 + 0x2e]
cmp word [r9], cx
jne 0x140042508
cmp word [r9 + 2], r8w
jne 0x140042508
mov rcx, rax
mov qword [rsp + 0x350], rax
jmp 0x1400420dc
mov byte [rsp + 0x3b4], 2
cmp r9, r8
je 0x1400426d3
cmp rcx, r8
jne 0x1400426fd
cmp dl, r8b
je 0x140042508
xor r15d, r15d
mov rcx, r9
mov qword [rsp + 0x4a0], r15
mov qword [rsp + 0x4a8], r15
mov qword [rsp + 0x4b0], r15
movzx r10d, word [r9]
cmp r14d, r15d
lea r14d, [r15 + 0x23]
mov qword [rsp + 0x370], rcx
jne 0x140042146
cmp r14w, word [r9]
jne 0x140042146
movzx eax, word [r9 + 2]
lea edx, [r15 + 9]
sub ax, 0x30
cmp ax, dx
ja 0x140042146
mov r11, qword [rsp + 0x5d8]
jmp 0x1400421d1
mov r13d, 0x2a
cmp r13w, r10w
jne 0x140042169
add r9, 2
mov rcx, r9
mov qword [rsp + 0x390], r9
mov qword [rsp + 0x370], rcx
mov r11, r15
cmp r12w, word [r9]
jne 0x1400421c7
add r9, 2
lea rcx, [rsp + 0x370]
mov edx, r12d
mov qword [rsp + 0x390], r9
mov qword [rsp + 0x370], r9
call fcn.14000a77c
mov rcx, qword [rsp + 0x370]
cmp word [rcx], r15w
je 0x1400421c7
mov word [rcx], r15w
mov r9, qword [rsp + 0x390]
mov r11, rcx
mov rcx, qword [rsp + 0x370]
add rcx, 2
mov qword [rsp + 0x370], rcx
cmp r13w, r10w
jne 0x1400422e0
mov r10, qword [0x140131f48]
mov r13, r15
jmp 0x1400421ef
cmp r14w, ax
je 0x1400421f8
add rcx, 2
mov qword [rsp + 0x370], rcx
movzx eax, word [rcx]
cmp ax, r15w
jne 0x1400421dd
mov rax, rcx
cmp word [rcx], r15w
je 0x140042233
mov r8d, 0x3a
mov edx, 0x7c
cmp dx, word [rax]
je 0x140042223
cmp r8w, word [rax]
je 0x140042223
add rax, 2
cmp word [rax], r15w
jne 0x140042207
jmp 0x140042233
mov word [rax], r15w
mov rcx, qword [rsp + 0x370]
add rax, 2
cmp word [rax], r15w
lea r12, str.EXEDATA
cmovne r12, rax
cmp r14w, word [rcx]
jne 0x1400422f0
mov word [rcx], r15w
cmp r11, r15
je 0x140042259
mov word [r11], r15w
mov rcx, qword [rsp + 0x390]
mov eax, 0x2e
cmp ax, word [rcx]
jne 0x140042287
lea rax, [rcx + 2]
cmp word [rax], r15w
jne 0x140042287
mov r10, qword [0x140131a70]
mov rcx, rax
mov qword [rsp + 0x390], rax
cmp word [rcx], r15w
je 0x14004229f
xor edx, edx
lea r8d, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov r10, rax
mov r13, rax
mov rax, qword [rsp + 0x370]
mov word [rax], r14w
cmp r10, r15
je 0x1400422d0
mov rdx, qword [rsp + 0x370]
lea r9, [rsp + 0x4a0]
mov r8, r12
mov rcx, r10
mov qword [rsp + 0x20], r15
call fcn.14001e2c8
cmp r13, r15
je 0x1400422f0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1400422f0
lea rdx, [rsp + 0x4a0]
mov rcx, r9
call fcn.14001daf4
mov r12, qword [rsp + 0x4a0]
mov r13d, dword [rsp + 0x4a8]
cmp r12, r15
jne 0x14004239d
cmp byte [rsp + 0x320], r15b
mov r14d, 1
lea rcx, [rsp + 0x4a0]
mov rbx, r14
mov rdi, r15
mov byte [rsp + 0x327], r14b
sete dil
mov qword [rsp + 0x368], rbx
call fcn.140058efc
cmp byte [rsp + 0x32a], r15b
je 0x140041609
mov bl, byte [rsp + 0x324]
cmp byte [rsp + 0x328], r15b
je 0x140042a64
lea rcx, [rsp + 0x3e0]
call fcn.140058efc
lea rcx, [rsp + 0x3d0]
call fcn.140058efc
lea rcx, [rsp + 0x408]
call fcn.1400ec7d8
lea rcx, [rsp + 0x408]
call fcn.140058efc
mov rdi, rbp
jmp 0x140041685
lea rcx, [rsp + 0x3d0]
mov edx, 0x48
call fcn.1400181fc
mov r11, rax
cmp rax, r15
je 0x1400423d2
mov rcx, rax
call fcn.1400181e0
lea rcx, [0x140115a38]
mov qword [r11], rcx
lea rcx, [r11 + 8]
call fcn.1400179b4
lea r14, [r11 + 8]
mov r8, r13
mov rdx, r12
mov rcx, r14
mov qword [rsp + 0x3f0], r14
call fcn.140028228
cmp rax, r15
je 0x1400424d3
cmp byte [rsp + 0x320], r15b
je 0x140042487
mov r8, qword [rsp + 0x340]
cmp r8, r15
je 0x140042416
cmp word [r8], r15w
jne 0x140042429
mov rax, qword [rsp + 0x3a8]
mov r8, r15
cmp word [rax], r15w
cmovne r8, rax
mov rdi, r14
mov sil, 1
cmp r8, r15
je 0x140042468
mov rax, qword [rsp + 0x4a0]
mov rcx, qword [rsp + 0x5d0]
lea r9, [rsp + 0x3d0]
mov qword [r14 + 0x10], rax
mov rdx, r14
mov qword [rsp + 0x4a0], r15
call fcn.14003e96c
mov qword [rsp + 0x3f0], r15
lea rcx, [rsp + 0x4a0]
call fcn.140058efc
mov cl, byte [rsp + 0x320]
mov r14d, 1
jmp 0x140043f48
mov rdx, qword [rsp + 0x3a0]
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x438]
mov r9, rax
mov r8, rax
mov qword [rsp + 0x438], r15
call fcn.14006155c
mov rdx, qword [rsp + 0x438]
mov rcx, r14
call fcn.140017a3c
lea rcx, [rsp + 0x438]
mov rbp, rax
call fcn.140058efc
cmp rbp, r15
jne 0x1400424f6
cmp byte [rsp + 0x320], r15b
mov eax, 1
mov rdi, r15
sete dil
mov byte [rsp + 0x327], al
mov qword [rsp + 0x368], rax
lea rcx, [rsp + 0x4a0]
call fcn.140058efc
jmp 0x1400428fa
movzx r12d, word [r9]
and r12d, r10d
je 0x14004251b
mov r12d, dword [r9]
and r12d, 0xffdfffdf
xor r14d, r14d
cmp r13b, r14b
jne 0x1400426b3
cmp byte [rsp + 0x320], r14b
jne 0x1400426a2
cmp r12d, 0x45004b
jne 0x140042592
mov rcx, qword [str.KERNEL32.DLL]
mov rdx, r9
call fcn.14005a600
cmp al, r14b
jne 0x140042586
mov rdx, qword [rsp + 0x390]
mov rcx, qword [str.KERNEL32.DLL]
lea r8d, [r14 + 8]
call fcn.14005a5c4
cmp al, r14b
je 0x14004263d
mov r9, qword [rsp + 0x390]
cmp r14w, word [r9 + 0x10]
jne 0x140042645
mov r14, qword [0x140131fa8]
jmp 0x1400426b6
cmp r12d, 0x530055
jne 0x1400425e9
mov rcx, qword [str.USER32.DLL]
mov rdx, r9
call fcn.14005a600
cmp al, r14b
jne 0x1400425dd
mov rdx, qword [rsp + 0x390]
mov rcx, qword [str.USER32.DLL]
mov r8d, 6
call fcn.14005a5c4
cmp al, r14b
je 0x14004263d
mov r9, qword [rsp + 0x390]
cmp r14w, word [r9 + 0xc]
jne 0x140042645
mov r14, qword [0x140131fa0]
jmp 0x1400426b6
cmp r12d, 0x440047
jne 0x140042645
mov rcx, qword [str.GDI32.DLL]
mov rdx, r9
call fcn.14005a600
cmp al, r14b
jne 0x140042634
mov rdx, qword [rsp + 0x390]
mov rcx, qword [str.GDI32.DLL]
mov r8d, 5
call fcn.14005a5c4
cmp al, r14b
je 0x14004263d
mov r9, qword [rsp + 0x390]
cmp r14w, word [r9 + 0xa]
jne 0x140042645
mov r14, qword [0x140131fb0]
jmp 0x1400426b6
mov r9, qword [rsp + 0x390]
cmp qword [0x140131fb8], r14
je 0x1400426a2
cmp r12d, 0x4c004f
jne 0x1400426a2
mov rcx, qword [str.OLE32.DLL]
mov rdx, r9
call fcn.14005a600
cmp al, r14b
jne 0x140042699
mov rdx, qword [rsp + 0x390]
mov rcx, qword [str.OLE32.DLL]
mov r8d, 5
call fcn.14005a5c4
mov r9, qword [rsp + 0x390]
cmp al, r14b
je 0x1400426a2
cmp r14w, word [r9 + 0xa]
jne 0x1400426a2
mov r14, qword [0x140131fb8]
jmp 0x1400426b6
mov rcx, r9
mov byte [rsp + 0x324], 1
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r14, rax
xor r8d, r8d
mov qword [rsp + 0x350], r14
cmp r14, r8
jne 0x140042705
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r8d, r8d
mov edi, eax
jmp 0x1400426db
mov r14, qword [rsp + 0x350]
cmp r14, r8
jne 0x140042705
xor r15d, r15d
lea r14d, [r15 + 1]
cmp byte [rsp + 0x32a], r15b
jne 0x14004234c
mov rbx, r15
jmp 0x140041609
mov r14, qword [rsp + 0x350]
mov r13, qword [rsp + 0x3a0]
or r12, 0xffffffffffffffff
mov qword [rsp + 0x3c8], r8
lea rcx, [rsp + 0x3c8]
mov r9, r12
mov r8, r12
mov rdx, r13
call fcn.14006155c
mov rdx, qword [rsp + 0x3c8]
mov rcx, r14
test r15b, 2
je 0x140042747
call fcn.140017a3c
jmp 0x14004274d
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbp, rax
xor eax, eax
cmp rbp, rax
jne 0x1400428ea
cmp byte [rsp + 0x329], al
je 0x1400428e2
cmp byte [rsp + 0x321], al
jne 0x1400428e2
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd r13, eax
mov rax, qword [rsp + 0x3a0]
lea r12, [r13 + r13]
mov r14, r13
movzx ecx, word [r12 + rax - 2]
mov eax, 0xffdf
and cx, ax
mov eax, 0x41
cmp cx, ax
je 0x1400428e2
mov eax, 0x57
cmp cx, ax
je 0x1400428e2
lea ecx, [rax - 0x4f]
call fcn.1400f8a38
mov rbp, rax
xor eax, eax
cmp rbp, rax
je 0x1400427de
lea ecx, [r13 + 2]
movsxd rdx, ecx
mov rcx, rbp
call fcn.140061694
jmp 0x1400427e1
mov rbp, rax
mov eax, 1
lea r9, [rsp + 0x490]
lea r8, [rsp + 0x418]
mov qword [rsp + 0x28], rax
mov eax, 8
lea rdx, [rsp + 0x410]
lea rcx, [rsp + 0x408]
mov qword [rsp + 0x490], rbp
mov dword [rsp + 0x20], eax
call fcn.140061970
mov rdx, qword [rsp + 0x3a0]
mov rcx, qword [rbp]
mov r8, r12
call fcn.14001d04c
mov r13, qword [rbp]
mov eax, 0x57
mov word [r12 + r13], ax
xor eax, eax
mov qword [rsp + 0x3a0], r13
mov word [r13 + r14*2 + 2], ax
mov r14, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x3c8]
mov rcx, r14
cmp r15b, 2
jne 0x140042873
call fcn.140017a3c
jmp 0x140042879
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r15d, r15d
mov rbp, rax
cmp rax, r15
jne 0x1400428ea
lea eax, [r15 + 0x41]
lea rcx, [rsp + 0x428]
mov rdx, r13
mov word [r12 + r13], ax
or rax, 0xffffffffffffffff
mov qword [rsp + 0x428], r15
mov r9, rax
mov r8, rax
call fcn.14006155c
mov rdx, qword [rsp + 0x428]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rsp + 0x428]
mov rbp, rax
call fcn.140058efc
cmp rbp, r15
je 0x1400428e2
lea eax, [r15 + 0x40]
mov byte [rsp + 0x321], al
jmp 0x1400428ea
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
lea rcx, [rsp + 0x3c8]
call fcn.140058efc
xor r15d, r15d
mov dword [rsp + 0x468], r15d
mov r10d, 1
cmp byte [rsp + 0x34c], r15b
je 0x140042927
mov rcx, qword [rsp + 0x3f8]
mov eax, esi
add rcx, 8
add esi, r10d
mov qword [rbx + rax*8], rcx
mov r14, qword [rsp + 0x4e8]
cmp byte [rsp + 0x3bc], r15b
je 0x14004293c
mov qword [rbx], r14
mov rcx, qword [rsp + 0x3c0]
mov r13b, byte [rsp + 0x322]
cmp rcx, r15
jl 0x140042a11
mov rax, qword [r14]
mov rbp, qword [rax + rcx*8]
cmp r13b, r10b
jne 0x140042a11
mov r8, qword [rsp + 0x430]
mov rdx, qword [rsp + 0x360]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rcx, qword [r8]
sub rdx, rcx
imul rdx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x10], edx
lea eax, [rdx - 1]
shr edx, 1
cmp edx, r15d
movsxd r8, eax
jle 0x140042a11
lea rax, [r8 + r8*2]
mov r9d, edx
lea rdx, [rcx + rax*8]
mov rax, qword [rcx]
lea r8, [rsp + 0x4f0]
mov qword [r8], rax
mov rax, qword [rcx + 8]
mov qword [r8 + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [r8 + 0x10], rax
mov rax, qword [rdx]
lea r8, [rsp + 0x4f0]
mov qword [rcx], rax
mov rax, qword [rdx + 8]
add rcx, 0x18
mov qword [rcx - 0x10], rax
mov rax, qword [rdx + 0x10]
mov qword [rcx - 8], rax
mov rax, qword [r8]
mov qword [rdx], rax
mov rax, qword [r8 + 8]
sub rdx, 0x18
sub r9, r10
mov qword [rdx + 0x20], rax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 0x28], rax
jne 0x1400429b2
cmp byte [rsp + 0x32a], r15b
je 0x140042aac
mov bl, byte [rsp + 0x324]
mov r14d, 1
cmp bl, r14b
jne 0x140042353
cmp byte [rsp + 0x3b4], r15b
jg 0x140042353
mov rax, qword [rsp + 0x350]
cmp rax, r15
je 0x140042353
mov rcx, rax
mov bl, 2
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x140042353
cmp rbp, r15
je 0x140042a81
lea rdx, str.0x_p
lea rcx, [rsp + 0x510]
mov r8, rbp
call qword [sym.imp.USER32.dll_wsprintfW]
mov rdx, qword [rsp + 0x3a8]
mov rcx, qword [rsp + 0x5d0]
lea r8, [rsp + 0x510]
call fcn.14006093c
cmp bl, 2
je 0x140041601
jmp 0x140041651
mov r12b, r15b
cmp rbp, r15
je 0x140043d98
mov r15d, dword [rsp + 0x3b0]
test r15b, 7
je 0x140042b2f
call fcn.14005f7b4
xor eax, eax
cmp r15d, eax
je 0x140042b31
cmp qword [0x1401327c8], rax
je 0x140042b31
cmp qword [0x1401327d0], rax
je 0x140042b31
lea rcx, [0x140133120]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rcx, qword [rsp + 0x5d0]
mov al, byte [rcx + 0x12]
test al, 2
jne 0x140042b22
mov edx, 1
movzx r12d, r12b
test dl, al
cmove r12d, edx
or al, 3
mov byte [rcx + 0x12], al
xor ecx, ecx
or r12b, 2
call qword [0x1401327c8]
jmp 0x140042b2f
lea rcx, [0x140133120]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
cmp byte [rsp + 0x327], al
je 0x140042b42
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, 1
cmp r13b, cl
jne 0x140042bba
mov rdi, qword [r14]
movsx ebx, byte [rsp + 0x34e]
mov r15b, cl
mov dword [rsp + 0x388], r15d
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov edx, dword [rsp + 0x404]
mov r9d, eax
lea rax, [rsp + 0x468]
lea r8, [0x140122968]
mov qword [rsp + 0x40], rax
xor eax, eax
mov rcx, r14
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x28], rax
mov word [rsp + 0x20], bx
call qword [rdi + 0x30]
movsxd rdi, eax
jmp 0x140043da0
xor r14d, r14d
cmp byte [rsp + 0x329], r14b
je 0x140042cdf
lea eax, [r14 + 0x40]
mov r15b, cl
mov qword [rsp + 0x430], r14
mov dword [rsp + 0x388], r15d
mov word [rsp + 0x5e0], r14w
cmp byte [rsp + 0x321], al
jne 0x140042c2a
mov rdx, qword [rsp + 0x340]
cmp rdx, r14
je 0x140042c37
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x430]
mov r9, rax
mov r8, rax
call fcn.14006155c
mov r11, qword [rsp + 0x430]
mov qword [rsp + 0x340], r11
jmp 0x140042c32
mov r11, qword [rsp + 0x340]
cmp r11, r14
jne 0x140042c47
lea rax, [rsp + 0x5e0]
mov qword [rsp + 0x340], rax
mov rsi, qword [rsp + 0x5d0]
mov rbx, qword [0x140131f48]
xor edx, edx
mov rcx, rsi
call fcn.14001ab30
mov rdi, qword [rsp + 0x3a0]
cmp rdi, r14
je 0x140042ca9
lea rcx, str.InstallHinfSection
mov r8d, 0x12
mov rdx, rdi
call fcn.14005a5c4
cmp al, r14b
je 0x140042ca9
cmp word [rdi + 0x24], r14w
je 0x140042c9e
mov eax, 1
mov word [rdi + 0x24], ax
cmp word [rdi + 0x26], r14w
jne 0x140042ca9
mov qword [rsp + 0x4d0], r14
mov rbx, r14
mov rcx, qword [rsi + 0x40]
call fcn.1400592c4
mov r9, qword [rsp + 0x4d0]
mov r8, qword [rsp + 0x340]
mov rcx, rax
mov rdx, rbx
call rbp
lea rcx, [rsp + 0x430]
mov rdi, rax
call fcn.140058efc
jmp 0x140043dab
cmp dword [rsp + 0x5e0], ecx
jne 0x140043777
mov r15d, dword [rsp + 0x388]
mov edx, 0x64
cmp esi, edx
lea eax, [rdx - 0x44]
movzx r15d, r15b
cmovbe r15d, eax
mov dword [rsp + 0x388], r15d
cmp esi, 7
ja 0x140042dea
cmp esi, r14d
je 0x140042de6
sub esi, ecx
je 0x140042ddf
sub esi, ecx
je 0x140042dd4
sub esi, ecx
je 0x140042dc5
sub esi, ecx
je 0x1400437d9
sub esi, ecx
je 0x140042da9
sub esi, ecx
je 0x140042d84
cmp esi, ecx
jne 0x140043da3
mov rax, qword [rbx + 0x30]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
mov rdi, rax
jmp 0x140043da3
mov rax, qword [rbx + 0x28]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x20]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
call rbp
jmp 0x140042d7c
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
call rbp
jmp 0x140042d7c
mov rcx, qword [rbx]
call rbp
jmp 0x140042d7c
call rbp
jmp 0x140042d7c
cmp esi, 0x14
ja 0x140042eb1
mov rax, qword [rbx + 0x98]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov qword [rsp + 0x98], rax
mov rax, qword [rbx + 0x90]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x90], rax
mov rax, qword [rbx + 0x88]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
cmp esi, 0x1e
ja 0x14004300e
mov rax, qword [rbx + 0xe8]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov qword [rsp + 0xe8], rax
mov rax, qword [rbx + 0xe0]
mov rdx, qword [rbx + 8]
mov qword [rsp + 0xe0], rax
mov rax, qword [rbx + 0xd8]
mov rcx, qword [rbx]
mov qword [rsp + 0xd8], rax
mov rax, qword [rbx + 0xd0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rbx + 0xc8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rbx + 0xc0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rbx + 0xb8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rbx + 0xb0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rbx + 0xa8]
mov qword [rsp + 0xa8], rax
mov rax, qword [rbx + 0xa0]
mov qword [rsp + 0xa0], rax
mov rax, qword [rbx + 0x98]
mov qword [rsp + 0x98], rax
mov rax, qword [rbx + 0x90]
mov qword [rsp + 0x90], rax
mov rax, qword [rbx + 0x88]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
cmp esi, 0x28
ja 0x140043201
mov rax, qword [rbx + 0x138]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov qword [rsp + 0x138], rax
mov rax, qword [rbx + 0x130]
mov rdx, qword [rbx + 8]
mov qword [rsp + 0x130], rax
mov rax, qword [rbx + 0x128]
mov rcx, qword [rbx]
mov qword [rsp + 0x128], rax
mov rax, qword [rbx + 0x120]
mov qword [rsp + 0x120], rax
mov rax, qword [rbx + 0x118]
mov qword [rsp + 0x118], rax
mov rax, qword [rbx + 0x110]
mov qword [rsp + 0x110], rax
mov rax, qword [rbx + 0x108]
mov qword [rsp + 0x108], rax
mov rax, qword [rbx + 0x100]
mov qword [rsp + 0x100], rax
mov rax, qword [rbx + 0xf8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rbx + 0xf0]
mov qword [rsp + 0xf0], rax
mov rax, qword [rbx + 0xe8]
mov qword [rsp + 0xe8], rax
mov rax, qword [rbx + 0xe0]
mov qword [rsp + 0xe0], rax
mov rax, qword [rbx + 0xd8]
mov qword [rsp + 0xd8], rax
mov rax, qword [rbx + 0xd0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rbx + 0xc8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rbx + 0xc0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rbx + 0xb8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rbx + 0xb0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rbx + 0xa8]
mov qword [rsp + 0xa8], rax
mov rax, qword [rbx + 0xa0]
mov qword [rsp + 0xa0], rax
mov rax, qword [rbx + 0x98]
mov qword [rsp + 0x98], rax
mov rax, qword [rbx + 0x90]
mov qword [rsp + 0x90], rax
mov rax, qword [rbx + 0x88]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
cmp esi, edx
ja 0x140043da3
mov rax, qword [rbx + 0x318]
mov qword [rsp + 0x318], rax
mov rax, qword [rbx + 0x310]
mov qword [rsp + 0x310], rax
mov rax, qword [rbx + 0x308]
mov qword [rsp + 0x308], rax
mov rax, qword [rbx + 0x300]
mov qword [rsp + 0x300], rax
mov rax, qword [rbx + 0x2f8]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rbx + 0x2f0]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rbx + 0x2e8]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rbx + 0x2e0]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rbx + 0x2d8]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rbx + 0x2d0]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rbx + 0x2c8]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rbx + 0x2c0]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rbx + 0x2b8]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rbx + 0x2b0]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rbx + 0x2a8]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rbx + 0x2a0]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rbx + 0x298]
mov qword [rsp + 0x298], rax
mov rax, qword [rbx + 0x290]
mov qword [rsp + 0x290], rax
mov rax, qword [rbx + 0x288]
mov qword [rsp + 0x288], rax
mov rax, qword [rbx + 0x280]
mov qword [rsp + 0x280], rax
mov rax, qword [rbx + 0x278]
mov qword [rsp + 0x278], rax
mov rax, qword [rbx + 0x270]
mov qword [rsp + 0x270], rax
mov rax, qword [rbx + 0x268]
mov qword [rsp + 0x268], rax
mov rax, qword [rbx + 0x260]
mov qword [rsp + 0x260], rax
mov rax, qword [rbx + 0x258]
mov qword [rsp + 0x258], rax
mov rax, qword [rbx + 0x250]
mov qword [rsp + 0x250], rax
mov rax, qword [rbx + 0x248]
mov qword [rsp + 0x248], rax
mov rax, qword [rbx + 0x240]
mov qword [rsp + 0x240], rax
mov rax, qword [rbx + 0x238]
mov qword [rsp + 0x238], rax
mov rax, qword [rbx + 0x230]
mov qword [rsp + 0x230], rax
mov rax, qword [rbx + 0x228]
mov qword [rsp + 0x228], rax
mov rax, qword [rbx + 0x220]
mov qword [rsp + 0x220], rax
mov rax, qword [rbx + 0x218]
mov qword [rsp + 0x218], rax
mov rax, qword [rbx + 0x210]
mov qword [rsp + 0x210], rax
mov rax, qword [rbx + 0x208]
mov qword [rsp + 0x208], rax
mov rax, qword [rbx + 0x200]
mov qword [rsp + 0x200], rax
mov rax, qword [rbx + 0x1f8]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rbx + 0x1f0]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rbx + 0x1e8]
mov qword [rsp + 0x1e8], rax
mov rax, qword [rbx + 0x1e0]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rbx + 0x1d8]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rbx + 0x1d0]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rbx + 0x1c8]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rbx + 0x1c0]
mov qword [rsp + 0x1c0], rax
mov rax, qword [rbx + 0x1b8]
mov qword [rsp + 0x1b8], rax
mov rax, qword [rbx + 0x1b0]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rbx + 0x1a8]
mov qword [rsp + 0x1a8], rax
mov rax, qword [rbx + 0x1a0]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rbx + 0x198]
mov qword [rsp + 0x198], rax
mov rax, qword [rbx + 0x190]
mov qword [rsp + 0x190], rax
mov rax, qword [rbx + 0x188]
mov qword [rsp + 0x188], rax
mov rax, qword [rbx + 0x180]
mov qword [rsp + 0x180], rax
mov rax, qword [rbx + 0x178]
mov qword [rsp + 0x178], rax
mov rax, qword [rbx + 0x170]
mov qword [rsp + 0x170], rax
mov rax, qword [rbx + 0x168]
mov qword [rsp + 0x168], rax
mov rax, qword [rbx + 0x160]
mov qword [rsp + 0x160], rax
mov rax, qword [rbx + 0x158]
mov qword [rsp + 0x158], rax
mov rax, qword [rbx + 0x150]
mov qword [rsp + 0x150], rax
mov rax, qword [rbx + 0x148]
mov qword [rsp + 0x148], rax
mov rax, qword [rbx + 0x140]
mov qword [rsp + 0x140], rax
mov rax, qword [rbx + 0x138]
mov qword [rsp + 0x138], rax
mov rax, qword [rbx + 0x130]
mov qword [rsp + 0x130], rax
mov rax, qword [rbx + 0x128]
mov qword [rsp + 0x128], rax
mov rax, qword [rbx + 0x120]
mov qword [rsp + 0x120], rax
mov rax, qword [rbx + 0x118]
mov qword [rsp + 0x118], rax
mov rax, qword [rbx + 0x110]
mov qword [rsp + 0x110], rax
mov rax, qword [rbx + 0x108]
mov qword [rsp + 0x108], rax
mov rax, qword [rbx + 0x100]
mov qword [rsp + 0x100], rax
mov rax, qword [rbx + 0xf8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rbx + 0xf0]
mov qword [rsp + 0xf0], rax
mov rax, qword [rbx + 0xe8]
mov qword [rsp + 0xe8], rax
mov rax, qword [rbx + 0xe0]
mov qword [rsp + 0xe0], rax
mov rax, qword [rbx + 0xd8]
mov qword [rsp + 0xd8], rax
mov rax, qword [rbx + 0xd0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rbx + 0xc8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rbx + 0xc0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rbx + 0xb8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rbx + 0xb0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rbx + 0xa8]
mov qword [rsp + 0xa8], rax
mov rax, qword [rbx + 0xa0]
mov qword [rsp + 0xa0], rax
mov rax, qword [rbx + 0x98]
mov qword [rsp + 0x98], rax
mov rax, qword [rbx + 0x90]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x90], rax
mov rax, qword [rbx + 0x88]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
movzx r15d, byte [rsp + 0x388]
cmp esi, 0x14
mov edx, 0x20
cmovbe r15d, edx
mov dword [rsp + 0x388], r15d
cmp esi, 0xa
ja 0x1400438d5
je 0x140043889
lea eax, [rdx - 0x1b]
cmp esi, eax
ja 0x1400437ef
je 0x140042da9
cmp esi, r14d
je 0x140042de6
sub esi, ecx
je 0x140042ddf
sub esi, ecx
je 0x140042dd4
sub esi, ecx
je 0x140042dc5
cmp esi, ecx
jne 0x140043da3
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
call rbp
jmp 0x140042d7c
sub esi, 6
je 0x140042d84
sub esi, ecx
je 0x140042d50
sub esi, ecx
je 0x14004384f
cmp esi, ecx
jne 0x140043da3
mov rax, qword [rbx + 0x40]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x38]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x48]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov eax, 0x10
cmp esi, eax
ja 0x140043b96
je 0x140043b14
sub esi, 0xb
je 0x140043abf
sub esi, ecx
je 0x140043a61
sub esi, ecx
je 0x1400439fa
sub esi, ecx
je 0x14004398a
cmp esi, ecx
jne 0x140043da3
mov rax, qword [rbx + 0x70]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x68]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x60]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x58]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x50]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x78]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
sub esi, 0x11
je 0x140043d07
sub esi, ecx
je 0x140043c67
sub esi, ecx
je 0x140043bb8
cmp esi, ecx
jne 0x140043da3
jmp 0x140042df3
mov rax, qword [rbx + 0x90]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x90], rax
mov rax, qword [rbx + 0x88]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x88]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov rax, qword [rbx + 0x80]
mov r9, qword [rbx + 0x18]
mov r8, qword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx]
mov qword [rsp + 0x80], rax
mov rax, qword [rbx + 0x78]
mov qword [rsp + 0x78], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x60]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call rbp
jmp 0x140042d7c
mov r15d, dword [rsp + 0x388]
xor r14d, r14d
mov rsi, qword [rsp + 0x5d0]
mov rax, qword [rsp + 0x458]
cmp rax, r14
je 0x140043e61
lea rcx, [rsp + 0x3d8]
mov rdx, rax
call fcn.14006d444
lea rdx, [rsp + 0x3d8]
xor r8d, r8d
mov rcx, rsi
call fcn.140003978
mov rbx, qword [rsp + 0x3d8]
lea rcx, [rsp + 0x3f8]
call fcn.140061620
mov eax, 0x20
test al, r15b
je 0x140043e2b
cmp rdi, r14
je 0x140043e2b
mov eax, 0x7e
mov r9, r14
lea rcx, [rsp + 0x3f8]
cmp ax, word [rbx]
mov eax, 0xfde9
mov rdx, rdi
cmove r9, rax
or r8, 0xffffffffffffffff
call fcn.1400617dc
mov rdx, qword [rsp + 0x3d8]
mov r8, qword [rsp + 0x3f8]
mov rcx, rsi
add rdx, 2
call fcn.14006093c
lea rcx, [rsp + 0x3f8]
call fcn.140058efc
lea rcx, [rsp + 0x3d8]
call fcn.140058efc
xor r15d, r15d
mov rbx, rdi
mov qword [rsp + 0x368], rbx
cmp r13b, r15b
je 0x140043e90
mov r8, qword [rsp + 0x460]
cmp r8, r15
je 0x140043e90
mov edx, dword [rsp + 0x468]
mov rcx, rsi
call fcn.1400648ec
mov al, byte [rsp + 0x327]
cmp al, r15b
je 0x140043ed9
cmp al, 2
jne 0x140043ec9
mov r14d, 1
cmp edi, r14d
jne 0x140043eb0
mov rbx, r15
jmp 0x140043ebf
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r15d
cmove eax, r14d
mov ebx, eax
mov qword [rsp + 0x368], rbx
jmp 0x140043edf
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov qword [rsp + 0x368], rbx
mov r14d, 1
cmp byte [rsp + 0x324], r15b
jle 0x140043f09
cmp byte [rsp + 0x3b4], r15b
jg 0x140043f09
mov rax, qword [rsp + 0x350]
cmp rax, r15
je 0x140043f09
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp r12b, r15b
je 0x140041609
call qword [0x1401327d0]
lea rcx, [0x140133120]
not r12b
and byte [rsi + 0x12], r12b
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140041609
mov cl, byte [rsp + 0x320]
mov esi, dword [rsp + 0x388]
jmp 0x140043f51
mov esi, dword [rsp + 0x388]
mov rbx, r15
mov r12d, 0x10
mov rax, qword [rsp + 0x3a8]
cmp word [rax], r15w
je 0x140044054
mov edx, 0x2a
cmp dx, word [rax]
je 0x140044054
cmp sil, r15b
je 0x140044054
cmp byte [rsp + 0x34d], r15b
lea r8, [0x140000000]
lea rdx, [rsp + 0x4f0]
mov rax, qword [r8 + 0x118558]
mov qword [rdx], rax
mov rax, qword [r8 + 0x118560]
mov qword [rdx + 8], rax
movzx eax, word [r8 + 0x118568]
mov word [rdx + 0x10], ax
mov rax, qword [r8 + 0x118548]
lea rdx, [rsp + 0x490]
mov qword [rdx], rax
mov eax, dword [r8 + 0x118550]
mov dword [rdx + 8], eax
movzx eax, word [r8 + 0x118554]
mov word [rdx + 0xc], ax
lea rdx, [rsp + 0x4f0]
lea rax, [rsp + 0x490]
cmove rdx, rax
cmp cl, r15b
je 0x140044012
cmp byte [rsp + 0x323], r15b
je 0x140044012
mov esi, dword [rsp + 0x398]
cmp rdi, r15
jne 0x14004402c
lea rdx, [0x140112598]
jmp 0x14004402c
mov esi, dword [rsp + 0x398]
cmp sil, r15b
je 0x140044028
mov eax, 0x3c
mov word [rdx], ax
jmp 0x14004402c
add rdx, 2
lea rcx, [rsp + 0x510]
mov r8, rdi
call qword [sym.imp.USER32.dll_wsprintfW]
neg byte [rsp + 0x327]
sbb rax, rax
and rax, rbx
mov qword [rsp + 0x368], rax
jmp 0x14004405b
mov esi, dword [rsp + 0x398]
mov rax, qword [rsp + 0x3f0]
cmp rax, r15
je 0x140040ed9
mov rcx, rax
call fcn.1400179d4
jmp 0x140040ed9
mov rbx, qword [rsp + 0x5d0]
mov rdx, qword [rsp + 0x3a8]
lea r8, [rsp + 0x510]
mov rcx, rbx
call fcn.14006093c
jmp 0x140040f6c
lea rcx, [rsp + 0x3e0]
call fcn.140058efc
lea rcx, [rsp + 0x3d0]
call fcn.140058efc
lea rcx, [rsp + 0x408]
call fcn.1400ec7d8
lea rcx, [rsp + 0x408]
call fcn.140058efc
lea rcx, [rsp + 0x488]
call fcn.140058efc
lea rcx, [rsp + 0x460]
call fcn.140058efc
lea rcx, [rsp + 0x4b8]
call fcn.140058efc
lea rcx, [rsp + 0x3a8]
call fcn.140058efc
lea rcx, [rsp + 0x470]
call fcn.140058efc
neg byte [rsp + 0x328]
sbb rax, rax
not rax
and rax, 0xffffffff80070057
mov rbx, qword [rsp + 0x5e8]
add rsp, 0x590
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret