Function at 0x1400014f0
Capabilities:
Terminate process
Write file on windows

Disassembly:
push rbp
push rsi
lea rbp, [rsp - 0x4f]
sub rsp, 0xf8
mov rax, qword [0x140005018]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov r9, qword [sym.imp.gif_7.dll_GifNoisyPrint]
lea rax, [rbp - 9]
mov r8, qword [str.giftext_v___c___e___z___p___r___h___GifFile_s]
mov esi, 1
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x11]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x47]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x49]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x44]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x45]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x46]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x29], esi
mov byte [rbp - 0x48], 0
mov byte [rbp - 0x46], 0
mov byte [rbp - 0x45], 0
mov byte [rbp - 0x44], 0
mov byte [rbp - 0x47], 0
mov byte [rbp - 0x49], 0
mov qword [rbp - 9], 0
call sub.gif_7.dll_GAGetArgs
test al, al
jne 0x140001e9b
mov eax, dword [rbp - 0x11]
cmp eax, esi
jle 0x1400015d0
cmp byte [rbp - 0x47], 0
jne 0x1400015d6
lea ecx, [rsi + 1]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea r9, str.Error_in_command_line_parsing___one_GIF_file_please.
lea r8, str.giftext
lea rdx, str._n_s:__s_n
call fcn.1400014a0
jmp 0x140001ea3
cmp byte [rbp - 0x47], 0
je 0x14000160f
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, qword [section..data]
mov r9d, 2
mov rcx, rax
lea r8d, [r9 + 3]
call fcn.1400014a0
mov rcx, qword [str.giftext_v___c___e___z___p___r___h___GifFile_s]
call sub.gif_7.dll_GAPrintHowTo
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov qword [rsp + 0x120], rbx
lea rdx, [rbp - 0x41]
mov qword [rsp + 0xf0], rdi
cmp eax, esi
jne 0x14000164f
mov rax, qword [rbp - 9]
mov rdi, qword [rax]
mov rcx, rdi
call sub.gif_7.dll_DGifOpenFileName
mov rbx, rax
test rax, rax
jne 0x140001676
mov ecx, dword [rbp - 0x41]
call sub.gif_7.dll_PrintGifError
mov ecx, esi
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor ecx, ecx
lea rdi, str.Stdin
call sub.gif_7.dll_DGifOpenFileHandle
mov rbx, rax
test rax, rax
jne 0x140001676
mov ecx, dword [rbp - 0x41]
call sub.gif_7.dll_PrintGifError
mov ecx, esi
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
cmp byte [rbp - 0x49], 0
mov qword [rsp + 0xe8], r12
lea r12, [0x14000347c]
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xd0], r15
je 0x1400016c5
mov edx, 0x8000
mov byte [rbp - 0x44], 0
mov ecx, esi
mov byte [rbp - 0x45], 0
mov byte [rbp - 0x46], 0
mov byte [rbp - 0x48], 0
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__setmode]
jmp 0x1400017f0
mov r9d, dword [rbx + 4]
lea rcx, str._n_s:_n_n_tScreen_Size___Width___d__Height___d._n
mov r8d, dword [rbx]
mov rdx, rdi
call fcn.140001ec0
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x1400016ea
mov r8d, dword [rax + 4]
jmp 0x1400016ed
xor r8d, r8d
movzx eax, byte [rbx + 0x10]
lea rcx, str._tColorResolution___d__BitsPerPixel___d__BackGround___d__Aspect___d._n
mov r9d, dword [rbx + 0xc]
mov edx, dword [rbx + 8]
mov dword [rsp + 0x20], eax
call fcn.140001ec0
cmp qword [rbx + 0x18], 0
lea rax, str._tNo_Global_Color_Map._n_n
lea rcx, str._tHas_Global_Color_Map._n_n
cmove rcx, rax
call fcn.140001ec0
cmp byte [rbp - 0x48], 0
je 0x1400017f0
cmp qword [rbx + 0x18], 0
je 0x1400017f0
lea rcx, str._tGlobal_Color_Map:_n
call fcn.140001ec0
mov rax, qword [rbx + 0x18]
lea rdx, [0x140003480]
lea rcx, str._tSort_Flag:__s_n
cmp byte [rax + 8], 0
movsxd rdi, dword [rax]
cmovne rdx, r12
call fcn.140001ec0
xor eax, eax
mov r15, rdi
mov dword [rbp - 0x3d], eax
test edi, edi
jle 0x1400017f0
lea r13, [rdi - 1]
xor r12d, r12d
shr r13, 2
inc r13
xor edi, edi
mov esi, eax
mov r14, r12
cmp rdi, r15
jge 0x1400017c7
mov rax, qword [rbx + 0x18]
mov edx, esi
mov rcx, qword [rax + 0x10]
movzx eax, byte [rcx + r14 + 2]
movzx r9d, byte [rcx + r14 + 1]
movzx r8d, byte [rcx + r14]
lea rcx, str._3d:__02xh__02xh__02xh
mov dword [rsp + 0x20], eax
call fcn.140001ec0
inc esi
inc rdi
add r14, 3
cmp rdi, 4
jl 0x140001788
lea rcx, [0x1400034b4]
call fcn.140001ec0
mov eax, dword [rbp - 0x3d]
add r12, 0xc
add eax, 4
mov dword [rbp - 0x3d], eax
sub r13, 1
jne 0x140001781
mov esi, dword [rbp - 0x29]
lea r12, [0x14000347c]
lea r14, [0x1400036a0]
lea r15, str.Interlaced
lea rdx, [rbp - 0x21]
mov rcx, rbx
lea rdi, str._tNo_Image_Color_Map._n
call sub.gif_7.dll_DGifGetRecordType
test eax, eax
je 0x140001e87
mov ecx, dword [rbp - 0x21]
sub ecx, 2
je 0x14000198a
cmp ecx, 1
jne 0x140001ceb
lea r8, [rbp - 0x19]
mov rcx, rbx
lea rdx, [rbp - 0x39]
call sub.gif_7.dll_DGifGetExtension
test eax, eax
je 0x140001d55
cmp byte [rbp - 0x49], 0
jne 0x140001960
mov ecx, 0xa
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_putchar]
mov ecx, dword [rbp - 0x39]
sub ecx, 1
je 0x140001899
sub ecx, 0xf8
je 0x140001890
sub ecx, 5
je 0x140001887
cmp ecx, 1
je 0x14000187e
lea rcx, str.Extension_record_of_unknown_type
jmp 0x1400018a0
lea rcx, str.GIF89_application_block
jmp 0x1400018a0
lea rcx, str.GIF89_comment
jmp 0x1400018a0
lea rcx, str.GIF89_graphics_control
jmp 0x1400018a0
lea rcx, str.GIF89_plaintext
call fcn.140001ec0
mov ecx, dword [rbp - 0x39]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isprint]
mov edx, dword [rbp - 0x39]
lea rcx, str.__Ext_Code___d___c__:_n
test eax, eax
mov r8d, 0x20
cmovne r8d, edx
call fcn.140001ec0
mov rcx, qword [rbp - 0x19]
mov dl, 1
call fcn.140001150
cmp dword [rbp - 0x39], 0xf9
jne 0x140001960
mov rax, qword [rbp - 0x19]
test rax, rax
je 0x140001d18
movzx ecx, byte [rax]
lea rdx, [rax + 1]
lea r8, [rbp + 7]
call sub.gif_7.dll_DGifExtensionToGCB
test eax, eax
je 0x140001d04
mov edx, dword [rbp + 7]
lea rcx, str._tDisposal_Mode:__d_n
call fcn.140001ec0
movzx edx, byte [rbp + 0xb]
lea rcx, str._tUser_Input_Flag:__d_n
call fcn.140001ec0
cmp dword [rbp + 0x13], 0xffffffff
lea rdx, [0x1400036a4]
lea rcx, str._tTransparency_on:__s_n
cmovne rdx, r14
call fcn.140001ec0
mov edx, dword [rbp + 0xf]
lea rcx, str._tDelayTime:__d_n
call fcn.140001ec0
mov edx, dword [rbp + 0x13]
lea rcx, str._tTransparent_Index:__d_n
call fcn.140001ec0
nop
lea rdx, [rbp - 0x19]
mov rcx, rbx
call sub.gif_7.dll_DGifGetExtensionNext
test eax, eax
je 0x140001d41
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x140001ceb
xor edx, edx
call fcn.140001150
jmp 0x140001960
mov rcx, rbx
call sub.gif_7.dll_DGifGetImageDesc
test eax, eax
je 0x140001e73
cmp byte [rbp - 0x49], 0
jne 0x140001af8
mov eax, dword [rbx + 0x34]
lea rcx, str._nImage__d:_n_n_tImage_Size___Left___d__Top___d__Width___d__Height___d._n
mov r9d, dword [rbx + 0x2c]
mov edx, esi
mov r8d, dword [rbx + 0x28]
mov dword [rsp + 0x28], eax
mov eax, dword [rbx + 0x30]
mov dword [rsp + 0x20], eax
call fcn.140001ec0
inc esi
lea rdx, str.Non_Interlaced
cmp byte [rbx + 0x38], 0
lea rcx, str._tImage_is__s
mov dword [rbp - 0x29], esi
cmovne rdx, r15
call fcn.140001ec0
mov rax, qword [rbx + 0x40]
test rax, rax
je 0x140001a02
mov edx, dword [rax + 4]
lea rcx, str.__BitsPerPixel___d._n
call fcn.140001ec0
jmp 0x140001a0e
lea rcx, [0x140003558]
call fcn.140001ec0
cmp qword [rbx + 0x40], 0
lea rcx, str._tImage_Has_Color_Map._n
cmove rcx, rdi
call fcn.140001ec0
cmp byte [rbp - 0x48], 0
je 0x140001af8
mov rax, qword [rbx + 0x40]
test rax, rax
je 0x140001af8
cmp byte [rax + 8], 0
lea rdx, [0x140003480]
lea rcx, str._tSort_Flag:__s_n
cmovne rdx, r12
call fcn.140001ec0
mov rax, qword [rbx + 0x40]
xor r13d, r13d
mov ecx, dword [rax + 4]
mov eax, 1
shl eax, cl
movsxd r15, eax
test eax, eax
jle 0x140001af1
lea rax, [r15 - 1]
xor r12d, r12d
shr rax, 2
inc rax
mov qword [rbp - 1], rax
xor edi, edi
mov esi, r13d
mov r14, r12
nop dword [rax + rax]
cmp rdi, r15
jge 0x140001acf
mov rax, qword [rbx + 0x40]
mov edx, esi
mov rcx, qword [rax + 0x10]
movzx eax, byte [rcx + r14 + 2]
movzx r9d, byte [rcx + r14 + 1]
movzx r8d, byte [rcx + r14]
lea rcx, str._3d:__02xh__02xh__02xh
mov dword [rsp + 0x20], eax
call fcn.140001ec0
inc esi
inc rdi
add r14, 3
cmp rdi, 4
jl 0x140001a90
lea rcx, [0x1400034b4]
call fcn.140001ec0
add r13d, 4
add r12, 0xc
sub qword [rbp - 1], 1
jne 0x140001a83
lea r14, [0x1400036a0]
lea r15, str.Interlaced
cmp byte [rbp - 0x46], 0
je 0x140001b6f
lea r8, [rbp - 0x31]
mov rcx, rbx
lea rdx, [rbp - 0x25]
call sub.gif_7.dll_DGifGetCode
test eax, eax
je 0x140001d7d
mov edx, dword [rbp - 0x25]
lea rcx, str._nImage_LZ_compressed_Codes__Code_Size___d_:_n
call fcn.140001ec0
mov rdx, qword [rbp - 0x31]
mov r8b, 1
mov rcx, rbx
call section..text
cmp qword [rbp - 0x31], 0
je 0x140001ceb
nop
lea rdx, [rbp - 0x31]
mov rcx, rbx
call sub.gif_7.dll_DGifGetCodeNext
test eax, eax
je 0x140001d69
mov rdx, qword [rbp - 0x31]
xor r8d, r8d
mov rcx, rbx
call section..text
cmp qword [rbp - 0x31], 0
jne 0x140001b40
jmp 0x140001ceb
cmp byte [rbp - 0x45], 0
je 0x140001bd4
xor edi, edi
xor esi, esi
nop dword [rax]
test edi, edi
jne 0x140001b92
mov edx, esi
lea rcx, str._n_05lx:
call fcn.140001ec0
lea rdx, [rbp - 0x3d]
mov rcx, rbx
call sub.gif_7.dll_DGifGetLZCodes
test eax, eax
je 0x140001d91
mov ecx, dword [rbp - 0x3d]
test ecx, ecx
js 0x140001bbe
mov edx, ecx
lea rcx, str.__03x
call fcn.140001ec0
mov ecx, dword [rbp - 0x3d]
lea eax, [rdi + 1]
inc esi
xor edi, edi
cmp eax, 0x10
cmovl edi, eax
test ecx, ecx
jns 0x140001b80
jmp 0x140001ceb
cmp byte [rbp - 0x44], 0
je 0x140001c3a
movsxd rcx, dword [rbx + 0x30]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
xor edi, edi
mov rsi, rax
cmp dword [rbx + 0x34], edi
jle 0x140001c1f
nop
mov r8d, dword [rbx + 0x30]
mov rdx, rsi
mov rcx, rbx
call sub.gif_7.dll_DGifGetLine
test eax, eax
je 0x140001da5
mov edx, dword [rbx + 0x30]
test edi, edi
mov rcx, rsi
sete r8b
call fcn.1400012f0
inc edi
cmp edi, dword [rbx + 0x34]
jl 0x140001bf0
mov edx, dword [rbx + 0x30]
xor r8d, r8d
xor ecx, ecx
call fcn.1400012f0
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140001ceb
cmp byte [rbp - 0x49], 0
je 0x140001ca9
movsxd rcx, dword [rbx + 0x30]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
xor esi, esi
mov rdi, rax
cmp dword [rbx + 0x34], esi
jle 0x140001c9e
nop dword [rax]
nop dword [rax + rax]
mov r8d, dword [rbx + 0x30]
mov rdx, rdi
mov rcx, rbx
call sub.gif_7.dll_DGifGetLine
test eax, eax
je 0x140001db9
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
movsxd r8, dword [rbx + 0x30]
mov edx, 1
mov r9, rax
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
inc esi
cmp esi, dword [rbx + 0x34]
jl 0x140001c60
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140001ceb
lea r8, [rbp - 0x31]
mov rcx, rbx
lea rdx, [rbp - 0x25]
call sub.gif_7.dll_DGifGetCode
test eax, eax
je 0x140001e5f
cmp qword [rbp - 0x31], 0
je 0x140001ceb
nop dword [rax + rax]
lea rdx, [rbp - 0x31]
mov rcx, rbx
call sub.gif_7.dll_DGifGetCodeNext
test eax, eax
je 0x140001dcd
cmp qword [rbp - 0x31], 0
jne 0x140001cd0
cmp dword [rbp - 0x21], 4
je 0x140001de1
mov esi, dword [rbp - 0x29]
lea r12, [0x14000347c]
jmp 0x1400017fe
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, str.Invalid_extension_block_n
call fcn.140001ec0
mov ecx, 0x70
mov dword [rbx + 0x60], 0x70
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rdx, [rbp - 0x41]
mov rcx, rbx
call sub.gif_7.dll_DGifCloseFile
test eax, eax
jne 0x140001e05
mov ecx, dword [rbp - 0x41]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
cmp byte [rbp - 0x49], 0
jne 0x140001e17
lea rcx, str._nGIF_file_terminated_normally._n
call fcn.140001ec0
mov r14, qword [rsp + 0xd8]
xor eax, eax
mov r13, qword [rsp + 0xe0]
mov r12, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x120]
mov rdi, qword [rsp + 0xf0]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140002310
add rsp, 0xf8
pop rsi
pop rbp
ret
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [rbx + 0x60]
call sub.gif_7.dll_PrintGifError
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
movzx ecx, al
call sub.gif_7.dll_GAPrintErrMsg
mov rcx, qword [str.giftext_v___c___e___z___p___r___h___GifFile_s]
call sub.gif_7.dll_GAPrintHowTo
mov ecx, esi
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3