Function at 0x14007fc30
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd0
xor esi, esi
mov r11, rdx
mov edi, 0x4b0
lea r15d, [rsi + 9]
mov bl, sil
mov ebp, 0xffff0000
mov r14b, sil
mov byte [rsp + 0x40], sil
lea edx, [rsi + 0x20]
mov byte [rsp + 0x128], bl
mov qword [rsp + 0x58], rbp
lea ecx, [rsi + 0xd]
lea r13d, [rdi + 1]
lea r12d, [rsi + 4]
cmp r15w, word [r11]
ja 0x14007fc95
cmp word [r11], cx
jbe 0x14007fc9b
cmp dx, word [r11]
jne 0x14007fca7
mov ebp, esi
mov qword [rsp + 0x58], rbp
jmp 0x14007fe15
lea rcx, str._UNI
mov r8d, r12d
mov rdx, r11
call fcn.14004fda0
cmp al, sil
je 0x14007fcca
mov ebp, edi
mov qword [rsp + 0x58], rbp
jmp 0x14007fdef
lea rcx, str._UNICODE
mov r8d, 8
mov rdx, r11
call fcn.14004fda0
cmp al, sil
jne 0x14007fcbe
mov edi, 5
lea rcx, str._UNIB
mov rdx, r11
mov r8d, edi
call fcn.14004fda0
cmp al, sil
je 0x14007fd05
mov ebp, r13d
jmp 0x14007fcc0
lea rcx, str._UNICODEB
mov r8d, r15d
mov rdx, r11
call fcn.14004fda0
cmp al, sil
jne 0x14007fd00
lea rcx, str._ANSI
mov r8d, edi
mov rdx, r11
call fcn.14004fda0
cmp al, sil
je 0x14007fd37
mov ebp, esi
jmp 0x14007fcc0
lea rcx, str._GBK
mov r8d, r12d
mov rdx, r11
call fcn.14004fda0
cmp al, sil
je 0x14007fd58
mov ebp, 0x3a8
jmp 0x14007fcc0
lea rcx, str._BIG5
mov r8d, edi
mov rdx, r11
call fcn.14004fda0
cmp al, sil
je 0x14007fd79
mov ebp, 0x3b6
jmp 0x14007fcc0
lea rcx, str._UTF8
mov r8d, edi
mov rdx, r11
call fcn.14004fda0
cmp al, sil
je 0x14007fd9a
mov ebp, 0xfde9
jmp 0x14007fcc0
lea rcx, str._UTF7
mov r8d, edi
mov rdx, r11
call fcn.14004fda0
cmp al, sil
je 0x14007fdbb
mov ebp, 0xfde8
jmp 0x14007fcc0
mov eax, 0x2d
cmp ax, word [r11]
jne 0x14007fdef
lea rcx, [r11 + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r15w
ja 0x14007fdef
mov r11, rcx
mov qword [rsp + 0x118], rcx
call fcn.1400571fc
mov rbp, rax
mov qword [rsp + 0x58], rax
mov edx, 0x20
lea ecx, [rdx - 0x13]
jmp 0x14007fe15
cmp r15w, ax
ja 0x14007fe04
cmp ax, cx
jbe 0x14007fe1e
cmp dx, ax
je 0x14007fe1e
add r11, 2
mov qword [rsp + 0x118], r11
movzx eax, word [r11]
cmp ax, si
jne 0x14007fdf9
lea rcx, [rsp + 0x118]
call fcn.14004ea3c
lea rdx, [rsp + 0x118]
lea rcx, [0x1400f4494]
mov r8d, r12d
call fcn.140058710
lea rdx, [0x1400e94a4]
lea rcx, [rsp + 0x90]
neg al
sbb r15b, r15b
and r15b, 2
call fcn.14006016c
lea rdx, str.READLINE
lea rcx, [rsp + 0x60]
call fcn.14006016c
mov rdi, qword [rsp + 0x110]
mov r12d, 1
lea r9d, [r12 + 0x2b]
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x118]
mov rcx, rdi
mov r13, r12
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], rsi
mov word [rsp + 0x20], si
call fcn.140048704
mov r9, qword [rsp + 0x90]
lea rcx, [0x1400f447c]
mov qword [rsp + 0x118], rax
mov rdx, r9
call fcn.14004fe38
cmp al, sil
je 0x14007ffbd
mov qword [rsp + 0x88], r12
mov bl, r12b
mov byte [rsp + 0x128], bl
lea rcx, [rsp + 0xb8]
mov qword [rsp + 0x98], rsi
call fcn.140055fcc
mov rdx, qword [rsp + 0x118]
lea r8, [rsp + 0xb8]
xor r9d, r9d
mov rcx, rdi
mov byte [rsp + 0x20], r12b
call fcn.140068750
mov r11, qword [rsp + 0xb8]
mov eax, 0x2c
mov qword [rsp + 0x118], r11
cmp word [r11], ax
jne 0x1400800d9
lea rcx, [rsp + 0x48]
call fcn.140055fcc
add qword [rsp + 0x118], 2
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x118]
mov r8d, 0x2c
call fcn.140059810
mov r11, qword [rsp + 0x48]
lea rcx, [0x1400f4478]
mov rdx, r11
mov qword [rsp + 0x78], r11
call fcn.14004fe38
cmp al, sil
je 0x14007fffe
lea rdi, [0x1400f4474]
mov r14b, 2
mov qword [rsp + 0x98], rdi
mov rdi, qword [rsp + 0x110]
mov byte [rsp + 0x40], r14b
jmp 0x14008009b
cmp word [r9], si
je 0x14007fef2
lea rcx, [0x1400ea6f0]
mov rdx, r9
call fcn.14004fe38
cmp al, sil
jne 0x14007fef2
lea rcx, [0x1400e9ebc]
mov rdx, r9
call fcn.14004fe38
cmp al, sil
je 0x14007fefc
mov bl, 2
jmp 0x14007fef5
lea rcx, [0x1400f4470]
mov rdx, r11
call fcn.14004fe38
cmp al, sil
je 0x14008001c
mov r14b, 3
mov byte [rsp + 0x40], r14b
jmp 0x14008009b
lea rcx, [0x1400ef8e4]
mov rdx, r11
call fcn.14004fe38
cmp al, sil
je 0x140080049
lea rax, [0x1400f446c]
mov r14b, r12b
mov byte [rsp + 0x40], r12b
mov qword [rsp + 0x98], rax
jmp 0x14008009b
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x78]
call fcn.140063ef4
mov rax, qword [rsp + 0x78]
mov r11d, 0x2b
cmp r11w, word [rax]
jne 0x140080091
add rax, 2
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x78], rax
call fcn.140063ef4
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x50], rax
mov r13, qword [rsp + 0x70]
mov qword [rsp + 0x68], r13
lea rcx, [rsp + 0x48]
call fcn.14004ea6c
mov r11, qword [rsp + 0x118]
mov eax, 0x2c
cmp word [r11], ax
jne 0x1400800d9
add r11, 2
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x118]
mov r8d, eax
mov qword [rsp + 0x118], r11
call fcn.140059810
lea rdx, [rsp + 0x60]
xor r8d, r8d
mov rcx, rdi
call fcn.140003728
lea rcx, [rsp + 0x48]
mov edx, 8
call fcn.140055ddc
cmp ebp, esi
mov rdi, qword [rsp + 0x48]
mov word [rdi], si
jl 0x140080d2b
lea rcx, [rsp + 0xa0]
call fcn.140055d78
mov rax, qword [rsp + 0x90]
mov ecx, 0x75
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0xb0], rsi
cmp cx, word [rax]
jne 0x140080367
mov ecx, 0x64
cmp cx, word [rax + 2]
jne 0x140080367
lea edx, [rcx - 0x2a]
cmp dx, word [rax + 4]
jne 0x140080367
add rax, 6
lea r9d, [rcx - 0x42]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x118]
mov word [rax], si
mov r10, qword [rsp + 0x128]
cmp r9w, word [r10]
jne 0x14008018c
add r10, 2
mov qword [rsp + 0x128], r10
lea rcx, [rsp + 0x128]
call fcn.140044d9c
mov rcx, qword [rsp + 0x128]
cmp rcx, r10
je 0x1400801b9
cmp word [rcx - 2], r9w
jne 0x1400801b9
mov word [rcx - 2], si
mov rcx, qword [rsp + 0x128]
cmp dx, word [rcx]
jne 0x1400801d5
mov word [rcx], si
mov rcx, qword [rsp + 0x128]
add rcx, 2
mov qword [rsp + 0x128], rcx
mov r8, rcx
cmp r9w, word [rcx]
jne 0x140080204
lea r8, [rcx + 2]
add rcx, 2
mov qword [rsp + 0x128], rcx
cmp r9w, word [rcx]
jne 0x1400801ff
mov word [rcx], si
mov rcx, qword [rsp + 0x128]
cmp word [rcx], si
jne 0x1400801e2
lea rdx, [rsp + 0xa0]
mov r9d, 0x10000
mov rcx, r10
mov qword [rsp + 0x20], rsi
call fcn.140049538
mov rdx, qword [rsp + 0xa8]
cmp edx, esi
mov r11, qword [rsp + 0xa0]
jle 0x140080249
mov rax, qword [rsp + 0xb0]
lea r8, [r11 + rax]
mov qword [rsp + 0x118], r8
jmp 0x140080251
mov r8, qword [rsp + 0x118]
movsx r9d, byte [r8]
mov rcx, rsi
cmp r9d, 0xff
jne 0x140080274
movsx eax, byte [r8 + 1]
cmp eax, 0xfe
jne 0x140080274
mov ebp, 0x4b0
jmp 0x14008028e
cmp r9d, 0xfe
jne 0x140080295
movsx eax, byte [r8 + 1]
cmp eax, 0xff
jne 0x140080295
mov ebp, 0x4b1
mov ecx, 2
jmp 0x1400802c0
cmp r9d, 0xef
jne 0x1400802c0
movsx eax, byte [r8 + 1]
cmp eax, 0xbb
jne 0x1400802c0
movsx eax, byte [r8 + 2]
cmp eax, 0xbf
jne 0x1400802c0
mov ebp, 0xfde9
mov ecx, 3
sub edx, ecx
lea rdi, [rcx + r8]
cmp ebp, 0x4b1
jne 0x1400802f6
movsxd rdx, edx
and rdx, 0xfffffffffffffffe
add rdx, rdi
cmp rdi, rdx
ja 0x1400803eb
mov cl, byte [rdi]
mov al, byte [rdi + 1]
mov byte [rdi], al
mov byte [rdi + 1], cl
add rdi, 2
cmp rdi, rdx
jbe 0x1400802e1
jmp 0x14008035a
cmp ebp, 0x4b0
je 0x1400803eb
movsxd rbx, edx
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x98], r11
lea rdx, [rbx + rbx + 0x20]
mov qword [rsp + 0xa0], rsi
call fcn.140055e58
lea rcx, [rsp + 0xa0]
movsxd r9, ebp
mov r8, rbx
mov rdx, rdi
call fcn.140056188
mov r11, qword [rsp + 0xa0]
lea rcx, [rsp + 0x98]
mov qword [rsp + 0x118], r11
call fcn.14004ea6c
mov r8, qword [rsp + 0x118]
jmp 0x1400803eb
mov rax, qword [rsp + 0x60]
cmp word [rax], si
jne 0x1400803b3
lea rcx, [rsp + 0xa0]
call fcn.14004ea6c
lea rcx, [rsp + 0x48]
call fcn.14004ea6c
lea rcx, [rsp + 0xb8]
call fcn.14004ea6c
lea rcx, [rsp + 0x60]
call fcn.14004ea6c
lea rcx, [rsp + 0x90]
call fcn.14004ea6c
xor eax, eax
jmp 0x140080d74
mov r8, qword [rsp + 0x118]
cmp bl, r12b
jne 0x1400803d6
mov eax, 0x2c
cmp word [r8], ax
je 0x1400803d6
mov r12d, 0x80070057
jmp 0x140080d1e
add r8, 2
mov qword [rsp + 0x118], r8
test r12b, bl
je 0x14008078f
mov qword [rsp + 0x68], rsi
cmp qword [rsp + 0x88], rsi
je 0x1400804a9
lea rcx, [rsp + 0x118]
call fcn.14004ea3c
mov r8, qword [rsp + 0x118]
mov edi, 0xd
movzx eax, word [r8]
mov rdx, r8
lea ebp, [rdi + 0x13]
cmp ax, si
je 0x140080462
lea ecx, [rdi - 4]
cmp cx, ax
ja 0x140080434
cmp ax, di
jbe 0x140080450
cmp bp, ax
je 0x140080450
add r8, 2
mov qword [rsp + 0x118], r8
mov ax, word [r8]
cmp ax, si
je 0x140080462
jmp 0x14008042a
cmp word [r8], si
je 0x140080462
mov word [r8], si
mov r8, qword [rsp + 0x118]
mov r15, qword [rsp + 0x110]
cmp word [rdx], si
je 0x1400804b9
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, r15
call fcn.14001aea0
cmp rax, rsi
je 0x14008049f
mov rdx, qword [rax]
lea rcx, [rsp + 0x68]
call fcn.140060284
mov r8, qword [rsp + 0x68]
mov qword [rsp + 0x118], r8
jmp 0x1400804b9
mov r8, qword [rsp + 0x118]
jmp 0x1400804b9
mov r15, qword [rsp + 0x110]
mov edi, 0xd
lea ebp, [rdi + 0x13]
mov r9, r8
cmp r14b, 3
jne 0x1400804d4
mov rdx, qword [rsp + 0x60]
mov rcx, r15
call fcn.140055710
jmp 0x140080780
cmp r14b, sil
je 0x1400805c1
lea rax, [0x1400ed1e0]
lea rdi, [0x1400e9a5c]
lea rcx, [rsp + 0x128]
cmp r14b, r12b
cmove rdi, rax
call fcn.140055fcc
mov r11, qword [rsp + 0x118]
movzx eax, word [r11]
mov rbp, r11
cmp ax, si
je 0x14008058d
mov ebx, 0xa
lea ecx, [rbx + 3]
cmp ax, cx
jne 0x140080536
cmp word [r11 + 2], bx
jne 0x14008053b
mov word [r11], si
add qword [rsp + 0x118], 2
jmp 0x14008053f
cmp ax, bx
jne 0x140080578
mov word [r11], si
cmp r14b, sil
jne 0x140080554
lea rcx, [rsp + 0x128]
mov rdx, rdi
call fcn.140056108
lea rcx, [rsp + 0x128]
mov rdx, rbp
mov r14b, sil
call fcn.140056108
mov r11, qword [rsp + 0x118]
mov ecx, 0xd
lea rbp, [r11 + 2]
add r11, 2
mov qword [rsp + 0x118], r11
mov ax, word [r11]
cmp ax, si
jne 0x14008051b
cmp word [rbp], si
je 0x14008075e
cmp r14b, sil
jne 0x1400805ac
lea rcx, [rsp + 0x128]
mov rdx, rdi
call fcn.140056108
lea rcx, [rsp + 0x128]
mov rdx, rbp
call fcn.140056108
jmp 0x14008075e
cmp r13, rsi
jge 0x140080630
movzx eax, word [r8]
mov rdi, rsi
cmp ax, si
je 0x140080603
mov ebx, 0xa
cmp ax, bx
jne 0x1400805df
add rdi, r12
add r8, 2
mov qword [rsp + 0x118], r8
mov ax, word [r8]
cmp ax, si
jne 0x1400805d7
cmp r8, r9
jbe 0x140080603
cmp word [r8 - 2], bx
je 0x140080603
add rdi, r12
lea rcx, [rsp + 0x128]
mov rdx, rbp
call fcn.140056040
mov rcx, qword [rsp + 0x128]
lea rdx, [0x1400e9b70]
mov r8, rdi
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x14008075e
mov ebx, 0xa
jne 0x1400806c9
movzx eax, word [r8]
mov rcx, r8
mov rdx, r8
cmp ax, si
je 0x140080697
cmp ax, bx
jne 0x140080655
mov rdx, rcx
mov rcx, r8
add r8, 2
mov qword [rsp + 0x118], r8
mov ax, word [r8]
cmp ax, si
jne 0x14008064a
cmp r8, r9
jbe 0x140080687
cmp word [r8 - 2], bx
je 0x140080687
cmp word [rcx], bx
jne 0x14008067f
add rcx, 2
mov r8, rcx
jmp 0x1400804c2
cmp rcx, r9
jbe 0x140080697
lea rax, [rcx - 2]
cmp word [rax], di
cmove rcx, rax
cmp word [rdx], bx
jne 0x1400806a0
add rdx, 2
sub rcx, rdx
sar rcx, 1
mov r8, rcx
jmp 0x140080751
cmp word [r8], si
je 0x1400806ce
cmp word [r8], bx
jne 0x1400806bd
sub r13, r12
add r8, 2
mov qword [rsp + 0x118], r8
cmp r13, r12
jg 0x1400806ae
movzx eax, word [r8]
mov r9, qword [rsp + 0x50]
mov rdx, r8
mov rcx, r9
cmp ax, si
je 0x14008074b
mov r10d, 0xd
cmp rcx, rsi
je 0x14008070f
sub r9, r12
js 0x14008074b
jmp 0x14008070f
cmp ax, r10w
je 0x140080714
cmp ax, bx
je 0x140080714
add r8, 2
mov qword [rsp + 0x118], r8
mov ax, word [r8]
cmp ax, si
jne 0x1400806f4
cmp rcx, rsi
je 0x14008071e
cmp r9, rsi
je 0x14008074b
cmp r10w, word [r8]
jne 0x140080730
add r8, 2
mov qword [rsp + 0x118], r8
cmp bx, word [r8]
jne 0x140080742
add r8, 2
mov qword [rsp + 0x118], r8
mov ax, word [r8]
cmp ax, si
jne 0x1400806e8
sub r8, rdx
sar r8, 1
lea rcx, [rsp + 0x128]
call fcn.140060190
mov r8, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x60]
mov rcx, r15
call fcn.140055710
lea rcx, [rsp + 0x128]
call fcn.14004ea6c
lea rcx, [rsp + 0x68]
call fcn.14004ea6c
jmp 0x140080371
lea rcx, [rsp + 0x78]
mov edx, 8
call fcn.140055ddc
xor eax, eax
mov word [rdi], si
mov qword [rsp + 0xc8], rax
mov rax, qword [0x1401042e0]
lea r14, [rsp + 0xc0]
mov qword [rsp + 0xc0], rax
mov al, byte [rsp + 0x128]
lea rcx, [rsp + 0x70]
cmp al, 2
mov rbx, rsi
cmovne r14, rcx
mov qword [rsp + 0x70], rbx
cmp al, 2
je 0x14008090f
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], esi
lea rcx, [rsp + 0x70]
mov r9d, 7
mov r8d, 0x80000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rsi
call fcn.140003590
cmp qword [r14], rsi
jne 0x140080843
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsp + 0x70]
mov r12d, eax
cmp rcx, rsi
je 0x140080d14
cmp rcx, 0xffffffffffffffff
je 0x140080d14
jmp 0x140080d0e
mov rcx, qword [r14]
xor eax, eax
lea r9, [rsp + 0x88]
lea rdx, [rsp + 0x80]
lea r8d, [rax + 3]
mov byte [rsp + 0x80], sil
mov byte [rsp + 0x81], sil
mov byte [rsp + 0x82], sil
mov word [rsp + 0x83], ax
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r11b, byte [rsp + 0x80]
cmp r11b, 0xff
jne 0x1400808b3
cmp byte [rsp + 0x81], 0xfe
jne 0x1400808f3
mov ebp, 0x4b0
mov ebx, 2
jmp 0x1400808ee
cmp r11b, 0xfe
jne 0x1400808ca
cmp byte [rsp + 0x81], 0xff
jne 0x1400808f3
mov ebp, 0x4b1
jmp 0x1400808ac
cmp r11b, 0xef
jne 0x1400808f3
cmp byte [rsp + 0x81], 0xbb
jne 0x1400808f3
cmp byte [rsp + 0x82], 0xbf
jne 0x1400808f3
mov ebp, 0xfde9
mov ebx, 3
mov qword [rsp + 0x58], rbp
mov rcx, qword [r14]
xor r8d, r8d
mov rdx, rbx
call fcn.14004fd5c
cmp rax, rsi
jl 0x14008081d
mov rbx, qword [rsp + 0x70]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov al, byte [rsp + 0x40]
cmp al, 3
jne 0x140080a2f
mov r14, qword [r14]
mov bpl, byte [rsp + 0x128]
mov qword [rsp + 0x50], rsi
mov r13d, esi
mov r15, rsi
mov ebx, 0x186a0
lea edx, [r13 + 0x40001]
lea rcx, [rsp + 0x50]
call fcn.140055e58
mov rdi, qword [rsp + 0x50]
lea r9, [rsp + 0x128]
lea rdx, [rdi + r15]
mov r15d, 0x40000
mov rcx, r14
mov r8d, r15d
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, qword [rsp + 0x128]
cmp rcx, r15
cmovg rcx, r15
mov qword [rsp + 0x128], rcx
cmp rcx, rsi
jne 0x1400809bd
cmp eax, esi
jne 0x1400809cc
cmp bpl, 2
jne 0x1400809b8
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x1400809cc
mov rcx, qword [rsp + 0x128]
sub rbx, r12
js 0x1400809cc
add r13d, ecx
movsxd r15, r13d
mov byte [rdi + r15], sil
jmp 0x14008093e
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x50]
call fcn.14005d834
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x110]
mov r8, rax
call fcn.140055710
lea rcx, [rsp + 0x50]
call fcn.14004ea6c
mov rbx, qword [rsp + 0x70]
cmp rbx, rsi
je 0x140080a13
cmp rbx, 0xffffffffffffffff
je 0x140080a13
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x78]
call fcn.14004ea6c
lea rcx, [rsp + 0xa0]
call fcn.14004ea6c
jmp 0x140080d43
cmp al, sil
je 0x140080afe
mov rax, qword [rsp + 0x98]
lea rdx, [0x1400e9d50]
lea rcx, [rsp + 0x88]
cmp rax, rsi
cmovne rdx, rax
or r8, 0xffffffffffffffff
call fcn.1400601ac
or r15b, r12b
lea rcx, [rsp + 0x50]
call fcn.140055fcc
cmp byte [rsp + 0x40], sil
jne 0x140080a85
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x48]
call fcn.140056108
lea rdx, [rsp + 0x50]
mov r9b, r15b
mov r8d, ebp
mov rcx, r14
mov byte [rsp + 0x40], sil
call fcn.14005d404
cmp byte [rsp + 0x128], 2
mov edi, eax
jne 0x140080ab4
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x140080add
lea rcx, [rsp + 0x50]
mov edx, ebp
call fcn.14005d834
lea rcx, [rsp + 0x48]
mov rdx, rax
call fcn.140056108
lea rcx, [rsp + 0x50]
call fcn.14004ea6c
cmp edi, esi
je 0x140080ae7
jmp 0x140080a62
lea rcx, [rsp + 0x50]
call fcn.14004ea6c
lea rcx, [rsp + 0x88]
mov ebp, 0x4b0
call fcn.14004ea6c
jmp 0x140080cee
cmp r13, rsi
jge 0x140080b6b
mov bl, byte [rsp + 0x128]
mov rdi, rsi
lea rdx, [rsp + 0x48]
mov r9b, r15b
mov r8d, ebp
mov rcx, r14
call fcn.14005d404
mov r13d, eax
cmp bl, 2
jne 0x140080b33
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x140080b3d
cmp r13d, esi
je 0x140080b3d
add rdi, r12
jmp 0x140080b0d
lea rcx, [rsp + 0x48]
mov edx, 0x20
mov ebp, 0x4b0
call fcn.140055e58
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1400e9b70]
mov r8, rdi
call qword [sym.imp.USER32.dll_wsprintfW]
jmp 0x140080ce9
jne 0x140080bbb
or r15b, r12b
mov rax, rdi
mov rdi, qword [rsp + 0x78]
lea rdx, [rsp + 0x78]
mov r9b, r15b
mov r8d, ebp
mov rcx, r14
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x78], rax
call fcn.14005d404
cmp byte [rsp + 0x128], 2
mov r12d, eax
jne 0x140080bb1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x140080cee
cmp r12d, esi
jne 0x140080b70
jmp 0x140080cee
cmp r12, qword [rsp + 0x68]
mov r13, r12
jge 0x140080c0a
mov rbx, qword [rsp + 0x68]
lea rdx, [rsp + 0x48]
mov r9b, r15b
mov r8d, ebp
mov rcx, r14
call fcn.14005d404
cmp byte [rsp + 0x128], 2
mov edi, eax
jne 0x140080bf4
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x140080c00
cmp edi, esi
je 0x140080c00
add r13, r12
cmp r13, rbx
jl 0x140080bca
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x70]
mov byte [rdi], sil
cmp qword [rsp + 0x50], r12
jne 0x140080c2f
or r15b, r12b
lea rdx, [rsp + 0x48]
mov r8d, ebp
mov r9b, r15b
mov rcx, r14
call fcn.14005d404
jmp 0x140080cee
lea rcx, [rsp + 0x68]
call fcn.140055fcc
mov rax, qword [rsp + 0x50]
mov bl, byte [rsp + 0x128]
movsxd r13, eax
lea rdi, [0x1400e9a5c]
cmp r13, rsi
je 0x140080c5e
sub rax, r12
mov qword [rsp + 0x50], rax
js 0x140080cda
mov rax, qword [rsp + 0x68]
mov r9b, r15b
lea rdx, [rsp + 0x68]
or r9b, r12b
mov r8d, ebp
mov rcx, r14
mov word [rax], si
call fcn.14005d404
mov dword [rsp + 0x128], eax
cmp bl, 2
jne 0x140080c9a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x140080cda
mov eax, dword [rsp + 0x128]
cmp eax, esi
je 0x140080cda
lea rcx, [rsp + 0x68]
mov edx, ebp
call fcn.14005d834
lea rcx, [rsp + 0x48]
mov rdx, rax
call fcn.140056108
cmp r13, rsi
je 0x140080cc3
cmp qword [rsp + 0x50], rsi
jle 0x140080cda
lea rcx, [rsp + 0x48]
mov rdx, rdi
call fcn.140056108
mov rax, qword [rsp + 0x50]
jmp 0x140080c4f
lea rcx, [rsp + 0x68]
mov ebp, 0x4b0
call fcn.14004ea6c
mov rbx, qword [rsp + 0x70]
lea rcx, [rsp + 0x48]
mov edx, ebp
call fcn.14005d834
mov r12d, esi
mov rdi, rax
cmp rbx, rsi
je 0x140080d14
cmp rbx, 0xffffffffffffffff
je 0x140080d14
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x78]
call fcn.14004ea6c
lea rcx, [rsp + 0xa0]
call fcn.14004ea6c
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x110]
mov r8, rdi
call fcn.140055710
movsxd rsi, r12d
lea rcx, [rsp + 0x48]
call fcn.14004ea6c
lea rcx, [rsp + 0xb8]
call fcn.14004ea6c
lea rcx, [rsp + 0x60]
call fcn.14004ea6c
lea rcx, [rsp + 0x90]
call fcn.14004ea6c
mov rax, rsi
mov rbx, qword [rsp + 0x120]
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret