Function at 0x1400a582c
Capabilities:
Read file on windows
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, 0x170
mov r15, rcx
lea rcx, [rax - 0x58]
call fcn.14005bf04
lea rcx, [rsp + 0x1b8]
xor ebp, ebp
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x160], rbp
call fcn.140054140
lea rcx, [rsp + 0x88]
call fcn.14005bf04
lea rcx, [rsp + 0x98]
call fcn.14005bf04
lea rcx, [rsp + 0x108]
call fcn.14005bf04
lea rcx, [rsp + 0x68]
call fcn.14005bf04
mov r11, qword [rsp + 0x1b8]
lea r13d, [rbp + 1]
lea r8d, [rbp + 0x2c]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x150]
mov r9b, r13b
mov qword [rsp + 0x50], r11
call fcn.140073dac
lea rdx, [rsp + 0x88]
xor r8d, r8d
mov rcx, rax
call fcn.14005fa74
mov r9, qword [rsp + 0x88]
mov rbx, rbp
movzx eax, word [r9]
mov byte [rsp + 0x64], bpl
mov byte [rsp + 0x40], bpl
mov sil, bpl
mov rcx, r9
mov qword [rsp + 0x1c8], rbx
lea edx, [rbp + 9]
lea edi, [rbp + 2]
lea r8d, [rbp + 0x20]
cmp ax, bp
je 0x1400a595e
cmp dx, ax
ja 0x1400a5927
cmp ax, 0xd
jbe 0x1400a592d
cmp r8w, ax
jne 0x1400a5930
mov rbx, rcx
add rcx, rdi
mov ax, word [rcx]
cmp ax, bp
jne 0x1400a591c
mov qword [rsp + 0x1c8], rbx
cmp rbx, rbp
je 0x1400a595e
mov word [rbx], bp
mov r9, qword [rsp + 0x88]
add rbx, rdi
mov qword [rsp + 0x1c8], rbx
mov r14d, 3
mov qword [rsp + 0x1b8], r9
lea r12d, [r14 + 0x27]
cmp rbx, rbp
je 0x1400a5a77
cmp r12w, word [r9]
jne 0x1400a5a77
lea ebx, [r14 + 3]
lea r15d, [r14 + 0x2a]
cmp r15w, word [r9 + 2]
je 0x1400a5a5f
lea rdx, [rsp + 0x1b8]
lea rcx, str.nobom
mov r8d, ebx
call fcn.14005e70c
cmp al, bpl
je 0x1400a59bc
mov byte [rsp + 0x40], r13b
jmp 0x1400a5a4d
lea rdx, [rsp + 0x1b8]
lea rcx, str.transonly
mov r8d, 0xa
call fcn.14005e70c
cmp al, bpl
je 0x1400a59e2
mov byte [rsp + 0x64], r13b
jmp 0x1400a5a4d
lea rdx, [rsp + 0x1b8]
lea rcx, [0x140108be8]
mov r8d, r14d
call fcn.14005e70c
cmp al, bpl
je 0x1400a5a03
mov sil, r13b
jmp 0x1400a5a4d
mov rcx, qword [rsp + 0x1b8]
movzx eax, word [rcx]
cmp ax, bp
je 0x1400a5a40
mov edx, 9
lea r8d, [rdx + 0x17]
cmp dx, ax
ja 0x1400a5a27
cmp ax, 0xd
jbe 0x1400a5a38
cmp r8w, ax
je 0x1400a5a38
add rcx, rdi
mov ax, word [rcx]
cmp ax, bp
jne 0x1400a5a1c
mov qword [rsp + 0x1b8], rcx
lea rcx, [rsp + 0x1b8]
call fcn.140054140
mov r9, qword [rsp + 0x1b8]
cmp r12w, word [r9]
je 0x1400a598b
mov r9, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x1c8]
mov r15, qword [rsp + 0x1b0]
mov r12b, bpl
mov dil, bpl
mov byte [rsp + 0x59], bpl
mov byte [rsp + 0x1b8], bpl
mov r14b, bpl
mov byte [rsp + 0x1c8], bpl
cmp rbx, rbp
je 0x1400a5ad3
lea rcx, [rsp + 0x78]
mov rdx, rbx
call fcn.140066ba4
mov r11, qword [rsp + 0x78]
mov rax, qword [rsp + 0x88]
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x88], r11
call fcn.140054110
mov r9, qword [rsp + 0x88]
cmp sil, bpl
je 0x1400a6812
lea rdx, [rsp + 0x88]
xor r8d, r8d
mov rcx, r15
call fcn.140003940
mov rdx, qword [rsp + 0x50]
lea r8, [rsp + 0x68]
xor r9d, r9d
mov rcx, r15
mov byte [rsp + 0x20], r13b
call fcn.140070858
mov r11, qword [rsp + 0x68]
mov r8d, 0x2c
mov qword [rsp + 0x50], r11
mov r13, rbp
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0x138], rbp
cmp r8w, word [r11]
jne 0x1400a5b3b
add r11, 2
mov qword [rsp + 0x50], r11
lea rcx, [rsp + 0x50]
call fcn.140054140
mov rcx, qword [rsp + 0x50]
mov si, word [rcx]
cmp si, bp
je 0x1400a67c5
mov r10d, 0x2b
mov ebx, 0x3a3
or r14, 0xffffffffffffffff
lea edi, [r10 + 0x14]
lea r11d, [rbx - 3]
cmp r10w, si
jne 0x1400a5b86
lea r12d, [r10 - 0x2a]
cmp r10w, word [rcx + 2]
jne 0x1400a5bbe
add rcx, 2
mov esi, ebx
jmp 0x1400a5bbe
mov edx, 0x2a
cmp dx, si
jne 0x1400a5b9e
cmp dx, word [rcx + 2]
jne 0x1400a5bb8
add rcx, 2
mov si, r11w
mov r12d, 1
cmp r11w, si
jne 0x1400a5baf
mov r13, r12
jmp 0x1400a5bbe
cmp di, si
cmove r13, r14
jmp 0x1400a5bbe
mov r12d, 1
mov r9d, 2
add rcx, r9
mov qword [rsp + 0x50], rcx
lea rcx, [rsp + 0x50]
call fcn.140054140
mov rax, qword [rsp + 0x50]
cmp bx, si
je 0x1400a5bef
cmp r11w, si
je 0x1400a5bef
cmp di, si
jne 0x1400a5c7f
cmp r8w, word [rax]
je 0x1400a5c85
lea rcx, [rsp + 0x50]
mov edx, r8d
mov rdi, rax
mov qword [rsp + 0xd0], rax
call fcn.140066ae0
mov rcx, qword [rsp + 0x50]
cmp word [rcx], bp
je 0x1400a5c23
mov word [rcx], bp
add qword [rsp + 0x50], r9
mov eax, 0x3f
cmp ax, si
jne 0x1400a5c8d
mov rbx, rdi
cmp word [rdi], bp
je 0x1400a5c8d
mov eax, 0x2d
cmp r10w, word [rbx]
je 0x1400a5c59
cmp ax, word [rbx]
je 0x1400a5c4f
add rbx, r9
cmp word [rbx], bp
jne 0x1400a5c3a
jmp 0x1400a5c8d
mov qword [rsp + 0x1b8], rbx
jmp 0x1400a5c65
lea rax, [rbx + 2]
mov qword [rsp + 0x1b8], rax
lea rdx, [rsp + 0x138]
lea rcx, [rsp + 0x1b8]
call fcn.140060134
mov word [rbx], bp
jmp 0x1400a5c8d
cmp r8w, word [rax]
jne 0x1400a5c8d
add rax, r9
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x1c8], rbp
mov qword [rsp + 0xf8], rbp
mov qword [rsp + 0x78], r14
mov qword [rsp + 0xf0], rbp
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0xe0], 0xfffffffffffe0000
mov dword [rsp + 0x1b8], r12d
call fcn.140006f0c
cmp eax, ebp
jle 0x1400a67c5
lea rdx, [rsp + 0x1b8]
lea rcx, [rsp + 0x50]
call fcn.140006ee8
cmp eax, ebp
jle 0x1400a67c5
cmp dword [rsp + 0x1b8], ebp
jle 0x1400a67c5
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x50]
call fcn.140006f0c
mov rbx, qword [rsp + 0xf8]
cmp rbx, rbp
jl 0x1400a67c5
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x50]
call fcn.140006f0c
lea rdi, [0x14011bf08]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [rsp + 0x88]
mov r9d, r14d
xor r8d, r8d
mov rcx, r15
mov qword [rsp + 0x20], rbp
call fcn.140016fb8
cmp rax, rbp
je 0x1400a67bc
mov r14, qword [rax + 0x18]
movabs rcx, 0x3fffffffffffffff
and r14, rcx
cmp rbx, r14
jge 0x1400a67bc
cmp r14, rbp
jle 0x1400a67bc
mov rcx, qword [rax + 8]
mov r15, qword [rsp + 0x78]
mov rax, r14
cmp r15, rbp
mov qword [rsp + 0xf8], rcx
cmovle r15, r14
sub rax, rbx
cmp r15, rax
cmovg r15, rax
cmp rax, r15
cmovg rax, r15
cmp rax, rbp
mov qword [rsp + 0xe8], rax
jle 0x1400a67bc
mov r12, qword [rsp + 0x1c8]
mov eax, 0x2d
lea rdi, [rcx + rbx]
lea r9d, [rax + 0x11]
lea edx, [rax - 2]
cmp ax, si
jne 0x1400a5def
mov si, dx
jmp 0x1400a5dfd
mov eax, 0x3c
cmp ax, si
jne 0x1400a5e00
mov si, r9w
neg r12
mov ecx, 0x68
movzx eax, si
mov qword [rsp + 0x130], r12
lea r10d, [rcx + 7]
or ax, 0x20
mov dword [rsp + 0x148], r10d
cmp cx, ax
je 0x1400a5e34
lea ecx, [r10 - 1]
cmp cx, ax
je 0x1400a5e34
cmp r10w, ax
jne 0x1400a5e38
mov si, r10w
mov r11d, 0x5e
mov dword [rsp + 0xb8], 0x23
lea eax, [r11 - 0x30]
lea r8d, [r11 + 0x1e]
lea ecx, [rax - 8]
cmp dx, si
je 0x1400a5eab
cmp r11w, si
je 0x1400a5eab
lea edx, [rax - 0xb]
cmp dx, si
je 0x1400a5eab
cmp r9w, si
je 0x1400a5eab
cmp r10w, si
je 0x1400a5eb1
cmp ax, si
je 0x1400a5eab
mov eax, 0x3a3
cmp ax, si
je 0x1400a5eab
mov eax, 0x3a0
cmp ax, si
je 0x1400a5eab
cmp cx, si
je 0x1400a5eab
cmp r8w, si
je 0x1400a5eab
lea eax, [rcx + 0x19]
cmp ax, si
je 0x1400a5eab
lea rcx, [0x14011bf08]
jmp 0x1400a67bf
cmp r10w, si
jne 0x1400a5eb8
cmp rbx, r12
cmovg rbx, r12
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x50]
call fcn.140006f0c
mov rax, qword [rsp + 0xf0]
lea rdx, [rsp + 0xe0]
cmp rax, rbp
lea rcx, [rsp + 0x50]
cmove rax, r15
mov qword [rsp + 0xb0], rax
call fcn.140006f0c
mov r15, qword [rsp + 0xe0]
cmp r15, rbp
jg 0x1400a5f38
cmp r15, 0xfffffffffffe0000
je 0x1400a5f2c
mov rax, qword [rsp + 0xb0]
mov rcx, rax
neg rcx
cmp rax, rbp
cmovg rcx, rax
sub r14, rbx
mov rax, r14
cqo
idiv rcx
mov r15, rax
cmp r15, rbp
mov eax, 1
cmovle r15, rax
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x50]
call fcn.140006f0c
mov rax, qword [rsp + 0x90]
mov r10, qword [rsp + 0xe8]
cmp rax, rbp
movzx r8d, byte [rsp + 0x1b8]
mov r11d, 7
cmove rax, qword [rsp + 0xb0]
mov ecx, r10d
lea r9d, [r11 - 3]
mov qword [rsp + 0x100], rax
mov eax, r10d
mov rbx, r8
and eax, r11d
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0x90], rbx
sub ecx, eax
mov dword [rsp + 0x144], eax
mov rax, qword [rsp + 0xf8]
add rax, r12
mov dword [rsp + 0xa8], ecx
lea ecx, [r11 - 6]
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0x1b8]
sar eax, 8
cmp eax, ebp
cmovle eax, ecx
mov dword [rsp + 0x80], eax
add eax, eax
mov dword [rsp + 0x140], eax
mov rax, r10
cqo
idiv r8
mov r14, rax
mov qword [rsp + 0x118], rax
lea eax, [rcx + 0x5d]
cmp ax, si
mov qword [rsp + 0x128], rdx
mov edx, 0x3a0
sete al
movzx ecx, al
lea eax, [r11 + 0x37]
cmp ax, si
lea eax, [r11 - 5]
cmove ecx, eax
movzx eax, cl
lea ecx, [r11 + 0x27]
cmp cx, si
lea ecx, [r11 - 4]
cmove eax, ecx
movzx ecx, al
mov eax, 0x3a3
cmp ax, si
cmove ecx, r9d
cmp dx, si
movzx eax, cl
lea ecx, [r11 - 2]
cmove eax, ecx
movzx ecx, al
lea eax, [r11 + 0x1f]
cmp ax, si
lea eax, [r11 - 1]
cmove ecx, eax
movzx eax, cl
lea ecx, [r11 + 0x75]
cmp cx, si
lea ecx, [r11 + 0x38]
cmove eax, r11d
cmp cx, si
movsxd rcx, dword [rsp + 0x80]
movzx eax, al
lea r11d, [r9 + 4]
mov qword [rsp + 0x110], rcx
cmove eax, r11d
mov dword [rsp + 0x70], eax
mov eax, r8d
cdq
idiv ecx
mov rdx, rcx
cdqe
lea rcx, [rax - 1]
imul rcx, rdx
cqo
sub rax, rdx
sar rax, 1
mov qword [rsp + 0xe0], rcx
mov rcx, rax
mov qword [rsp + 0x120], rax
lea eax, [r9 - 2]
imul rcx, qword [rsp + 0x110]
sub rbx, rcx
cmp r8d, eax
setge cl
cmp r8d, r9d
mov qword [rsp + 0x78], rbx
movzx edx, cl
cmovge edx, eax
lea eax, [r11 - 5]
cmp r8d, r11d
movzx r9d, dl
cmovge r9d, eax
lea eax, [r11 + 0x36]
mov dword [rsp + 0x1c8], r9d
cmp ax, si
je 0x1400a6132
lea eax, [r11 + 0x26]
cmp ax, si
je 0x1400a6132
lea eax, [r11 + 0x1e]
cmp ax, si
je 0x1400a6132
lea eax, [r11 + 0x74]
cmp ax, si
je 0x1400a6132
lea eax, [r11 + 0x37]
cmp ax, si
je 0x1400a6132
lea eax, [r11 - 7]
mov byte [rsp + 0x1b8], al
jmp 0x1400a613f
mov byte [rsp + 0x1b8], bpl
mov eax, 1
sub r15, rax
mov qword [rsp + 0xc8], r15
js 0x1400a6520
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x100]
mov rdx, rdi
cmp word [rsp + 0xb8], si
jne 0x1400a6265
movsxd rdx, dword [rsp + 0xa8]
mov r14, rcx
add rdx, rcx
cmp rcx, rdx
jae 0x1400a61ab
mov rax, qword [rdi]
mov rcx, qword [r14]
mov qword [r14], rax
add r14, r11
mov qword [rdi], rcx
add rdi, r11
cmp r14, rdx
jb 0x1400a618c
mov rcx, qword [rsp + 0xc0]
movsxd rax, dword [rsp + 0x144]
cmp eax, ebp
jle 0x1400a679f
lea rcx, [rsp + 0x168]
mov r8, rax
mov rdx, rdi
mov rbx, rax
call fcn.14001b870
mov r8, rbx
mov rdx, r14
mov rcx, rdi
call fcn.14001b870
mov r8, rbx
lea rdx, [rsp + 0x168]
mov rcx, r14
call fcn.14001b870
mov r11d, 8
mov rbx, qword [rsp + 0x78]
mov r14, qword [rsp + 0x118]
mov rax, qword [rsp + 0xb0]
mov r10, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0x100]
mov r9d, dword [rsp + 0x1c8]
add rdx, r8
add rcx, rax
sub r15, 1
mov qword [rsp + 0xc8], r15
mov qword [rsp + 0xd8], rdx
mov rdi, rdx
mov qword [rsp + 0xc0], rcx
js 0x1400a6520
jmp 0x1400a616b
cmp word [rsp + 0x148], si
jne 0x1400a6386
cmp qword [rsp + 0x110], 1
jg 0x1400a62dc
lea r9, [r14 - 1]
cmp r9, rbp
jl 0x1400a622d
mov r10, qword [rsp + 0x120]
mov rax, qword [rsp + 0xe0]
mov r12d, 1
dec r10d
cmp r10d, ebp
lea rdx, [rax + rdi]
mov r8d, r10d
jl 0x1400a62c7
mov al, byte [rdx]
mov cl, byte [rdi]
mov byte [rdi], al
mov byte [rdx], cl
sub rdx, r12
add rdi, r12
sub r8d, r12d
jns 0x1400a62ac
mov rax, qword [rsp + 0xe0]
add rdi, rbx
sub r9, r12
jns 0x1400a62a0
mov r12, qword [rsp + 0x130]
jmp 0x1400a6205
lea r10, [r14 - 1]
cmp r10, rbp
jl 0x1400a6792
mov r14, qword [rsp + 0x120]
mov rax, qword [rsp + 0xe0]
mov r15d, dword [rsp + 0x80]
movsxd r12, dword [rsp + 0x140]
dec r14d
mov ecx, 1
cmp r14d, ebp
lea rdx, [rax + rdi]
mov r9d, r14d
jl 0x1400a6363
lea ebx, [r15 - 1]
mov r15d, 1
cmp ebx, ebp
mov r8d, ebx
jl 0x1400a6341
mov al, byte [rdx]
mov cl, byte [rdi]
mov byte [rdi], al
mov byte [rdx], cl
add rdx, r15
add rdi, r15
sub r8d, r15d
jns 0x1400a632e
sub rdx, r12
sub r9d, r15d
jns 0x1400a6327
mov rbx, qword [rsp + 0x78]
mov rax, qword [rsp + 0xe0]
mov r15d, dword [rsp + 0x80]
mov ecx, 1
add rdi, rbx
sub r10, rcx
jns 0x1400a6311
mov r12, qword [rsp + 0x130]
mov r15, qword [rsp + 0xc8]
mov r11d, 8
jmp 0x1400a61fd
mov rax, qword [rsp + 0x128]
mov r8, rdi
movzx ecx, r9b
mov r14d, eax
cdqe
mov bl, r12b
sub r8, rax
mov edx, ebp
mov qword [rsp + 0xf0], rbp
add r8, r10
mov r10, rbp
mov dword [rsp + 0xa0], ecx
mov eax, 1
mov qword [rsp + 0xc8], r10
mov dword [rsp + 0x5c], edx
sub ecx, eax
je 0x1400a665a
sub ecx, eax
je 0x1400a65b1
cmp ecx, eax
je 0x1400a6493
and bl, 7
mov r9d, r11d
sub r9b, bl
cmp rdi, r8
jae 0x1400a6722
movzx r10d, byte [rsp + 0x70]
mov ecx, r10d
mov eax, 1
cmp r10d, ebp
je 0x1400a647f
sub ecx, eax
je 0x1400a6470
sub ecx, eax
je 0x1400a6458
sub ecx, eax
je 0x1400a6444
sub ecx, eax
je 0x1400a6447
sub ecx, eax
je 0x1400a644e
sub ecx, eax
je 0x1400a643f
sub ecx, eax
je 0x1400a643a
cmp ecx, eax
jne 0x1400a6482
test byte [rdi], r12b
je 0x1400a6482
mov r13, rdi
sub r13, qword [rsp + 0xf8]
jmp 0x1400a6518
or byte [rdi], r12b
jmp 0x1400a6482
and byte [rdi], r12b
jmp 0x1400a6482
mov byte [rdi], r12b
movsx rax, byte [rdi]
add r13, rax
movsx rax, byte [rdi]
imul r13, rax
jmp 0x1400a6469
mov dl, byte [rdi]
mov cl, r9b
mov al, dl
shl al, cl
mov cl, bl
shr dl, cl
or al, dl
mov byte [rdi], al
mov eax, 1
jmp 0x1400a6482
mov ecx, 0x5e
cmp cx, si
jne 0x1400a6482
xor byte [rdi], r12b
jmp 0x1400a6482
add byte [rdi], r12b
add rdi, rax
cmp rdi, r8
jb 0x1400a63f8
jmp 0x1400a6716
and bl, 0x3f
mov r9d, 0x40
sub r9b, bl
cmp rdi, r8
jae 0x1400a6722
movzx r10d, byte [rsp + 0x70]
mov ecx, r10d
cmp r10d, ebp
je 0x1400a6598
mov eax, 1
sub ecx, eax
je 0x1400a6589
sub ecx, eax
je 0x1400a656f
sub ecx, eax
je 0x1400a6563
sub ecx, eax
je 0x1400a6566
sub ecx, eax
je 0x1400a6569
sub ecx, eax
je 0x1400a655e
sub ecx, eax
je 0x1400a6559
cmp ecx, eax
jne 0x1400a659b
test qword [rdi], r12
je 0x1400a659b
sub rdi, qword [rsp + 0xf8]
mov rax, rdi
cqo
idiv qword [rsp + 0x90]
mov r13, rax
add r13, qword [rsp + 0x138]
mov rax, qword [rsp + 0xd0]
cmp rax, rbp
je 0x1400a6547
mov rcx, qword [rsp + 0x1b0]
lea r9, str._I64d
mov r8, rax
mov rdx, r13
call fcn.14005eee4
lea rcx, [0x14011bf08]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400a67cc
or qword [rdi], r12
jmp 0x1400a659b
and qword [rdi], r12
jmp 0x1400a659b
mov qword [rdi], r12
add r13, qword [rdi]
imul r13, qword [rdi]
jmp 0x1400a659b
mov rdx, qword [rdi]
mov cl, r9b
mov rax, rdx
shl rax, cl
mov cl, r12b
shr rdx, cl
or rax, rdx
mov qword [rdi], rax
jmp 0x1400a659b
mov eax, 0x5e
cmp ax, si
jne 0x1400a659b
xor qword [rdi], r12
jmp 0x1400a659b
add qword [rdi], r12
add rdi, qword [rsp + 0x90]
cmp rdi, r8
jb 0x1400a64ae
jmp 0x1400a6716
and bl, 0x1f
mov r9d, 0x20
sub r9b, bl
cmp rdi, r8
jae 0x1400a6722
movzx r10d, byte [rsp + 0x70]
mov ecx, r10d
cmp r10d, ebp
je 0x1400a6641
mov eax, 1
sub ecx, eax
je 0x1400a6632
sub ecx, eax
je 0x1400a661f
sub ecx, eax
je 0x1400a660e
sub ecx, eax
je 0x1400a6611
sub ecx, eax
je 0x1400a6617
sub ecx, eax
je 0x1400a6609
sub ecx, eax
je 0x1400a6604
cmp ecx, eax
jne 0x1400a6644
test dword [rdi], r12d
jne 0x1400a6500
jmp 0x1400a6644
or dword [rdi], r12d
jmp 0x1400a6644
and dword [rdi], r12d
jmp 0x1400a6644
mov dword [rdi], r12d
movsxd rax, dword [rdi]
add r13, rax
mov eax, dword [rdi]
imul r13, rax
jmp 0x1400a6644
mov edx, dword [rdi]
mov cl, r9b
mov eax, edx
shl eax, cl
mov cl, bl
shr edx, cl
or eax, edx
mov dword [rdi], eax
jmp 0x1400a6644
mov eax, 0x5e
cmp ax, si
jne 0x1400a6644
xor dword [rdi], r12d
jmp 0x1400a6644
add dword [rdi], r12d
add rdi, qword [rsp + 0x90]
cmp rdi, r8
jb 0x1400a65cc
jmp 0x1400a6716
and bl, 0xf
mov r9d, 0x10
sub r9b, bl
cmp rdi, r8
jae 0x1400a6722
movzx r10d, byte [rsp + 0x70]
mov ecx, r10d
cmp r10d, ebp
je 0x1400a6701
mov eax, 1
sub ecx, eax
je 0x1400a66f1
sub ecx, eax
je 0x1400a66d8
sub ecx, eax
je 0x1400a66c3
sub ecx, eax
je 0x1400a66c7
sub ecx, eax
je 0x1400a66ce
sub ecx, eax
je 0x1400a66bd
sub ecx, eax
je 0x1400a66b7
cmp ecx, eax
jne 0x1400a6705
movzx ecx, word [rdi]
movsx eax, r12w
test eax, ecx
jne 0x1400a6500
jmp 0x1400a6705
or word [rdi], r12w
jmp 0x1400a6705
and word [rdi], r12w
jmp 0x1400a6705
mov word [rdi], r12w
movsx rax, word [rdi]
add r13, rax
movsx rax, word [rdi]
imul r13, rax
jmp 0x1400a6705
movzx edx, word [rdi]
mov cl, r9b
movzx eax, dx
shl ax, cl
mov cl, bl
shr dx, cl
or ax, dx
mov word [rdi], ax
jmp 0x1400a6705
mov eax, 0x5e
cmp ax, si
jne 0x1400a6705
xor word [rdi], r12w
jmp 0x1400a6705
add word [rdi], r12w
add rdi, qword [rsp + 0x90]
cmp rdi, r8
jb 0x1400a6675
mov r10, qword [rsp + 0xc8]
mov edx, dword [rsp + 0x5c]
cmp r14d, ebp
jle 0x1400a6777
cmp byte [rsp + 0x1b8], bpl
je 0x1400a6777
lea rcx, [rsp + 0xf0]
movsxd r8, r14d
mov rdx, rdi
call fcn.14001b870
mov rax, qword [rsp + 0x90]
mov ecx, dword [rsp + 0xa0]
mov r10, rdi
mov edx, r14d
lea r8, [rsp + rax + 0xf0]
mov r14d, ebp
lea rdi, [rsp + 0xf0]
mov r11d, 8
jmp 0x1400a63b7
cmp edx, ebp
je 0x1400a61f8
movsxd r8, edx
mov rcx, r10
lea rdx, [rsp + 0xf0]
jmp 0x1400a61ed
mov r10, qword [rsp + 0xe8]
jmp 0x1400a6235
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xd8]
mov r14, qword [rsp + 0x118]
jmp 0x1400a6235
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbp, 0xffffffff80070057
lea rcx, [rsp + 0x68]
call fcn.140054110
lea rcx, [rsp + 0x108]
call fcn.140054110
lea rcx, [rsp + 0x98]
call fcn.140054110
lea rcx, [rsp + 0x88]
call fcn.140054110
lea rcx, [rsp + 0x150]
call fcn.140054110
mov rax, rbp
jmp 0x1400a771d
mov rax, qword [rsp + 0x50]
mov esi, 0x2c
lea rcx, [rax + 2]
mov qword [rsp + 0x128], rcx
cmp si, word [rax]
jne 0x1400a68b8
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x150]
mov r8d, esi
mov r9b, r13b
call fcn.140073dac
lea rdx, [rsp + 0x98]
xor r8d, r8d
mov rcx, rax
call fcn.14005fba0
mov rax, qword [rsp + 0x50]
mov r9, qword [rsp + 0x88]
cmp si, word [rax]
jne 0x1400a68b8
lea ebx, [rsi - 0x2a]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x150]
add rax, rbx
mov r8d, esi
mov r9b, r13b
mov qword [rsp + 0x50], rax
call fcn.140073dac
lea rdx, [rsp + 0x108]
mov rcx, rax
xor r8d, r8d
call fcn.14005fa74
mov r9, qword [rsp + 0x88]
mov rax, qword [rsp + 0x50]
jmp 0x1400a68bd
mov ebx, 2
cmp si, word [rax]
jne 0x1400a68fa
add rax, rbx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x150]
mov r8d, esi
mov r9b, r13b
mov qword [rsp + 0x50], rax
call fcn.140073dac
lea rdx, [rsp + 0x68]
xor r8d, r8d
mov rcx, rax
call fcn.14005fa74
mov r9, qword [rsp + 0x88]
cmp word [r9], bp
je 0x1400a76dc
mov rax, qword [rsp + 0x98]
cmp word [rax], bp
je 0x1400a76dc
mov r10, qword [rsp + 0x108]
cmp word [r10], bp
je 0x1400a76dc
mov rax, qword [rsp + 0x68]
cmp word [rax], bp
je 0x1400a76dc
mov esi, 0x2a
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x74], ebp
mov r15d, ebp
mov r13d, ebp
mov dword [rsp + 0xa8], ebp
mov dword [rsp + 0x70], ebp
mov dword [rsp + 0x5c], ebp
mov r11, rbp
mov byte [rsp + 0x58], bpl
cmp si, word [r9]
jne 0x1400a699a
cmp si, word [r9 + 2]
jne 0x1400a698a
mov r12b, byte [r9]
add r9, 4
mov byte [rsp + 0x59], bl
mov dil, r12b
cmp si, word [r9]
jne 0x1400a699a
add r9, rbx
mov byte [rsp + 0x59], 3
jmp 0x1400a699a
cmp si, word [r9]
jne 0x1400a699a
mov r12b, byte [r9]
add r9, 2
mov dil, r12b
mov eax, 0x2d
cmp ax, word [r9]
jne 0x1400a69ab
mov dil, byte [r9]
add r9, rbx
cmp dil, bpl
je 0x1400a67c5
lea rcx, [0x140108be4]
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a69d8
mov r9d, 1
mov byte [rsp + 0x58], r9b
jmp 0x1400a6b09
lea rcx, str.ANSI
mov rdx, r9
call fcn.140055690
cmp al, bpl
jne 0x1400a6ae6
lea rcx, [0x140108be0]
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a6a0f
mov r15d, 0x3a8
jmp 0x1400a6ae6
lea rcx, str.BIG5
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a6a2e
mov r15d, 0x3b6
jmp 0x1400a6ae6
lea rcx, str.UTF8
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a6a4d
mov r15d, 0xfde9
jmp 0x1400a6ae6
lea rcx, str.UTF7
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a6a69
mov r15d, 0xfde8
jmp 0x1400a6ae6
lea rcx, str.UNICODE
mov rdx, r9
call fcn.140055690
cmp al, bpl
jne 0x1400a6a91
lea rcx, [0x1400fd7d4]
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a6a99
mov r13d, 0x4b0
jmp 0x1400a6ae6
lea rcx, str.UNICODEB
mov rdx, r9
call fcn.140055690
cmp al, bpl
jne 0x1400a6ac1
lea rcx, str.UNIB
mov rdx, r9
call fcn.140055690
cmp al, bpl
je 0x1400a6ac9
mov r13d, 0x4b1
jmp 0x1400a6ae6
movzx eax, word [r9]
mov ecx, 9
sub ax, 0x30
cmp ax, cx
ja 0x1400a6aee
mov rcx, r9
call fcn.14005d19c
mov r15, rax
mov r9d, 1
jmp 0x1400a6b09
cmp word [r9], bp
jne 0x1400a67c5
mov r9d, 1
mov r13d, r9d
mov dword [rsp + 0xa8], r9d
cmp si, word [r10]
jne 0x1400a6b3f
cmp si, word [r10 + 2]
jne 0x1400a6b27
mov dil, byte [r10]
add r10, 4
mov byte [rsp + 0x1c8], dil
jmp 0x1400a6b34
cmp si, word [r10]
jne 0x1400a6b3f
mov dil, byte [r10]
add r10, 2
mov r14b, dil
mov byte [rsp + 0x1b8], dil
mov eax, 0x2d
cmp ax, word [r10]
jne 0x1400a6b50
mov r14b, byte [r10]
add r10, rbx
cmp r14b, bpl
je 0x1400a67c5
lea rcx, str.ANSI
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6b76
mov dword [rsp + 0x60], ebp
jmp 0x1400a6cb7
lea rcx, [0x140108be0]
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6b97
mov dword [rsp + 0x60], 0x3a8
jmp 0x1400a6cb7
lea rcx, str.BIG5
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6bb8
mov dword [rsp + 0x60], 0x3b6
jmp 0x1400a6cb7
lea rcx, str.UTF8
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6be9
mov edi, 3
mov dword [rsp + 0x60], 0xfde9
lea r11, [0x1401038f0]
mov dword [rsp + 0x5c], edi
jmp 0x1400a6cbc
lea rcx, str.UTF7
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6c0a
mov dword [rsp + 0x60], 0xfde8
jmp 0x1400a6cb7
lea rcx, str.UNICODE
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6c36
mov dword [rsp + 0x74], 0x4b0
lea r11, [0x1401038e8]
mov dword [rsp + 0x5c], ebx
jmp 0x1400a6cb7
lea rcx, [0x1400fd7d4]
mov rdx, r10
call fcn.140055690
cmp al, bpl
jne 0x1400a6c1e
lea rcx, str.UNICODEB
mov rdx, r10
call fcn.140055690
cmp al, bpl
je 0x1400a6c6f
mov dword [rsp + 0x74], 0x4b1
lea r11, [0x1401038ec]
jmp 0x1400a6c2d
lea rcx, str.UNIB
mov rdx, r10
call fcn.140055690
cmp al, bpl
jne 0x1400a6c5e
movzx eax, word [r10]
mov ecx, 9
sub ax, 0x30
cmp ax, cx
ja 0x1400a6ca3
mov rcx, r10
call fcn.14005d19c
mov dword [rsp + 0x60], eax
jmp 0x1400a6cb7
cmp word [r10], bp
jne 0x1400a67c5
mov dword [rsp + 0x74], r9d
mov dword [rsp + 0x70], r9d
mov edi, 3
cmp byte [rsp + 0x40], bpl
lea rcx, [rsp + 0x48]
mov rbx, rbp
cmovne r11, rbp
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x110], r11
call fcn.14005bc28
or r14, 0xffffffffffffffff
mov esi, ebp
cmp r12b, bpl
jne 0x1400a6fa8
mov rax, qword [rsp + 0x128]
lea esi, [r14 + 2]
lea r8d, [r14 + 0x2d]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x150]
mov r9b, sil
mov qword [rsp + 0xd0], rbp
mov qword [rsp + 0x50], rax
call fcn.140073dac
lea rdx, [rsp + 0x98]
xor r8d, r8d
mov rcx, rax
call fcn.14005fa74
mov rcx, qword [rsp + 0x98]
call fcn.140019e00
mov qword [rsp + 0x38], rbp
mov dword [rsp + 0x30], 0x80
lea r9d, [r14 + 8]
lea rcx, [rsp + 0xd0]
mov r8d, 0x80000000
mov rdx, rax
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rbp
call fcn.1400037a8
mov rdi, qword [rsp + 0xd0]
cmp rdi, rbp
jne 0x1400a6d92
lea rcx, [rsp + 0x48]
call fcn.140054110
mov rbp, rsi
jmp 0x1400a67cc
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 2]
call fcn.140055540
mov r8d, esi
xor edx, edx
mov rcx, rdi
call fcn.140055540
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov r12, rax
call fcn.140055540
lea r11d, [r12 + 0xa]
lea rcx, [rsp + 0x48]
movsxd rdx, r11d
call fcn.14005bd08
mov r11, qword [rsp + 0x48]
lea r9, [rsp + 0xb8]
mov byte [r11 + 2], bpl
mov rcx, qword [rsp + 0x48]
mov r8d, r12d
mov byte [rcx + 1], bpl
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x20], rbp
mov byte [rcx], bpl
mov rdx, qword [rsp + 0x48]
or dword [rsp + 0xb8], 0xffffffff
mov rcx, rdi
mov qword [rsp + 0xd0], rdx
call qword [sym.imp.KERNEL32.dll_ReadFile]
movsxd rsi, dword [rsp + 0xb8]
cmp esi, ebp
jge 0x1400a6e49
or r14, 0xffffffffffffffff
cmp rdi, r14
je 0x1400a6e35
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x48]
call fcn.140054110
mov ebp, 1
jmp 0x1400a67cc
mov rax, qword [rsp + 0x48]
mov r11b, byte [rsp + 0x58]
mov r10d, ebp
mov byte [rsi + rax + 2], bpl
mov rax, qword [rsp + 0x48]
mov byte [rax + rsi + 1], bpl
mov rax, qword [rsp + 0x48]
mov byte [rax + rsi], bpl
cmp r11b, bpl
jne 0x1400a6e7c
cmp r13d, 0x4b0
jne 0x1400a6eb1
mov r9, qword [rsp + 0xd0]
lea rdx, [0x1401038e8]
mov r8d, 2
mov rcx, r9
call fcn.140054170
cmp eax, ebp
jne 0x1400a6eaa
mov eax, 2
mov r13d, 0x4b0
jmp 0x1400a6f1a
cmp r11b, bpl
jne 0x1400a6ec2
jmp 0x1400a6eb9
mov r9, qword [rsp + 0xd0]
cmp r13d, 0x4b1
jne 0x1400a6eed
lea rdx, [0x1401038ec]
mov r8d, 2
mov rcx, r9
call fcn.140054170
cmp eax, ebp
jne 0x1400a6ee8
mov eax, 2
mov r13d, 0x4b1
jmp 0x1400a6f1a
cmp r11b, bpl
jne 0x1400a6ef6
cmp r15d, 0xfde9
jne 0x1400a6f43
lea rdx, [0x1401038f0]
mov r8d, 3
mov rcx, r9
call fcn.140054170
cmp eax, ebp
jne 0x1400a6f43
mov eax, 3
mov r15d, 0xfde9
mov dword [rsp + 0x80], eax
cdqe
mov r8d, 3
sub r12, rax
lea rdx, [r9 + rax]
mov rcx, r9
add r8, r12
call fcn.14001b828
mov r10d, dword [rsp + 0x80]
sub esi, r10d
cmovs esi, ebp
cmp rdi, r14
je 0x1400a6f57
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dil, bl
mov r9d, 2
cmp esi, ebp
jl 0x1400a6e35
cmp byte [rsp + 0x58], bpl
je 0x1400a7132
cmp dil, bpl
je 0x1400a7132
mov r12, qword [rsp + 0x48]
lea rdx, [0x1401038e8]
mov r8, r9
mov rcx, r12
mov edi, ebp
call fcn.140054170
cmp eax, ebp
jne 0x1400a70ca
mov r13d, 0x4b0
jmp 0x1400a710a
mov dil, byte [rsp + 0x59]
cmp dil, bpl
je 0x1400a7076
mov r12, qword [rsp + 0x1b0]
lea rdx, [rsp + 0x98]
xor r8d, r8d
mov rcx, r12
call fcn.140003940
mov rdx, qword [rsp + 0x98]
mov r9d, r14d
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], rbp
call fcn.140016fb8
lea rcx, [rsp + 0x48]
mov r12, rax
cmp rax, rbp
je 0x1400a7051
mov eax, 3
cmp dil, al
jne 0x1400a7014
mov rdx, qword [r12 + 8]
call fcn.14006be7c
mov dil, 2
mov esi, eax
jmp 0x1400a705e
movsxd rsi, dword [r12 + 0x18]
lea eax, [rsi + 8]
movsxd rdx, eax
call fcn.14005bd08
mov rcx, qword [rsp + 0x48]
xor edx, edx
lea r8d, [rdx + 8]
add rcx, rsi
mov rdi, rsi
call fcn.1400dfee0
mov rdx, qword [r12 + 8]
mov rcx, qword [rsp + 0x48]
mov r8, rsi
call fcn.14001b870
mov dil, 1
jmp 0x1400a705e
mov edx, 8
call fcn.14005bd08
mov dil, bl
xor edx, edx
movsxd rcx, esi
add rcx, qword [rsp + 0x48]
lea r8d, [rdx + 8]
call fcn.1400dfee0
jmp 0x1400a6f5a
mov rdx, qword [rsp + 0x98]
lea rcx, [rsp + 0x48]
cmp dword [rsp + 0xa8], ebp
je 0x1400a70b5
call fcn.140066cbc
mov rcx, qword [rsp + 0x98]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0x48]
mov esi, eax
add esi, esi
lea eax, [rsi + 8]
movsxd rdx, eax
call fcn.14005bd08
jmp 0x1400a70bc
call fcn.14006be7c
mov esi, eax
mov r9d, 2
mov dil, r9b
jmp 0x1400a6f60
lea rdx, [0x1401038ec]
mov r8, r9
mov rcx, r12
call fcn.140054170
cmp eax, ebp
jne 0x1400a70e8
mov r13d, 0x4b1
jmp 0x1400a710a
mov r9d, 3
lea rdx, [0x1401038f0]
mov rcx, r12
mov r8, r9
call fcn.140054170
cmp eax, ebp
jne 0x1400a712b
mov r15d, 0xfde9
mov eax, esi
movsxd rdx, r9d
mov rcx, r12
sub eax, r9d
add rdx, r12
mov edi, r9d
add eax, 4
movsxd r8, eax
call fcn.14001b828
mov r12, qword [rsp + 0x48]
sub esi, edi
cmovs esi, ebp
jmp 0x1400a7137
mov r12, qword [rsp + 0x48]
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x128], r12
call fcn.14005bf04
lea rcx, [rsp + 0x60]
call fcn.14005ba18
cmp dword [rax], r15d
jne 0x1400a7237
lea rcx, [rsp + 0x74]
call fcn.14005ba18
cmp dword [rax], r13d
jne 0x1400a7237
cmp byte [rsp + 0x1c8], bpl
je 0x1400a71a7
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x1b0]
lea rax, [rsp + 0x68]
mov r9d, esi
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], rax
call fcn.14006b348
jmp 0x1400a721b
cmp byte [rsp + 0x1b8], bpl
jne 0x1400a71d0
mov rdx, qword [rsp + 0x48]
lea r9, [rsp + 0x1b0]
mov r8d, esi
xor ecx, ecx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x1400a721b
cmp dword [rsp + 0x70], ebp
jne 0x1400a71f5
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0xa0]
mov r8d, esi
call fcn.1400613a8
mov r8, qword [rsp + 0xa0]
jmp 0x1400a7209
mov r8, qword [rsp + 0x98]
cmp dword [rsp + 0xa8], ebp
jne 0x1400a7209
mov r8, r12
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x1b0]
call fcn.14005b584
lea rcx, [rsp + 0xa0]
call fcn.140054110
lea rcx, [rsp + 0x48]
call fcn.140054110
jmp 0x1400a67cc
cmp r13d, 0x4b1
jne 0x1400a7255
mov rcx, qword [rsp + 0x48]
mov edx, esi
mov r13d, 0x4b0
call fcn.14005967c
and esi, 0xfffffffe
cmp byte [rsp + 0x1b8], bpl
jne 0x1400a72be
mov rcx, qword [rsp + 0x68]
call fcn.140019e00
mov qword [rsp + 0x38], rbp
mov dword [rsp + 0x30], 0x80
lea rcx, [rsp + 0x120]
mov r9d, 7
mov r8d, 0x40000000
mov rdx, rax
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], rbp
call fcn.1400037a8
mov rbx, qword [rsp + 0x120]
cmp rbx, rbp
jne 0x1400a72be
lea rcx, [rsp + 0xa0]
call fcn.140054110
jmp 0x1400a6e35
mov eax, 0x3a8
mov qword [rsp + 0x78], rbp
cmp dword [rsp + 0x60], eax
jne 0x1400a72d7
cmp r15d, 0x3b6
je 0x1400a72ee
cmp r15d, eax
jne 0x1400a73a8
cmp dword [rsp + 0x60], 0x3b6
jne 0x1400a73a8
movzx eax, byte [rsp + 0x64]
lea rcx, [rsp + 0x90]
mov edi, eax
cmp al, bpl
mov eax, 3
cmovne edi, eax
call fcn.14005bc28
cmp dword [rsp + 0x60], 0x3b6
mov rcx, qword [rsp + 0x48]
mov r8d, ebp
lea rdx, [rsp + 0x90]
sete r8b
call fcn.140061480
mov r11, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x90], r11
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov r12, qword [rsp + 0x48]
mov esi, eax
mov eax, 3
cmp dil, al
jne 0x1400a739b
cmp byte [rsp + 0x1b8], bpl
jne 0x1400a739b
cmp esi, ebp
jle 0x1400a7389
lea r9, [rsp + 0x1b0]
mov r8d, esi
mov rdx, r12
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea rcx, [rsp + 0x90]
call fcn.140054110
jmp 0x1400a7658
lea rcx, [rsp + 0x90]
call fcn.140054110
movsxd rdi, esi
shr rdi, 1
cmp r13d, ebp
jne 0x1400a7402
lea edi, [rsi + 0xa]
lea rcx, [rsp + 0xa0]
lea eax, [rdi + 0xa]
movsxd rdx, eax
call fcn.14005c004
mov r12, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x48]
mov r9d, esi
xor edx, edx
mov ecx, r15d
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], r12
call qword [0x14011a8e8]
cmp eax, ebp
mov r9, r12
cmovl eax, ebp
movsxd rdi, eax
lea esi, [rdi + rdi]
mov word [r12 + rdi*2], bp
jmp 0x1400a740a
mov r9, qword [rsp + 0x128]
mov eax, dword [rsp + 0x74]
cmp eax, 0x4b1
jne 0x1400a7423
mov edx, esi
mov rcx, r12
call fcn.14005967c
mov eax, dword [rsp + 0x74]
cmp eax, ebp
jle 0x1400a754a
cmp byte [rsp + 0x1c8], bpl
je 0x1400a749d
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x1b0]
lea rax, [rsp + 0x68]
mov r9d, esi
mov r8, r12
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], rax
call fcn.14006b348
lea rcx, [rsp + 0x78]
call fcn.140054110
lea rcx, [rsp + 0xa0]
call fcn.140054110
lea rcx, [rsp + 0x48]
call fcn.140054110
cmp rbx, rbp
je 0x1400a67cc
cmp rbx, r14
je 0x1400a67cc
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400a67cc
cmp byte [rsp + 0x1b8], bpl
jne 0x1400a74f8
cmp esi, ebp
jle 0x1400a7658
mov rdx, qword [rsp + 0x110]
cmp rdx, rbp
je 0x1400a74d7
mov r8d, dword [rsp + 0x5c]
lea r9, [rsp + 0x1b0]
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rdx, r12
lea r9, [rsp + 0x1b0]
mov r8d, esi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x1400a7658
cmp dword [rsp + 0x70], ebp
jne 0x1400a7550
lea rcx, [rsp + 0x1b8]
call fcn.14005bf04
lea rcx, [rsp + 0x1b8]
mov r8d, edi
mov rdx, r12
call fcn.140061444
mov r8, qword [rsp + 0x1b8]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x1b0]
call fcn.14005b584
lea rcx, [rsp + 0x1b8]
call fcn.140054110
jmp 0x1400a7658
cmp dword [rsp + 0x70], ebp
je 0x1400a7558
mov r8, r9
jmp 0x1400a7646
movsxd rsi, esi
lea rcx, [rsp + 0x78]
shr rsi, 1
lea eax, [rsi + rsi*2]
lea edi, [rax + rax + 0xa]
lea eax, [rdi + 1]
movsxd rdx, eax
call fcn.14005bd08
mov ecx, dword [rsp + 0x60]
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x28], edi
mov rdi, qword [rsp + 0x78]
mov r9d, esi
mov r8, r12
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 + 0x1b8], bpl
jne 0x1400a75ef
cmp esi, ebp
jle 0x1400a7658
mov rdx, qword [rsp + 0x110]
cmp rdx, rbp
je 0x1400a75e7
mov r8d, dword [rsp + 0x5c]
lea r9, [rsp + 0x1b0]
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rdx, rdi
jmp 0x1400a74da
cmp byte [rsp + 0x1c8], bpl
je 0x1400a762b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x1b0]
movsxd r9, eax
lea rax, [rsp + 0x68]
mov r8, rdi
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], rax
call fcn.14006b348
jmp 0x1400a7658
lea rcx, [rsp + 0xa0]
mov r8d, esi
mov rdx, rdi
call fcn.1400613a8
mov r8, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x1b0]
call fcn.14005b584
cmp rbx, rbp
je 0x1400a7666
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
lea rcx, [rsp + 0x78]
call fcn.140054110
lea rcx, [rsp + 0xa0]
call fcn.140054110
lea rcx, [rsp + 0x48]
call fcn.140054110
cmp rbx, rbp
je 0x1400a769a
cmp rbx, r14
je 0x1400a769a
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x68]
call fcn.140054110
lea rcx, [rsp + 0x108]
call fcn.140054110
lea rcx, [rsp + 0x98]
call fcn.140054110
lea rcx, [rsp + 0x88]
call fcn.140054110
lea rcx, [rsp + 0x150]
call fcn.140054110
xor eax, eax
jmp 0x1400a771d
lea rcx, [rsp + 0x68]
call fcn.140054110
lea rcx, [rsp + 0x108]
call fcn.140054110
lea rcx, [rsp + 0x98]
call fcn.140054110
lea rcx, [rsp + 0x88]
call fcn.140054110
lea rcx, [rsp + 0x150]
call fcn.140054110
mov rax, r13
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret