Function at 0x140088300
Capabilities:
Encode data using base64
Read file on windows
Resolve function by parsing pe exports
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1a0
mov r12, rcx
lea rcx, [rax - 0x70]
call fcn.140063620
lea rcx, [rsp + 0x1e8]
xor ebp, ebp
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x178], rbp
call fcn.14005b154
lea rcx, [rsp + 0xb8]
call fcn.140063620
lea rcx, [rsp + 0xd8]
call fcn.140063620
lea rcx, [rsp + 0x138]
call fcn.140063620
lea rcx, [rsp + 0x98]
call fcn.140063620
mov r11, qword [rsp + 0x1e8]
lea r13d, [rbp + 1]
lea r8d, [rbp + 0x2c]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x168]
mov r9b, r13b
mov qword [rsp + 0x58], r11
call fcn.14007f6e4
lea rdx, [rsp + 0xb8]
xor r8d, r8d
mov rcx, rax
call fcn.1400675b8
mov r9, qword [rsp + 0xb8]
mov rbx, rbp
movzx eax, word [r9]
mov byte [rsp + 0x80], bpl
mov byte [rsp + 0x48], bpl
mov sil, bpl
mov rcx, r9
mov qword [rsp + 0x1f8], rbx
lea edx, [rbp + 0x20]
lea r8d, [rbp + 9]
lea r14d, [rbp + 0xd]
lea r15d, [rbp + 2]
cmp ax, bp
je 0x14008843d
cmp r8w, ax
ja 0x140088407
cmp ax, r14w
jbe 0x14008840c
cmp dx, ax
jne 0x14008840f
mov rbx, rcx
add rcx, r15
mov ax, word [rcx]
cmp ax, bp
jne 0x1400883fb
mov qword [rsp + 0x1f8], rbx
cmp rbx, rbp
je 0x14008843d
mov word [rbx], bp
mov r9, qword [rsp + 0xb8]
add rbx, r15
mov qword [rsp + 0x1f8], rbx
mov qword [rsp + 0x1e8], r9
mov dword [rsp + 0x90], 6
mov edi, 0x2a
cmp rbx, rbp
je 0x14008855e
cmp di, word [r9]
jne 0x14008855e
mov ebx, edx
lea r12d, [rdi + 3]
cmp r12w, word [r9 + 2]
je 0x140088546
lea rdx, [rsp + 0x1e8]
lea rcx, str.nobom
mov r8d, 6
call fcn.1400660ac
cmp al, bpl
je 0x1400884a2
mov byte [rsp + 0x48], r13b
jmp 0x140088534
lea rdx, [rsp + 0x1e8]
lea rcx, str.transonly
mov r8d, 0xa
call fcn.1400660ac
cmp al, bpl
je 0x1400884cb
mov byte [rsp + 0x80], r13b
jmp 0x140088534
lea rdx, [rsp + 0x1e8]
lea rcx, [0x14012760c]
mov r8d, 3
call fcn.1400660ac
cmp al, bpl
je 0x1400884ef
mov sil, r13b
jmp 0x140088534
mov rcx, qword [rsp + 0x1e8]
movzx eax, word [rcx]
cmp ax, bp
je 0x140088527
mov edx, 9
cmp dx, ax
ja 0x14008850f
cmp ax, r14w
jbe 0x14008851f
cmp bx, ax
je 0x14008851f
add rcx, r15
mov ax, word [rcx]
cmp ax, bp
jne 0x140088504
mov qword [rsp + 0x1e8], rcx
lea rcx, [rsp + 0x1e8]
call fcn.14005b154
mov r9, qword [rsp + 0x1e8]
cmp di, word [r9]
je 0x14008846e
mov r9, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x1f8]
mov r12, qword [rsp + 0x1e0]
mov byte [rsp + 0x75], bpl
mov dil, bpl
mov byte [rsp + 0x1f8], bpl
mov byte [rsp + 0x1e8], bpl
mov r14b, bpl
mov byte [rsp + 0x60], bpl
cmp rbx, rbp
je 0x1400885c8
lea rcx, [rsp + 0xc0]
mov rdx, rbx
call fcn.1400702b0
mov r11, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb8]
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xb8], r11
call fcn.14005b104
mov r9, qword [rsp + 0xb8]
cmp sil, bpl
je 0x140089bca
lea rdx, [rsp + 0xb8]
xor r8d, r8d
mov rcx, r12
call fcn.140003a20
mov rax, qword [rsp + 0xb8]
or r14, 0xffffffffffffffff
lea edi, [r14 + 0x2b]
lea rcx, [rsp + 0x1e8]
mov qword [rsp + 0x50], r14
lea edx, [rdi + 0x52]
mov r8d, edi
mov qword [rsp + 0x1e8], rax
call fcn.14005b374
mov rcx, qword [rsp + 0x1e8]
cmp word [rcx], bp
je 0x140088627
mov word [rcx], bp
add rcx, r15
movzx edx, word [rcx]
mov r8d, 9
lea eax, [rdx - 0x30]
cmp ax, r8w
ja 0x14008864d
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x58]
call fcn.1400a9a84
mov rsi, rbp
jmp 0x140088656
neg dx
sbb rsi, rsi
and rsi, rcx
mov rdx, qword [rsp + 0x58]
lea r8, [rsp + 0x98]
xor r9d, r9d
mov rcx, r12
mov byte [rsp + 0x20], r13b
call fcn.14007bf44
mov r11, qword [rsp + 0x98]
mov ebx, 0x2c
mov qword [rsp + 0x58], r11
mov r8, rbp
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x148], rbp
mov qword [rsp + 0x158], rbp
cmp bx, word [r11]
jne 0x1400886ab
add r11, r15
mov qword [rsp + 0x58], r11
lea rcx, [rsp + 0x58]
call fcn.14005b154
mov rcx, qword [rsp + 0x58]
mov r15w, word [rcx]
mov dword [rsp + 0x64], r15d
cmp r15w, bp
je 0x1400888d2
mov edx, 0x2b
mov r10d, 0x3a3
lea eax, [rdx + 0x14]
lea r9d, [r10 - 3]
cmp dx, r15w
jne 0x1400886f9
cmp dx, word [rcx + 2]
jne 0x14008872c
add rcx, 2
mov r15d, r10d
mov dword [rsp + 0x64], r10d
jmp 0x14008872c
cmp di, r15w
jne 0x140088712
cmp di, word [rcx + 2]
jne 0x14008872c
mov r15w, r9w
add rcx, 2
mov dword [rsp + 0x64], r15d
cmp r9w, r15w
jne 0x14008871f
mov qword [rsp + 0x68], r13
jmp 0x14008872c
cmp ax, r15w
cmove r8, r14
mov qword [rsp + 0x68], r8
mov r11d, 2
add rcx, r11
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + 0x58]
call fcn.14005b154
mov r10, qword [rsp + 0x58]
mov eax, 0x3a9
cmp ax, r15w
lea edi, [r11 + 0x3d]
movzx r9d, r15w
cmove r9w, di
mov eax, 0x3a3
mov word [rsp + 0x1f8], r9w
cmp ax, r15w
je 0x140088788
mov eax, 0x3a0
cmp ax, r15w
je 0x140088788
cmp di, r9w
jne 0x140088963
cmp bx, word [r10]
je 0x14008896d
lea rcx, [rsp + 0x58]
mov edx, ebx
mov r13, r10
mov qword [rsp + 0x148], r10
call fcn.1400f5c6c
mov r10, qword [rsp + 0x58]
cmp word [r10], bp
je 0x1400887c5
mov word [r10], bp
mov r10, qword [rsp + 0x58]
add r10, r11
mov qword [rsp + 0x58], r10
cmp di, r9w
jne 0x1400887fb
mov rbx, r13
cmp word [r13], bp
je 0x1400887f9
mov eax, 0x2b
lea r9d, [rax + 2]
cmp ax, word [rbx]
je 0x14008892c
cmp r9w, word [rbx]
je 0x140088922
add rbx, r11
cmp word [rbx], bp
jne 0x1400887de
mov ebx, edx
mov r13d, 1
mov eax, 0x2a
mov rdi, rbp
mov qword [rsp + 0x110], rbp
mov qword [rsp + 0xe0], rbp
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0x128], rbp
mov qword [rsp + 0xf8], rbp
mov qword [rsp + 0xc8], 0xfffffffffffe0000
mov qword [rsp + 0x108], r13
mov qword [rsp + 0x120], r13
mov qword [rsp + 0x100], rbp
mov dword [rsp + 0x1e8], ebp
cmp ax, word [r10]
jne 0x140088872
add r10, r11
mov dword [rsp + 0x1e8], r13d
mov qword [rsp + 0x58], r10
mov eax, 0x26
lea rcx, [rsp + 0x58]
cmp ax, word [r10]
jne 0x14008897a
mov eax, 3
mov edx, ebx
mov dword [rsp + 0x1e8], eax
call fcn.1400f5c6c
mov rcx, qword [rsp + 0x58]
cmp word [rcx], bp
je 0x1400888ab
mov word [rcx], bp
add qword [rsp + 0x58], r11
mov r9d, r14d
xor r8d, r8d
mov rdx, r10
mov rcx, r12
mov qword [rsp + 0x20], rbp
call fcn.140018978
mov qword [rsp + 0x100], rax
cmp rax, rbp
jne 0x14008899f
mov rbp, 0xffffffff80070057
lea rcx, [rsp + 0x98]
call fcn.14005b104
lea rcx, [rsp + 0x138]
call fcn.14005b104
lea rcx, [rsp + 0xd8]
call fcn.14005b104
lea rcx, [rsp + 0xb8]
call fcn.14005b104
lea rcx, [rsp + 0x168]
call fcn.14005b104
mov rax, rbp
jmp 0x14008ac2c
mov qword [rsp + 0x1e8], rbx
jmp 0x140088938
lea rax, [rbx + 2]
mov qword [rsp + 0x1e8], rax
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x1e8]
call fcn.140067cf4
mov word [rbx], bp
mov r10, qword [rsp + 0x58]
mov ebx, 0x2c
lea r11d, [rbx - 0x2a]
jmp 0x1400887fb
cmp bx, word [r10]
jne 0x140088801
add r10, r11
mov qword [rsp + 0x58], r10
jmp 0x140088801
lea rdx, [rsp + 0xe0]
call fcn.1400a9a84
cmp eax, ebp
jle 0x1400888d2
mov rdi, qword [rsp + 0xe0]
mov qword [rsp + 0x110], rdi
mov ecx, 0x3e
lea edx, [rcx - 0x11]
cmp dx, r15w
jne 0x1400889b3
lea r15d, [rcx - 0x13]
jmp 0x1400889c2
mov eax, 0x3c
cmp ax, r15w
jne 0x1400889d2
mov r15w, cx
neg rdi
mov dword [rsp + 0x64], r15d
mov qword [rsp + 0x110], rdi
mov rax, qword [rsp + 0x58]
mov r13d, ebp
mov ebx, 2
cmp dx, word [rax]
sete r13b
cmp r13d, ebp
je 0x1400889f3
add rax, rbx
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0x58]
call fcn.1400745c8
cmp eax, ebp
jle 0x1400888d2
cmp qword [rsp + 0x108], rbp
jle 0x1400888d2
mov rax, qword [rsp + 0x108]
mov ecx, 0x40
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x58]
cmp cx, word [rax]
jne 0x140088a6c
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x58]
call fcn.1400745c8
cmp eax, ebp
jle 0x1400888d2
cmp qword [rsp + 0x120], rbp
jle 0x1400888d2
mov rax, qword [rsp + 0x58]
mov ecx, 0x2f
cmp cx, word [rax]
jne 0x140088aab
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x58]
call fcn.1400745c8
cmp eax, ebp
jle 0x1400888d2
mov rax, qword [rsp + 0xe0]
cmp rax, rbp
mov qword [rsp + 0x40], rax
jle 0x1400888d2
mov rax, qword [rsp + 0x58]
cmp word [rax], bp
je 0x140088ab8
add rax, rbx
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0xe0], rbp
call fcn.1400a9a84
mov rdi, qword [rsp + 0xe0]
cmp rdi, rbp
jl 0x1400888d2
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x58]
call fcn.1400a9a84
lea rcx, [0x14013e190]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [rsp + 0xb8]
mov r9d, r14d
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], rbp
call fcn.140018978
mov rbx, rax
cmp rax, rbp
je 0x140088d29
mov r15, rbp
cmp rsi, rbp
je 0x140088b4a
mov r9d, r14d
xor r8d, r8d
mov rdx, rsi
mov rcx, r12
mov qword [rsp + 0x20], rbp
call fcn.140018978
mov r15, rax
mov rsi, qword [rbx + 0x18]
movabs rcx, 0x3fffffffffffffff
and rsi, rcx
cmp rdi, rsi
jge 0x140088d29
cmp rsi, rbp
jle 0x140088d29
mov r12, qword [rsp + 0xc0]
mov rcx, qword [rbx + 8]
mov rax, rsi
cmp r12, rbp
mov qword [rsp + 0xe0], rcx
cmovle r12, rsi
sub rax, rdi
cmp r12, rax
cmovg r12, rax
cmp rax, r12
cmovg rax, r12
cmp rax, rbp
mov qword [rsp + 0xf0], rax
jle 0x140088d29
mov edx, dword [rsp + 0x64]
lea rbx, [rcx + rdi]
mov ecx, 0x68
movzx eax, dx
lea r10d, [rcx + 7]
or ax, 0x20
cmp cx, ax
je 0x140088bd9
lea ecx, [r10 - 1]
cmp cx, ax
je 0x140088bd9
cmp r10w, ax
jne 0x140088be1
mov dx, r10w
mov dword [rsp + 0x64], edx
mov ecx, 0x5e
mov eax, 0x3a9
lea r11d, [rcx - 0x3b]
lea r9d, [rcx - 0x30]
lea r14d, [rcx - 0x5a]
cmp ax, dx
jne 0x140088c24
lea eax, [rcx - 0x55]
mov byte [rsp + 0x90], al
cmp r10w, dx
jne 0x140088d3b
mov r13, qword [rsp + 0x110]
cmp rdi, r13
cmovg rdi, r13
jmp 0x140088d43
mov eax, 0x3f
cmp ax, dx
jne 0x140088c38
mov byte [rsp + 0x90], 8
jmp 0x140088c06
mov eax, 0x7c
cmp ax, dx
jne 0x140088c4c
mov byte [rsp + 0x90], 7
jmp 0x140088c06
mov eax, 0x26
cmp ax, dx
je 0x140088c06
mov eax, 0x3a0
cmp ax, dx
jne 0x140088c6b
neg r13d
sbb al, al
and al, 5
add al, 5
jmp 0x140088bff
mov eax, 0x2a
cmp ax, dx
jne 0x140088c7f
cmp r13d, ebp
setne al
add al, 0xb
jmp 0x140088bff
mov r8d, 0x2f
cmp r8w, dx
jne 0x140088c9d
cmp r13d, ebp
je 0x140088c9d
mov byte [rsp + 0x90], 0xf
jmp 0x140088c06
cmp cx, dx
sete al
movzx ecx, al
mov eax, 0x3e
cmp ax, dx
mov eax, 2
cmove ecx, eax
cmp r9w, dx
mov r9d, 0x2d
movzx eax, cl
mov ecx, 3
cmove eax, ecx
cmp r9w, dx
movzx ecx, al
lea eax, [r9 - 0x20]
cmove ecx, eax
movzx eax, cl
mov ecx, 0x3a3
cmp cx, dx
cmove eax, r14d
cmp r8w, dx
movzx ecx, al
lea eax, [r9 - 0x1f]
cmove ecx, eax
mov al, cl
mov dword [rsp + 0x90], eax
cmp al, bpl
jne 0x140088c06
lea eax, [r9 - 2]
cmp ax, dx
je 0x140088c06
cmp r11w, dx
je 0x140088c06
cmp r10w, dx
je 0x140088c10
lea rcx, [0x14013e190]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400888d2
mov r13, qword [rsp + 0x110]
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x58]
call fcn.1400a9a84
mov rax, qword [rsp + 0x128]
lea rdx, [rsp + 0xc8]
cmp rax, rbp
lea rcx, [rsp + 0x58]
cmove rax, r12
mov qword [rsp + 0x88], rax
call fcn.1400a9a84
mov r12, qword [rsp + 0xc8]
cmp r12, rbp
jg 0x140088dc3
cmp r12, 0xfffffffffffe0000
je 0x140088db7
mov rax, qword [rsp + 0x88]
mov rcx, rax
neg rcx
cmp rax, rbp
cmovge rcx, rax
sub rsi, rdi
mov rax, rsi
cqo
idiv rcx
mov r12, rax
cmp r12, rbp
mov eax, 1
cmovle r12, rax
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x58]
call fcn.1400a9a84
mov rax, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xe0]
movsxd rsi, dword [rsp + 0x1e8]
cmp rax, rbp
cmove rax, qword [rsp + 0x88]
mov ecx, edx
mov r10d, 2
mov qword [rsp + 0x190], rax
mov eax, edx
mov qword [rsp + 0x140], rbx
and eax, 7
sub ecx, eax
mov dword [rsp + 0xe8], eax
mov dword [rsp + 0x154], ecx
lea rcx, [r8 + r13]
mov qword [rsp + 0xa8], rcx
test r10b, sil
je 0x140088e53
mov rax, qword [rsp + 0x100]
mov rcx, qword [rax + 8]
mov qword [rsp + 0xa8], rcx
mov rax, qword [rsp + 0x50]
mov rcx, rbx
mov qword [rsp + 0xd0], rbx
cmp rax, rbp
jl 0x140088e74
lea rcx, [r8 + rax]
mov qword [rsp + 0xd0], rcx
cmp r15, rbp
je 0x140088e85
mov rcx, qword [r15 + 8]
mov qword [rsp + 0xd0], rcx
movzx r8d, word [rsp + 0x108]
mov r9, qword [rsp + 0x120]
mov r15d, dword [rsp + 0x64]
lea eax, [r9 + r9]
mov rdi, rcx
mov dword [rsp + 0xa0], r13d
mov dword [rsp + 0xec], eax
mov rax, rdx
mov word [rsp + 0x80], r13w
cqo
mov byte [rsp + 0x1e8], r13b
idiv r8
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x198], rdx
mov rax, r8
cqo
idiv r9
lea rcx, [rax - 1]
cqo
sub rax, rdx
mov qword [rsp + 0x180], rcx
sar rax, 1
mov qword [rsp + 0x128], rax
imul rcx, r9
mov qword [rsp + 0xf8], rcx
mov rcx, rax
mov rax, r8
imul rcx, r9
sub rax, rcx
cmp r8, r10
setge cl
cmp r8, r14
mov qword [rsp + 0x100], rax
movzx edx, cl
mov ecx, 3
cmovge edx, r10d
cmp r8, 8
movzx eax, dl
cmovge eax, ecx
mov dword [rsp + 0x150], eax
lea eax, [rcx + 0x3b]
cmp ax, r15w
je 0x140088f7e
lea eax, [rcx + 0x2b]
cmp ax, r15w
je 0x140088f7e
lea eax, [rcx + 0x23]
cmp ax, r15w
je 0x140088f7e
lea eax, [rcx + 0x79]
cmp ax, r15w
je 0x140088f7e
lea eax, [rcx + 0x3c]
cmp ax, word [rsp + 0x1f8]
mov byte [rsp + 0x1f8], 1
jne 0x140088f86
mov byte [rsp + 0x1f8], bpl
lea rcx, [rsp + 0x118]
mov rdx, r8
call fcn.1400633a8
mov rcx, qword [rsp + 0x40]
movzx r8d, word [rsp + 0x108]
mov r11d, dword [rsp + 0xe8]
mov r10d, ecx
mov qword [rsp + 0x50], rsi
sub r10d, r8d
sub r12, 1
mov qword [rsp + 0xc8], r12
mov dword [rsp + 0x70], r10d
js 0x140089b82
mov r9, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xd0]
mov esi, 0x23
cmp si, r15w
jne 0x14008915f
cmp r10d, ebp
je 0x1400890d8
mov rcx, qword [rsp + 0xa8]
mov rdx, r9
add r9, r14
cmp rcx, r9
jae 0x140089b75
mov rcx, qword [rsp + 0x40]
lea r10d, [r8 - 1]
mov r12d, 1
cmp r10d, ebp
mov r8d, r10d
jl 0x14008904c
mov al, byte [rbx]
mov cl, byte [rdx]
mov byte [rdx], al
mov byte [rbx], cl
add rbx, r12
add rdx, r12
sub r8d, r12d
jns 0x140089034
mov rcx, qword [rsp + 0x40]
add rdx, rcx
add rbx, rcx
cmp rdx, r9
jb 0x14008902c
mov r12, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xd0]
mov r10d, dword [rsp + 0x70]
mov r8, qword [rsp + 0x190]
mov rbx, qword [rsp + 0x140]
add r9, rax
add rdx, r8
add rbx, r8
sub r12, 1
mov qword [rsp + 0xc8], r12
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0xd0], rdx
mov rdi, rdx
mov qword [rsp + 0xa8], r9
js 0x140089b82
mov r13, qword [rsp + 0x110]
movzx r8d, word [rsp + 0x108]
jmp 0x140088ff3
mov rdi, qword [rsp + 0xa8]
movsxd r8, dword [rsp + 0x154]
add r8, rdi
mov rdx, rdi
cmp rdi, r8
jae 0x140089111
mov rax, qword [rbx]
mov rcx, qword [rdx]
mov qword [rdx], rax
add rdx, 8
mov qword [rbx], rcx
add rbx, 8
cmp rdx, r8
jb 0x1400890f3
mov rcx, qword [rsp + 0x40]
movsxd rax, r11d
cmp rax, rbp
jle 0x140089147
lea r8d, [r11 - 1]
cmp r8d, ebp
jl 0x140089147
sub rbx, rdx
mov r15d, 1
mov al, byte [rdx]
mov cl, byte [rbx + rdx]
mov byte [rbx + rdx], al
mov byte [rdx], cl
add rdx, r15
sub r8d, r15d
jns 0x14008912b
mov r15d, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x88]
mov r9, rdi
mov rdx, qword [rsp + 0xd0]
jmp 0x14008907c
mov r8d, 0x6f
cmp r8w, r15w
jne 0x1400893d1
cmp r10d, ebp
je 0x1400892bb
mov r9, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xa8]
mov rax, r9
lea r14, [rdi + r9]
mov rsi, rdi
cqo
mov qword [rsp + 0x130], r14
idiv rcx
lea r8, [rax - 1]
imul r8, rcx
add r8, rbx
cmp rdi, r14
jae 0x140089b50
mov r15, qword [rsp + 0x128]
mov rax, qword [rsp + 0x180]
movsxd r12, r10d
cmp rax, rbp
mov r10, rax
jl 0x140089268
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x120]
lea r13, [r15 - 1]
movsxd r15, dword [rsp + 0xec]
cmp r13, rbp
lea r8, [rcx + rbx]
mov r9, r13
jl 0x140089247
lea edi, [r14 - 1]
mov r14d, 1
cmp edi, ebp
mov edx, edi
jl 0x140089227
mov al, byte [r8]
mov cl, byte [rbx]
mov byte [rbx], al
mov byte [r8], cl
add r8, r14
add rbx, r14
sub edx, r14d
jns 0x140089212
sub r8, r15
sub r9, r14
jns 0x14008920c
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x120]
add rbx, rax
sub r10, 1
jns 0x1400891f6
mov r14, qword [rsp + 0x130]
mov r15, qword [rsp + 0x128]
mov rax, qword [rsp + 0x180]
add rsi, r12
sub r8, r12
cmp rsi, r14
jb 0x1400891c6
mov r15d, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x40]
mov r12, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xd0]
mov r11d, dword [rsp + 0xe8]
mov esi, 0x23
jmp 0x140089077
mov edi, 1
cmp qword [rsp + 0x120], rdi
jg 0x14008933a
mov r9, qword [rsp + 0x188]
dec r9
cmp r9, rbp
jl 0x140089b43
mov r10, qword [rsp + 0x128]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf8]
dec r10
cmp r10, rbp
lea rdx, [rcx + rbx]
mov r8, r10
jl 0x140089328
mov al, byte [rdx]
mov cl, byte [rbx]
mov byte [rbx], al
mov byte [rdx], cl
sub rdx, rdi
add rbx, rdi
sub r8, rdi
jns 0x140089305
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf8]
add rbx, rax
sub r9, rdi
jns 0x1400892f9
mov rcx, qword [rsp + 0x40]
jmp 0x14008905f
mov r10, qword [rsp + 0x188]
dec r10
cmp r10, rbp
jl 0x140089077
movsxd rsi, dword [rsp + 0x128]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf8]
movsxd r15, dword [rsp + 0xec]
mov r14, qword [rsp + 0x120]
dec rsi
cmp rsi, rbp
lea rdx, [rcx + rbx]
mov r9, rsi
jl 0x1400893c4
lea edi, [r14 - 1]
mov r12d, 1
cmp edi, ebp
mov r8d, edi
jl 0x1400893a9
mov al, byte [rdx]
mov cl, byte [rbx]
mov byte [rbx], al
mov byte [rdx], cl
add rdx, r12
add rbx, r12
sub r8d, r12d
jns 0x140089396
sub rdx, r15
sub r9, r12
jns 0x14008938f
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf8]
mov rdi, r12
add rbx, rax
sub r10, rdi
jns 0x140089379
jmp 0x140089277
mov rax, qword [rsp + 0x198]
movzx ecx, byte [rsp + 0x150]
mov r10, rbx
mov r14d, eax
cdqe
mov sil, r13b
sub r10, rax
mov r11d, ebp
mov qword [rsp + 0x130], rbp
add r10, qword [rsp + 0xf0]
mov qword [rsp + 0xc0], rbp
mov r12, r9
mov dword [rsp + 0x160], ecx
mov edx, 1
sub ecx, edx
je 0x140089933
sub ecx, edx
je 0x140089797
cmp ecx, edx
mov rcx, qword [rsp + 0x40]
je 0x1400895da
and sil, 7
lea r9d, [rdx + 7]
sub r9b, sil
cmp rbx, r10
jae 0x140089ac9
movzx r8d, byte [rsp + 0x90]
mov rax, qword [rsp + 0x50]
cmp rax, rbp
je 0x14008946d
mov dl, byte [r12]
add r12, rcx
mov byte [rsp + 0x1e8], dl
jmp 0x140089474
mov dl, byte [rsp + 0x1e8]
cmp r8d, 8
jg 0x14008954d
je 0x14008952d
mov ecx, r8d
cmp r8d, ebp
je 0x140089527
mov eax, 1
sub ecx, eax
je 0x14008950d
sub ecx, eax
je 0x1400894fb
sub ecx, eax
je 0x1400894f4
sub ecx, eax
je 0x1400894e6
sub ecx, eax
je 0x1400894d0
sub ecx, eax
je 0x1400894c5
cmp ecx, eax
mov rcx, qword [rsp + 0x40]
jne 0x1400895c1
mov al, dl
or al, byte [rbx]
mov byte [rdi], al
jmp 0x1400895c1
mov al, dl
and al, byte [rbx]
mov byte [rdi], al
jmp 0x1400895bc
movzx eax, byte [rbx]
mov rcx, qword [rsp + 0x68]
imul rcx, rax
mov qword [rsp + 0x68], rcx
jmp 0x1400895bc
movsx rax, byte [rbx]
add qword [rsp + 0x68], rax
jmp 0x1400895bc
mov byte [rbx], dl
jmp 0x1400895bc
mov dl, byte [rbx]
mov cl, r9b
mov al, dl
shl al, cl
mov cl, sil
shr dl, cl
or al, dl
jmp 0x1400894c9
mov rcx, qword [rsp + 0x40]
mov eax, 0x5e
cmp ax, r15w
jne 0x1400895c1
mov al, dl
xor al, byte [rbx]
jmp 0x1400894be
mov al, dl
add al, byte [rbx]
jmp 0x1400894c9
test byte [rbx], dl
je 0x1400895c6
mov rax, rbx
sub rax, qword [rsp + 0xe0]
add rax, qword [rsp + 0x158]
jmp 0x140089b87
mov ecx, r8d
sub ecx, 9
je 0x1400895b3
mov eax, 1
sub ecx, eax
je 0x1400895aa
sub ecx, eax
je 0x14008959b
sub ecx, eax
je 0x1400895a1
sub ecx, eax
je 0x140089592
sub ecx, eax
je 0x140089574
cmp ecx, eax
je 0x14008957f
jmp 0x1400895bc
movzx eax, byte [rbx]
movzx ecx, dl
cdq
idiv ecx
mov byte [rdi], al
movsx eax, byte [rbx]
movsx ecx, byte [rsp + 0x1e8]
cdq
idiv ecx
jmp 0x1400894c9
mov al, byte [rbx]
sub al, dl
jmp 0x1400894c9
mov al, byte [rbx]
imul dl
mov byte [rdi], al
mov al, byte [rbx]
imul dl
jmp 0x1400894c9
movsx rax, byte [rbx]
jmp 0x1400894d3
test byte [rbx], dl
je 0x1400895bc
inc qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
add rbx, rcx
add rdi, rcx
cmp rbx, r10
jb 0x140089458
jmp 0x140089ac9
and sil, 0x3f
mov r9d, 0x40
sub r9b, sil
cmp rbx, r10
jae 0x140089ac9
movzx r8d, byte [rsp + 0x90]
mov rax, qword [rsp + 0x50]
cmp rax, rbp
je 0x140089612
mov r13, qword [r12]
add r12, rcx
mov qword [rsp + 0x110], r13
cmp r8d, 8
jg 0x140089710
je 0x1400896ea
mov ecx, r8d
cmp r8d, ebp
je 0x1400896da
sub ecx, edx
je 0x1400896be
sub ecx, edx
je 0x140089698
sub ecx, edx
je 0x140089690
sub ecx, edx
je 0x140089686
sub ecx, edx
je 0x140089673
sub ecx, edx
je 0x140089665
cmp ecx, edx
mov rcx, qword [rsp + 0x40]
jne 0x14008977e
mov rax, r13
or rax, qword [rbx]
mov qword [rdi], rax
jmp 0x14008977e
mov rax, r13
and rax, qword [rbx]
mov qword [rdi], rax
jmp 0x140089779
mov rax, qword [rsp + 0x68]
imul rax, qword [rbx]
mov qword [rsp + 0x68], rax
jmp 0x140089779
mov rax, qword [rsp + 0x68]
add rax, qword [rbx]
jmp 0x14008967c
mov qword [rbx], r13
jmp 0x140089779
mov rdx, qword [rbx]
mov cl, r9b
mov rax, rdx
shl rax, cl
mov cl, byte [rsp + 0x1e8]
shr rdx, cl
or rax, rdx
mov qword [rdi], rax
mov edx, 1
jmp 0x140089779
mov rcx, qword [rsp + 0x40]
mov eax, 0x5e
cmp ax, r15w
jne 0x14008977e
mov rax, r13
xor rax, qword [rbx]
jmp 0x14008965d
mov rax, qword [rbx]
lea rcx, [r13 + rax]
mov qword [rdi], rcx
jmp 0x140089779
test qword [rbx], r13
je 0x140089783
sub rbx, qword [rsp + 0xe0]
movzx ecx, word [rsp + 0x108]
mov rax, rbx
cqo
idiv rcx
jmp 0x140089540
mov ecx, r8d
sub ecx, 9
je 0x14008976f
sub ecx, edx
je 0x140089673
sub ecx, edx
je 0x140089759
sub ecx, edx
je 0x140089763
sub ecx, edx
je 0x14008974e
sub ecx, edx
je 0x140089736
cmp ecx, edx
je 0x140089741
jmp 0x140089779
mov rax, qword [rbx]
xor edx, edx
div r13
mov qword [rdi], rax
mov rax, qword [rbx]
cqo
idiv r13
jmp 0x1400896b1
mov rax, qword [rbx]
sub rax, r13
jmp 0x14008966b
mov rax, r13
imul rax, qword [rbx]
mov qword [rdi], rax
mov rax, r13
imul rax, qword [rbx]
jmp 0x14008966b
test qword [rbx], r13
je 0x140089779
add qword [rsp + 0x68], rdx
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
add rbx, rcx
add rdi, rcx
cmp rbx, r10
jb 0x1400895fe
jmp 0x140089ac9
mov rcx, qword [rsp + 0x40]
and sil, 0x1f
mov r9d, 0x20
sub r9b, sil
cmp rbx, r10
jae 0x140089ac9
movzx r8d, byte [rsp + 0x90]
mov rax, qword [rsp + 0x50]
cmp rax, rbp
je 0x1400897d5
mov edx, dword [r12]
add r12, rcx
mov dword [rsp + 0xa0], edx
jmp 0x1400897dc
mov edx, dword [rsp + 0xa0]
cmp r8d, 8
jg 0x1400898a0
je 0x140089896
mov ecx, r8d
cmp r8d, ebp
je 0x14008988d
mov eax, 1
sub ecx, eax
je 0x140089873
sub ecx, eax
je 0x140089861
sub ecx, eax
je 0x14008985a
sub ecx, eax
je 0x14008984d
sub ecx, eax
je 0x140089838
sub ecx, eax
je 0x14008982d
cmp ecx, eax
mov rcx, qword [rsp + 0x40]
jne 0x14008991a
mov eax, edx
or eax, dword [rbx]
mov dword [rdi], eax
jmp 0x14008991a
mov eax, edx
and eax, dword [rbx]
mov dword [rdi], eax
jmp 0x140089915
mov eax, dword [rbx]
mov rcx, qword [rsp + 0x68]
imul rcx, rax
mov qword [rsp + 0x68], rcx
jmp 0x140089915
movsxd rax, dword [rbx]
add qword [rsp + 0x68], rax
jmp 0x140089915
mov dword [rbx], edx
jmp 0x140089915
mov edx, dword [rbx]
mov cl, sil
mov eax, edx
shr eax, cl
mov cl, r9b
shl edx, cl
or eax, edx
jmp 0x140089831
mov rcx, qword [rsp + 0x40]
mov eax, 0x5e
cmp ax, r15w
jne 0x14008991a
mov eax, edx
xor eax, dword [rbx]
jmp 0x140089826
mov eax, dword [rbx]
lea ecx, [rdx + rax]
mov dword [rdi], ecx
jmp 0x140089915
test dword [rbx], edx
jne 0x1400896f3
jmp 0x14008991f
mov ecx, r8d
sub ecx, 9
je 0x14008990c
mov eax, 1
sub ecx, eax
je 0x140089904
sub ecx, eax
je 0x1400898f3
sub ecx, eax
je 0x1400898fa
sub ecx, eax
je 0x1400898ea
mov rdx, rax
sub ecx, edx
je 0x1400898d9
cmp ecx, edx
jne 0x140089915
mov ecx, dword [rsp + 0xa0]
mov eax, dword [rbx]
cdq
idiv ecx
jmp 0x140089831
mov eax, dword [rbx]
mov ecx, dword [rsp + 0xa0]
xor edx, edx
div ecx
mov dword [rdi], eax
jmp 0x1400898cf
mov eax, dword [rbx]
sub eax, edx
jmp 0x140089831
mov eax, edx
imul eax, dword [rbx]
mov dword [rdi], eax
mov eax, edx
imul eax, dword [rbx]
jmp 0x140089831
movsxd rax, dword [rbx]
jmp 0x14008983a
test dword [rbx], edx
je 0x140089915
inc qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
add rbx, rcx
add rdi, rcx
cmp rbx, r10
jb 0x1400897c0
jmp 0x140089ac9
mov rcx, qword [rsp + 0x40]
and sil, 0xf
mov r9d, 0x10
sub r9b, sil
cmp rbx, r10
jae 0x140089ac9
movzx r8d, byte [rsp + 0x90]
cmp qword [rsp + 0x50], rbp
je 0x140089970
movzx edx, word [r12]
add r12, rcx
mov word [rsp + 0x80], dx
jmp 0x140089978
mov dx, word [rsp + 0x80]
cmp r8d, 8
jg 0x140089a47
je 0x140089a37
mov ecx, r8d
cmp r8d, ebp
je 0x140089a23
mov eax, 1
sub ecx, eax
je 0x140089a0c
sub ecx, eax
je 0x1400899f5
sub ecx, eax
je 0x1400899ed
sub ecx, eax
je 0x1400899df
sub ecx, eax
je 0x1400899c9
sub ecx, eax
je 0x1400899c1
cmp ecx, eax
jne 0x140089ab5
movzx eax, dx
or ax, word [rbx]
jmp 0x140089a32
movzx eax, dx
and ax, word [rbx]
jmp 0x140089a32
movzx eax, word [rbx]
mov rcx, qword [rsp + 0x68]
imul rcx, rax
mov qword [rsp + 0x68], rcx
jmp 0x140089ab5
movsx rax, word [rbx]
add qword [rsp + 0x68], rax
jmp 0x140089ab5
mov word [rbx], dx
jmp 0x140089ab5
movzx edx, word [rbx]
mov cl, sil
movzx eax, dx
shr ax, cl
mov cl, r9b
shl dx, cl
or ax, dx
jmp 0x140089a32
mov eax, 0x5e
cmp ax, r15w
jne 0x140089ab5
movzx eax, dx
xor ax, word [rbx]
jmp 0x140089a32
movzx eax, dx
add ax, word [rbx]
mov word [rdi], ax
movzx eax, word [rbx]
sub ax, dx
mov word [rdi], ax
jmp 0x140089ab5
movzx eax, word [rbx]
movsx ecx, dx
test eax, ecx
jne 0x1400896f3
jmp 0x140089ab5
mov ecx, r8d
sub ecx, 9
je 0x140089aa6
mov eax, 1
sub ecx, eax
je 0x140089a9d
sub ecx, eax
je 0x140089a8a
sub ecx, eax
je 0x140089a94
sub ecx, eax
je 0x140089a2c
sub ecx, eax
je 0x140089a6e
cmp ecx, eax
je 0x140089a7a
jmp 0x140089ab5
movzx eax, word [rbx]
movzx ecx, dx
cdq
idiv ecx
mov word [rdi], ax
movsx eax, word [rbx]
movsx ecx, word [rsp + 0x80]
cdq
idiv ecx
jmp 0x140089a32
movzx eax, dx
imul ax, word [rbx]
mov word [rdi], ax
movzx eax, dx
imul ax, word [rbx]
jmp 0x140089a32
movsx rax, word [rbx]
jmp 0x1400899cc
movzx eax, word [rbx]
movsx ecx, dx
test eax, ecx
je 0x140089ab5
inc qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
add rbx, rcx
add rdi, rcx
cmp rbx, r10
jb 0x140089957
cmp r14d, ebp
jle 0x140089b1d
cmp byte [rsp + 0x1f8], bpl
je 0x140089b1d
lea rcx, [rsp + 0xc0]
movsxd r8, r14d
mov rdx, rbx
call fcn.14001d78c
movzx eax, word [rsp + 0x108]
mov ecx, dword [rsp + 0x160]
mov qword [rsp + 0x130], rbx
mov r11d, r14d
lea r10, [rsp + rax + 0xc0]
mov r14d, ebp
lea rbx, [rsp + 0xc0]
jmp 0x140089414
cmp r11d, ebp
je 0x140089281
mov rcx, qword [rsp + 0x130]
lea rdx, [rsp + 0xc0]
movsxd r8, r11d
call fcn.14001d78c
jmp 0x14008927c
mov r9, qword [rsp + 0xa8]
jmp 0x14008907c
mov r14, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xd0]
mov r9, rsi
mov esi, 0x23
jmp 0x14008907c
mov r9, rcx
mov rcx, qword [rsp + 0x40]
jmp 0x140089152
mov rax, qword [rsp + 0x68]
mov r8, qword [rsp + 0x148]
cmp r8, rbp
je 0x140089bab
mov rcx, qword [rsp + 0x1e0]
lea r9, [0x140127600]
mov rdx, rax
call fcn.1400668ec
lea rcx, [rsp + 0x118]
call fcn.14005b104
lea rcx, [0x14013e190]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400888d9
mov rax, qword [rsp + 0x58]
mov esi, 0x2c
lea rcx, [rax + 2]
mov qword [rsp + 0x118], rcx
cmp si, word [rax]
jne 0x140089c70
mov qword [rsp + 0x58], rcx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x168]
mov r8d, esi
mov r9b, r13b
call fcn.14007f6e4
lea rdx, [rsp + 0xd8]
xor r8d, r8d
mov rcx, rax
call fcn.1400676e4
mov rax, qword [rsp + 0x58]
mov r9, qword [rsp + 0xb8]
cmp si, word [rax]
jne 0x140089c70
mov rbx, r15
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x168]
add rax, rbx
mov r8d, esi
mov r9b, r13b
mov qword [rsp + 0x58], rax
call fcn.14007f6e4
lea rdx, [rsp + 0x138]
mov rcx, rax
xor r8d, r8d
call fcn.1400675b8
mov r9, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x58]
jmp 0x140089c73
mov rbx, r15
cmp si, word [rax]
jne 0x140089cb3
add rax, rbx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x168]
mov r8d, esi
mov r9b, r13b
mov qword [rsp + 0x58], rax
call fcn.14007f6e4
lea rdx, [rsp + 0x98]
xor r8d, r8d
mov rcx, rax
call fcn.1400675b8
mov r9, qword [rsp + 0xb8]
cmp word [r9], bp
je 0x14008abe8
mov rax, qword [rsp + 0xd8]
cmp word [rax], bp
je 0x14008abe8
mov r10, qword [rsp + 0x138]
cmp word [r10], bp
je 0x14008abe8
mov rax, qword [rsp + 0x98]
cmp word [rax], bp
je 0x14008abe8
mov esi, 0x2a
mov r13d, ebp
mov dword [rsp + 0x94], ebp
mov dword [rsp + 0xb0], ebp
mov r15d, ebp
mov r12d, ebp
mov qword [rsp + 0x88], r13
mov dword [rsp + 0x70], ebp
mov dword [rsp + 0xa0], ebp
mov dword [rsp + 0x64], ebp
mov r11, rbp
mov byte [rsp + 0x74], bpl
cmp si, word [r9]
jne 0x140089d7d
cmp si, word [r9 + 2]
jne 0x140089d65
mov r12b, byte [r9]
add r9, 4
mov byte [rsp + 0x1f8], bl
mov byte [rsp + 0x75], r12b
mov dil, r12b
mov r12d, ebp
cmp si, word [r9]
jne 0x140089d7d
add r9, rbx
mov byte [rsp + 0x1f8], 3
jmp 0x140089d7d
cmp si, word [r9]
jne 0x140089d7d
mov r12b, byte [r9]
add r9, 2
mov byte [rsp + 0x75], r12b
mov dil, r12b
mov r12d, ebp
mov eax, 0x2d
cmp ax, word [r9]
jne 0x140089d8e
mov dil, byte [r9]
add r9, rbx
cmp dil, bpl
je 0x1400888d2
lea rcx, [0x1401275fc]
mov rdx, r9
call fcn.14005c7c4
mov edi, 0x4b1
cmp al, bpl
je 0x140089dbf
mov edi, 1
mov byte [rsp + 0x74], dil
jmp 0x140089f16
lea rcx, str.ANSI
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089de5
mov qword [rsp + 0x88], r13
mov edi, 1
jmp 0x140089f16
lea rcx, [0x1401275f8]
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089e01
mov r13d, 0x3a8
jmp 0x140089dd3
lea rcx, str.BIG5
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089e1d
mov r13d, 0x3b6
jmp 0x140089dd3
lea rcx, str.UTF8
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089e4c
mov r9d, 0xfde9
mov edi, 1
mov r13d, r9d
mov qword [rsp + 0x88], r13
jmp 0x140089f1c
lea rcx, str.UTF7
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089e6b
mov r13d, 0xfde8
jmp 0x140089dd3
lea rcx, [0x1401275e0]
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089e8f
mov edi, 1
mov r15d, 0x4b0
jmp 0x140089f16
lea rcx, [0x14011dbc4]
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
jne 0x140089e7f
lea rcx, str.UNICODEB
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
je 0x140089ebf
mov r15d, edi
jmp 0x140089ddb
lea rcx, str.UNIB
mov rdx, r9
call fcn.14005c7c4
cmp al, bpl
jne 0x140089eb7
movzx eax, word [r9]
mov ecx, 9
sub ax, 0x30
cmp ax, cx
ja 0x140089efd
mov rcx, r9
call fcn.140064a88
mov r13, rax
mov qword [rsp + 0x88], rax
jmp 0x140089ddb
cmp word [r9], bp
jne 0x1400888d2
mov edi, 1
mov r15d, edi
mov r12d, edi
mov dword [rsp + 0x70], edi
mov r9d, 0xfde9
cmp si, word [r10]
jne 0x140089f54
cmp si, word [r10 + 2]
jne 0x140089f37
mov r12b, byte [r10]
add r10, 4
mov byte [rsp + 0x60], r12b
jmp 0x140089f44
cmp si, word [r10]
jne 0x140089f54
mov r12b, byte [r10]
add r10, 2
mov byte [rsp + 0x1e8], r12b
mov r14b, r12b
mov r12d, dword [rsp + 0x70]
mov eax, 0x2d
cmp ax, word [r10]
jne 0x140089f65
mov r14b, byte [r10]
add r10, rbx
cmp r14b, bpl
je 0x1400888d2
lea rcx, str.ANSI
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x140089f8e
mov dword [rsp + 0x94], ebp
jmp 0x14008a0e1
lea rcx, [0x1401275f8]
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x140089fb2
mov dword [rsp + 0x94], 0x3a8
jmp 0x14008a0e1
lea rcx, str.BIG5
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x140089fd6
mov dword [rsp + 0x94], 0x3b6
jmp 0x14008a0e1
lea rcx, str.UTF8
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x14008a006
mov dword [rsp + 0x94], r9d
lea r11, [0x140124130]
mov dword [rsp + 0x64], 3
jmp 0x14008a0e1
lea rcx, str.UTF7
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x14008a02a
mov dword [rsp + 0x94], 0xfde8
jmp 0x14008a0e1
lea rcx, [0x1401275e0]
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
jne 0x14008a052
lea rcx, [0x14011dbc4]
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x14008a066
mov dword [rsp + 0xb0], 0x4b0
lea r11, [0x140124128]
jmp 0x14008a0a0
lea rcx, str.UNICODEB
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
jne 0x14008a08e
lea rcx, str.UNIB
mov rdx, r10
call fcn.14005c7c4
cmp al, bpl
je 0x14008a0a6
mov dword [rsp + 0xb0], 0x4b1
lea r11, [0x14012412c]
mov dword [rsp + 0x64], ebx
jmp 0x14008a0e1
movzx eax, word [r10]
mov ecx, 9
sub ax, 0x30
cmp ax, cx
ja 0x14008a0c9
mov rcx, r10
call fcn.140064a88
mov dword [rsp + 0x94], eax
jmp 0x14008a0e1
cmp word [r10], bp
jne 0x1400888d2
mov dword [rsp + 0xb0], edi
mov dword [rsp + 0xa0], edi
cmp byte [rsp + 0x48], bpl
lea rcx, [rsp + 0x78]
mov rbx, rbp
cmovne r11, rbp
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x130], r11
call fcn.140063344
or r14, 0xffffffffffffffff
mov rsi, rbp
cmp byte [rsp + 0x75], bpl
jne 0x14008a3e1
mov rax, qword [rsp + 0x118]
lea r8d, [r14 + 0x2d]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x168]
mov r9b, dil
mov qword [rsp + 0x1f8], rbp
mov qword [rsp + 0x58], rax
call fcn.14007f6e4
lea rdx, [rsp + 0xd8]
mov rcx, rax
xor r8d, r8d
call fcn.1400675b8
mov rcx, qword [rsp + 0xd8]
call fcn.14001be14
mov qword [rsp + 0x38], rbp
lea ecx, [r14 + 4]
mov dword [rsp + 0x30], 0x80
mov dword [rsp + 0x28], ecx
lea r9d, [r14 + 8]
lea rcx, [rsp + 0x1f8]
mov r8d, 0x80000000
mov rdx, rax
mov qword [rsp + 0x20], rbp
call fcn.140003864
mov rdi, qword [rsp + 0x1f8]
cmp rdi, rbp
jne 0x14008a1bc
lea rcx, [rsp + 0x78]
call fcn.14005b104
mov ebp, 1
jmp 0x1400888d9
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 2]
call fcn.14005c674
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 1]
call fcn.14005c674
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov r12, rax
call fcn.14005c674
lea r11d, [r12 + 0xa]
lea rcx, [rsp + 0x78]
movsxd rdx, r11d
call fcn.140063424
mov r11, qword [rsp + 0x78]
lea r9, [rsp + 0xec]
mov byte [r11 + 2], bpl
mov rcx, qword [rsp + 0x78]
mov r8d, r12d
mov byte [rcx + 1], bpl
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x20], rbp
mov byte [rcx], bpl
mov rdx, qword [rsp + 0x78]
or dword [rsp + 0xec], 0xffffffff
mov rcx, rdi
mov qword [rsp + 0x1f8], rdx
call qword [sym.imp.KERNEL32.dll_ReadFile]
movsxd rsi, dword [rsp + 0xec]
cmp rsi, rbp
jge 0x14008a26a
or r14, 0xffffffffffffffff
cmp rdi, r14
je 0x14008a1a8
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008a1a8
mov rax, qword [rsp + 0x78]
mov r11b, byte [rsp + 0x74]
mov r9d, ebp
mov byte [rsi + rax + 2], bpl
mov rax, qword [rsp + 0x78]
mov byte [rsi + rax + 1], bpl
mov rax, qword [rsp + 0x78]
mov byte [rsi + rax], bpl
cmp r11b, bpl
jne 0x14008a29d
cmp r15d, 0x4b0
jne 0x14008a2d2
mov r10, qword [rsp + 0x1f8]
lea rdx, [0x140124128]
mov r8d, 2
mov rcx, r10
call fcn.14005b184
cmp eax, ebp
jne 0x14008a2cb
mov eax, 2
mov r15d, 0x4b0
jmp 0x14008a34a
cmp r11b, bpl
jne 0x14008a2e3
jmp 0x14008a2da
mov r10, qword [rsp + 0x1f8]
cmp r15d, 0x4b1
jne 0x14008a30e
lea rdx, [0x14012412c]
mov r8d, 2
mov rcx, r10
call fcn.14005b184
cmp eax, ebp
jne 0x14008a309
mov eax, 2
mov r15d, 0x4b1
jmp 0x14008a34a
cmp r11b, bpl
jne 0x14008a31b
mov r11d, 0xfde9
cmp r13d, r11d
jne 0x14008a373
jmp 0x14008a321
mov r11d, 0xfde9
lea rdx, [0x140124130]
mov r8d, 3
mov rcx, r10
call fcn.14005b184
cmp eax, ebp
jne 0x14008a373
mov r13d, r11d
mov eax, 3
mov qword [rsp + 0x88], r13
mov dword [rsp + 0x1f8], eax
cdqe
mov r8d, 3
sub r12, rax
lea rdx, [rax + r10]
mov rcx, r10
add r8, r12
call fcn.14001d744
mov r9d, dword [rsp + 0x1f8]
movsxd rax, r9d
sub rsi, rax
cmovs rsi, rbp
cmp rdi, r14
je 0x14008a38b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dil, bl
cmp rsi, rbp
mov r12, qword [rsp + 0x78]
jl 0x14008a1a8
mov r10d, 3
cmp byte [rsp + 0x74], bpl
je 0x14008a5bf
cmp dil, bpl
je 0x14008a5bf
mov r9d, 2
lea rdx, [0x140124128]
mov rcx, r12
mov r8, r9
call fcn.14005b184
cmp eax, ebp
jne 0x14008a57c
mov r15d, 0x4b0
jmp 0x14008a5bf
cmp byte [rsp + 0x1f8], bpl
je 0x14008a531
mov r12, qword [rsp + 0x1e0]
lea rdx, [rsp + 0xd8]
xor r8d, r8d
mov rcx, r12
call fcn.140003a20
mov rdi, qword [rsp + 0xd8]
mov ecx, 9
movzx eax, word [rdi]
sub ax, 0x30
cmp ax, cx
ja 0x14008a478
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x148]
mov qword [rsp + 0x148], rdi
call fcn.140067cf4
cmp eax, ebp
je 0x14008a478
mov rax, qword [rsp + 0x148]
cmp word [rax], bp
jne 0x14008a478
mov r12, qword [rsp + 0x118]
mov r10d, 3
cmp byte [rsp + 0x1f8], r10b
je 0x14008a4a8
or r14, 0xffffffffffffffff
mov dil, bl
mov rsi, r14
jmp 0x14008a3a2
mov r9d, r14d
xor r8d, r8d
mov rdx, rdi
mov rcx, r12
mov qword [rsp + 0x20], rbp
call fcn.140018978
mov rdi, rax
cmp rax, rbp
je 0x14008a506
mov r12, qword [rax + 8]
mov eax, 3
cmp byte [rsp + 0x1f8], al
jne 0x14008a4bd
lea rcx, [rsp + 0x78]
mov rdx, r12
call fcn.140069314
mov dil, 2
movsxd rsi, eax
jmp 0x14008a518
mov rsi, qword [rdi + 0x18]
movabs rcx, 0x3fffffffffffffff
and rsi, rcx
lea rcx, [rsp + 0x78]
lea rdx, [rsi + 8]
call fcn.140063424
mov r11, qword [rsp + 0x78]
xor edx, edx
lea rcx, [rsi + r11]
lea r8d, [rdx + 8]
call fcn.140102a90
mov rdx, qword [rdi + 8]
mov rcx, qword [rsp + 0x78]
mov r8, rsi
call fcn.14001d78c
mov dil, 1
jmp 0x14008a518
lea rcx, [rsp + 0x78]
mov edx, 8
call fcn.140063424
mov dil, bl
mov rax, qword [rsp + 0x78]
xor edx, edx
lea rcx, [rsi + rax]
lea r8d, [rdx + 8]
call fcn.140102a90
jmp 0x14008a38e
mov rdx, qword [rsp + 0xd8]
lea rcx, [rsp + 0x78]
cmp r12d, ebp
je 0x14008a56c
call fcn.1400703e4
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0x78]
movsxd rsi, eax
add rsi, rsi
lea rdx, [rsi + 8]
call fcn.140063424
jmp 0x14008a574
call fcn.140069314
movsxd rsi, eax
mov dil, 2
jmp 0x14008a38e
lea rdx, [0x14012412c]
mov r8, r9
mov rcx, r12
call fcn.14005b184
cmp eax, ebp
jne 0x14008a59a
mov r15d, 0x4b1
jmp 0x14008a5bf
lea rdx, [0x140124130]
mov r8, r10
mov rcx, r12
call fcn.14005b184
cmp eax, ebp
mov eax, 0xfde9
cmove r13d, eax
mov qword [rsp + 0x88], r13
cmp rsi, r14
jne 0x14008a5e3
mov rcx, r12
cmp r15d, ebp
je 0x14008a5da
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rsi, eax
add rsi, rsi
jmp 0x14008a5e3
call qword [sym.imp.KERNEL32.dll_lstrlenA]
movsxd rsi, eax
lea rcx, [rsp + 0x1f8]
mov r13, r12
mov qword [rsp + 0x118], r12
call fcn.140063620
lea rcx, [rsp + 0x94]
call fcn.140063060
mov rdi, qword [rsp + 0x88]
cmp dword [rax], edi
jne 0x14008a6f3
lea rcx, [rsp + 0xb0]
call fcn.140063060
cmp dword [rax], r15d
jne 0x14008a6f3
cmp byte [rsp + 0x60], bpl
je 0x14008a664
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1e0]
lea rax, [rsp + 0x98]
mov r9d, esi
mov r8, r12
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], rax
call fcn.140075148
jmp 0x14008a6d7
cmp byte [rsp + 0x1e8], bpl
jne 0x14008a68b
lea r9, [rsp + 0x1e0]
mov r8d, esi
mov rdx, r12
xor ecx, ecx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x14008a6d7
cmp dword [rsp + 0xa0], ebp
jne 0x14008a6b1
lea rcx, [rsp + 0x1f8]
mov r8d, esi
mov rdx, r12
call fcn.1400692d8
mov r8, qword [rsp + 0x1f8]
jmp 0x14008a6c2
mov r8, qword [rsp + 0xd8]
cmp dword [rsp + 0x70], ebp
jne 0x14008a6c2
mov r8, r12
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1e0]
call fcn.1400629b8
lea rcx, [rsp + 0x1f8]
call fcn.14005b104
lea rcx, [rsp + 0x78]
call fcn.14005b104
jmp 0x1400888d9
cmp r15d, 0x4b1
jne 0x14008a710
mov edx, esi
mov rcx, r12
mov r15d, 0x4b0
call fcn.140060a74
and rsi, 0xfffffffffffffffe
cmp byte [rsp + 0x1e8], bpl
jne 0x14008a77c
mov rcx, qword [rsp + 0x98]
call fcn.14001be14
mov qword [rsp + 0x38], rbp
mov dword [rsp + 0x30], 0x80
lea rcx, [rsp + 0x140]
mov r9d, 7
mov r8d, 0x40000000
mov rdx, rax
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], rbp
call fcn.140003864
mov rbx, qword [rsp + 0x140]
cmp rbx, rbp
jne 0x14008a77c
lea rcx, [rsp + 0x1f8]
call fcn.14005b104
jmp 0x14008a1a8
mov eax, 0x3a8
mov qword [rsp + 0xc0], rbp
cmp dword [rsp + 0x94], eax
jne 0x14008a79a
cmp edi, 0x3b6
je 0x14008a7b3
cmp edi, eax
jne 0x14008a876
cmp dword [rsp + 0x94], 0x3b6
jne 0x14008a876
movzx eax, byte [rsp + 0x80]
lea rcx, [rsp + 0xc8]
mov edi, eax
cmp al, bpl
mov eax, 3
cmovne edi, eax
call fcn.140063344
cmp dword [rsp + 0x94], 0x3b6
mov r8d, ebp
lea rdx, [rsp + 0xc8]
mov rcx, r12
sete r8b
call fcn.1400693c0
mov r11, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0xc8], r11
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov r12, qword [rsp + 0x78]
movsxd rsi, eax
mov eax, 3
mov r13, r12
cmp dil, al
jne 0x14008a869
cmp byte [rsp + 0x1e8], bpl
jne 0x14008a869
cmp rsi, rbp
jle 0x14008a857
lea r9, [rsp + 0x1e0]
mov r8d, esi
mov rdx, r12
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea rcx, [rsp + 0xc8]
call fcn.14005b104
jmp 0x14008ab5e
lea rcx, [rsp + 0xc8]
call fcn.14005b104
mov rax, rsi
cqo
sub rax, rdx
sar rax, 1
mov rdi, rax
cmp r15d, ebp
jne 0x14008a8db
lea edi, [rsi + 0xa]
lea rcx, [rsp + 0x1f8]
lea eax, [rdi + 0xa]
movsxd rdx, eax
call fcn.140063720
mov r13, qword [rsp + 0x1f8]
mov ecx, dword [rsp + 0x88]
mov r9d, esi
mov r8, r12
xor edx, edx
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], r13
call qword [0x14013c970]
cmp eax, ebp
mov r9, r13
cmovl eax, ebp
movsxd rdi, eax
lea rsi, [rdi + rdi]
mov word [rsi + r13], bp
jmp 0x14008a8e3
mov r9, qword [rsp + 0x118]
mov eax, dword [rsp + 0xb0]
cmp eax, 0x4b1
jne 0x14008a902
mov edx, esi
mov rcx, r13
call fcn.140060a74
mov eax, dword [rsp + 0xb0]
cmp eax, ebp
jle 0x14008aa36
cmp byte [rsp + 0x60], bpl
je 0x14008a982
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1e0]
lea rax, [rsp + 0x98]
mov r9d, esi
mov r8, r13
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], rax
call fcn.140075148
lea rcx, [rsp + 0xc0]
call fcn.14005b104
lea rcx, [rsp + 0x1f8]
call fcn.14005b104
lea rcx, [rsp + 0x78]
call fcn.14005b104
cmp rbx, rbp
je 0x1400888d9
cmp rbx, r14
je 0x1400888d9
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400888d9
cmp byte [rsp + 0x1e8], bpl
jne 0x14008a9de
cmp rsi, rbp
jle 0x14008ab5e
mov rdx, qword [rsp + 0x130]
cmp rdx, rbp
je 0x14008a9bd
mov r8d, dword [rsp + 0x64]
lea r9, [rsp + 0x1e0]
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rdx, r13
lea r9, [rsp + 0x1e0]
mov r8d, esi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x14008ab5e
cmp dword [rsp + 0xa0], ebp
jne 0x14008aa3f
lea rcx, [rsp + 0x1e8]
call fcn.140063620
lea rcx, [rsp + 0x1e8]
mov r8d, edi
mov rdx, r13
call fcn.1400692d8
mov r8, qword [rsp + 0x1e8]
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1e0]
call fcn.1400629b8
lea rcx, [rsp + 0x1e8]
call fcn.14005b104
jmp 0x14008ab5e
cmp dword [rsp + 0xa0], ebp
je 0x14008aa47
mov r8, r9
jmp 0x14008ab49
mov rax, rsi
cqo
sub rax, rdx
sar rax, 1
mov rsi, rax
lea ecx, [rax + rax*2]
lea edi, [rcx + rcx + 0xa]
lea ecx, [rdi + 1]
movsxd rdx, ecx
lea rcx, [rsp + 0xc0]
call fcn.140063424
mov ecx, dword [rsp + 0x94]
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x28], edi
mov rdi, qword [rsp + 0xc0]
mov r9d, esi
mov r8, r13
xor edx, edx
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp eax, ebp
mov esi, eax
cmovl esi, ebp
movsxd rax, esi
mov byte [rax + rdi], bpl
cmp byte [rsp + 0x1e8], bpl
jne 0x14008aaef
cmp esi, ebp
jle 0x14008ab5e
mov rdx, qword [rsp + 0x130]
cmp rdx, rbp
je 0x14008aae7
mov r8d, dword [rsp + 0x64]
lea r9, [rsp + 0x1e0]
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rdx, rdi
jmp 0x14008a9c0
cmp byte [rsp + 0x60], bpl
je 0x14008ab2e
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1e0]
movsxd r9, eax
lea rax, [rsp + 0x98]
mov r8, rdi
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], rax
call fcn.140075148
jmp 0x14008ab5e
lea rcx, [rsp + 0x1f8]
mov r8d, esi
mov rdx, rdi
call fcn.14006923c
mov r8, qword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1e0]
call fcn.1400629b8
cmp rbx, rbp
je 0x14008ab6c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
lea rcx, [rsp + 0xc0]
call fcn.14005b104
lea rcx, [rsp + 0x1f8]
call fcn.14005b104
lea rcx, [rsp + 0x78]
call fcn.14005b104
cmp rbx, rbp
je 0x14008aba3
cmp rbx, r14
je 0x14008aba3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x98]
call fcn.14005b104
lea rcx, [rsp + 0x138]
call fcn.14005b104
lea rcx, [rsp + 0xd8]
call fcn.14005b104
lea rcx, [rsp + 0xb8]
call fcn.14005b104
lea rcx, [rsp + 0x168]
call fcn.14005b104
xor eax, eax
jmp 0x14008ac2c
lea rcx, [rsp + 0x98]
call fcn.14005b104
lea rcx, [rsp + 0x138]
call fcn.14005b104
lea rcx, [rsp + 0xd8]
call fcn.14005b104
lea rcx, [rsp + 0xb8]
call fcn.14005b104
lea rcx, [rsp + 0x168]
call fcn.14005b104
mov rax, r13
mov rbx, qword [rsp + 0x1f0]
add rsp, 0x1a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret