Function at 0x4588a0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4dfe2b
mov eax, dword fs:[0]
push eax
mov eax, 0x2308
call fcn.004c2ee0
mov eax, dword [0x538a60]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x22b4], edx
mov eax, ecx
mov dword [ebp - 0x22b0], eax
lea ecx, [ebp - 0x22c8]
push 0
push ecx
mov ecx, eax
call fcn.00479110
add esp, 8
movsx eax, al
mov dword [ebp - 0x22b8], eax
push 0x1000
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
jne 0x458929
push str.Failed_to_allocate_memory_on_process_heap_n
call fcn.004bc829
add esp, 4
push 1
call fcn.004bcc8d
mov ecx, 0x1000
mov edi, edi
mov byte [eax], 0
lea eax, [eax + 1]
dec ecx
jne 0x458930
mov edi, dword [ebp - 0x22c4]
cmp dword [ebp - 0x22b8], ecx
jne 0x45896b
push edi
push dword [ebp - 0x22c8]
push dword [ebp - 0x22b4]
push str._S_record__llu_n
push 0xffffffffffffffff
push 0x800
push esi
call fcn.004bb4ef
add esp, 0x1c
jmp 0x458986
push dword [ebp - 0x22b4]
push str._S_not_found_n
push 0xffffffffffffffff
push 0x800
push esi
call fcn.004bb4ef
add esp, 0x14
mov ecx, esi
call fcn.00458190
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push 0
call esi
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [ebp - 0x22b8]
test eax, eax
jne 0x45929e
push 0x53ebbc
push 1
push dword [0x53ebf0]
call dword [sym.imp.PGPsdk.dll_PGPNewHashContext]
add esp, 0xc
mov ecx, eax
call fcn.00455680
push 0x1000
push 0x547d60
call fcn.004bbd22
mov esi, dword [sym.imp.PGPsdk.dll_PGPCFBEncrypt]
mov dword [ebp - 0x2224], eax
lea eax, [ebp - 0x221c]
push eax
push 2
lea eax, [ebp - 0x2224]
mov dword [ebp - 0x221c], 0
push eax
push dword [0x53ebb8]
call esi
push 1
mov edx, 2
lea ecx, [ebp - 0x221c]
call fcn.00457880
add esp, 0x1c
push 0x548d60
push dword [ebp - 0x2224]
push 0x547d60
push dword [0x53ebb8]
call esi
push dword [ebp - 0x2224]
mov edx, 1
mov ecx, 0x548d60
call fcn.00457880
add esp, 0x14
mov dword [0x53ec18], 0
mov dword [0x53ec1c], 0
mov dword [0x53ec20], 0
push 0x38
push str.1.2.11
push dword [0x53ebf4]
push 0x53ebf8
call fcn.004971d0
mov dword [ebp - 0x22ac], eax
test eax, eax
je 0x458aa0
mov ecx, str.deflateInit_failed_n
call fcn.00458190
mov al, byte [ebp - 0x22ac]
jmp 0x459322
mov ecx, dword [ebp - 0x22b0]
push edi
push dword [ebp - 0x22c8]
call fcn.004795e0
mov esi, eax
add esp, 8
mov dword [ebp - 0x22ac], esi
test esi, esi
je 0x458b52
mov eax, dword [ebp - 0x22b4]
mov ecx, str._Extend__UsnJrnl
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x458af0
test dl, dl
je 0x458aec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x458af0
add eax, 2
add ecx, 2
test dl, dl
jne 0x458ad0
xor eax, eax
jmp 0x458af5
sbb eax, eax
or eax, 1
mov ecx, esi
test eax, eax
jne 0x458c10
mov edx, str.tsk_fs_file_attr_getsize
call fcn.00479690
test eax, eax
je 0x458b59
call fcn.00476ab0
mov eax, dword [ebp - 0x221c]
mov ecx, esi
push 0
push 0x458690
test eax, eax
je 0x458c17
push 8
push eax
mov edx, 0x80
call fcn.00479870
add esp, 0x10
test al, al
je 0x458c40
mov ecx, esi
call fcn.00479590
mov ecx, str.file_content_acquisition_error_encountered_n
call fcn.00458190
mov al, 1
jmp 0x459322
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0xc8]
call fcn.00480280
xor edi, edi
mov dword [ebp - 0x22d0], eax
test eax, eax
jle 0x458b12
mov ecx, dword [ebp - 0x221c]
mov dword [ebp - 0x22b0], ecx
nop
mov edx, str.tsk_fs_file_attr_get_idx
mov ecx, esi
call fcn.00479690
test eax, eax
jne 0x458bf8
mov ecx, dword [esi + 8]
mov edx, edi
mov ecx, dword [ecx + 0xc8]
call fcn.004801b0
mov esi, eax
test esi, esi
je 0x458bf2
cmp dword [esi + 0x14], 0x80
jne 0x458bf2
mov eax, dword [esi + 0xc]
mov ecx, 0x52021c
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x458bd7
test dl, dl
je 0x458bd3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x458bd7
add eax, 2
add ecx, 2
test dl, dl
jne 0x458bb7
xor eax, eax
jmp 0x458bdc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x458bf2
movzx eax, word [esi + 0x18]
mov esi, dword [ebp - 0x22ac]
mov dword [ebp - 0x22b0], eax
jmp 0x458bfe
mov esi, dword [ebp - 0x22ac]
mov eax, dword [ebp - 0x22b0]
inc edi
cmp edi, dword [ebp - 0x22d0]
jl 0x458b80
jmp 0x458b18
push 0
push 0x458690
mov edx, 8
call fcn.00479980
add esp, 8
test al, al
je 0x458c40
mov ecx, esi
call fcn.00479590
mov ecx, str.file_content_acquisition_error_encountered_n
call fcn.00458190
mov al, 1
jmp 0x459322
push 0x4000
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_HeapAlloc]
call eax
mov edi, eax
test edi, edi
jne 0x458c6f
push str.Failed_to_allocate_memory_on_process_heap_n
call fcn.004bc829
add esp, 4
push 1
call fcn.004bcc8d
mov ecx, 0x4000
mov eax, edi
mov byte [eax], 0
lea eax, [eax + 1]
dec ecx
jne 0x458c76
push 0x4000
push ecx
push edi
call fcn.004c13c0
add esp, 0xc
mov edi, edi
push 4
push 0x53ebf8
mov dword [0x53ec08], 0x4000
mov dword [0x53ec04], edi
call fcn.00496620
mov eax, 0x4000
sub eax, dword [0x53ec08]
movzx eax, ax
mov dword [ebp - 0x2220], eax
test ax, ax
jle 0x458d53
lea eax, [ebp - 0x2228]
mov dword [ebp - 0x2228], 0
push eax
push 2
lea eax, [ebp - 0x2220]
push eax
push dword [0x53ebb8]
call dword [sym.imp.PGPsdk.dll_PGPCFBEncrypt]
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x458eac
push 1
lea edx, [eax + 2]
lea ecx, [ebp - 0x2228]
call fcn.00457880
mov eax, dword [ebp - 0x2220]
add esp, 4
mov esi, dword [sym.imp.PGPsdk.dll_PGPCFBEncrypt]
test ax, ax
jle 0x458d59
push 0x548d60
cwde
push eax
push edi
push dword [0x53ebb8]
call esi
mov ecx, eax
call fcn.00455680
movsx eax, word [ebp - 0x2220]
mov edx, 1
push eax
mov ecx, 0x548d60
call fcn.00457880
add esp, 0x14
jmp 0x458d59
mov esi, dword [sym.imp.PGPsdk.dll_PGPCFBEncrypt]
cmp dword [0x53ec08], 0
je 0x458c90
push 0x53ebf8
call fcn.00496ee0
mov ecx, dword [ebp - 0x22ac]
call fcn.00479590
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_HeapFree]
call eax
lea eax, [ebp - 0x222c]
mov dword [ebp - 0x222c], 0
push eax
push 2
lea eax, [ebp - 0x2248]
mov dword [ebp - 0x2248], 0xffffffff
push eax
push dword [0x53ebb8]
call esi
push 1
mov edx, 2
lea ecx, [ebp - 0x222c]
call fcn.00457880
add esp, 0x14
push 0x53ebe0
push dword [0x53ebbc]
call dword [sym.imp.PGPsdk.dll_PGPFinalizeHash]
mov ecx, eax
call fcn.00455680
push 0x38
lea eax, [ebp - 0x22a8]
push 0
push eax
call fcn.004c13c0
add esp, 8
lea ecx, [ebp - 0x22a8]
call fcn.0046e3c0
push 0x51b858
push 0x1000
mov dword [ebp - 4], 0
xorps xmm0, xmm0
mov edi, dword [ebp - 0x2298]
mov eax, 3
push 0x800
movdqu xmmword [ebp - 0x22a8], xmm0
push 0x545d60
mov word [ebp - 0x229a], ax
call fcn.004bb4ef
add esp, 0x10
xor esi, esi
jmp 0x458e50
movzx eax, byte [esi + 0x53ebe0]
push eax
push 0x545d60
push str._s_02x
push 0xffffffffffffffff
push 0x800
push 0x545d60
call fcn.004bb4ef
inc esi
add esp, 0x18
cmp esi, 0x10
jb 0x458e50
push dword [ebp - 0x22b4]
lea ecx, [ebp - 0x22bc]
call fcn.00454cb0
mov byte [ebp - 4], 2
mov esi, dword [eax]
test esi, esi
je 0x458ee9
cmp dword [esi + 4], 0
jne 0x458ea7
push dword [esi]
call fcn.004baaf0
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
jmp 0x458eeb
lea eax, [ebp - 0x218]
push eax
push 0x100
push esi
call dword [sym.imp.PGPsdk.dll_PGPGetErrorString]
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push esi
push str.PGP_Error:_Failed_with__d___s_n
call fcn.004bc829
add esp, 0xc
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
call fcn.004bcc8d
xor ecx, ecx
push edi
sub esp, 8
xorps xmm0, xmm0
cmp byte [ecx], 0
mov edx, esp
movdqu xmmword [ebp - 0x2310], xmm0
mov eax, ecx
je 0x458f09
inc eax
cmp byte [eax], 0
jne 0x458f03
sub eax, ecx
mov dword [edx], ecx
lea ecx, [ebp - 0x2310]
mov dword [edx + 4], eax
call fcn.0046fbb0
xorps xmm0, xmm0
mov eax, 0x405
movdqu xmmword [ebp - 0x22f0], xmm0
mov word [ebp - 0x22e2], ax
mov dword [ebp - 0x22e8], str.name
mov dword [ebp - 0x22f0], 4
push edi
lea eax, [ebp - 0x2310]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x22f0]
push eax
lea ecx, [ebp - 0x22a8]
call fcn.0046e5e0
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x22bc]
test esi, esi
je 0x458fb7
lea eax, [esi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x458fb7
test esi, esi
je 0x458fb7
mov eax, dword [esi]
test eax, eax
je 0x458f97
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x458fae
push eax
call fcn.004bb0e1
add esp, 4
mov dword [esi + 4], 0
push esi
call fcn.004bae6f
add esp, 4
push 0x545d60
lea ecx, [ebp - 0x22cc]
call fcn.00454d50
mov byte [ebp - 4], 7
mov esi, dword [eax]
test esi, esi
je 0x458fe6
cmp dword [esi + 4], 0
jne 0x458fe1
push dword [esi]
call fcn.004baaf0
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
jmp 0x458fe8
xor ecx, ecx
push edi
sub esp, 8
xorps xmm0, xmm0
cmp byte [ecx], 0
mov edx, esp
movdqu xmmword [ebp - 0x2300], xmm0
mov eax, ecx
je 0x459006
inc eax
cmp byte [eax], 0
jne 0x459000
sub eax, ecx
mov dword [edx], ecx
lea ecx, [ebp - 0x2300]
mov dword [edx + 4], eax
call fcn.0046fbb0
xorps xmm0, xmm0
mov eax, 0x405
movdqu xmmword [ebp - 0x22e0], xmm0
mov word [ebp - 0x22d2], ax
mov dword [ebp - 0x22d8], 0x520290
mov dword [ebp - 0x22e0], 3
push edi
lea eax, [ebp - 0x2300]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x22e0]
push eax
lea ecx, [ebp - 0x22a8]
call fcn.0046e5e0
mov esi, dword [ebp - 0x22cc]
test esi, esi
je 0x4590b0
lea eax, [esi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x4590b0
test esi, esi
je 0x4590b0
mov eax, dword [esi]
test eax, eax
je 0x459090
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x4590a7
push eax
call fcn.004bb0e1
add esp, 4
mov dword [esi + 4], 0
push esi
call fcn.004bae6f
add esp, 4
xorps xmm0, xmm0
movq qword [ebp - 0x2234], xmm0
movdqu xmmword [ebp - 0x2244], xmm0
mov dword [ebp - 0x2234], 0
movdqu xmmword [ebp - 0x2244], xmm0
mov dword [ebp - 0x2230], 0x100
movdqu xmmword [ebp - 0x225c], xmm0
lea eax, [ebp - 0x2244]
mov dword [ebp - 0x224c], 0
movdqu xmmword [ebp - 0x226c], xmm0
mov dword [ebp - 0x226c], eax
movdqu xmmword [ebp - 0x2268], xmm0
mov dword [ebp - 0x2258], 0
mov dword [ebp - 0x2254], 0x100
mov dword [ebp - 0x2250], 0x144
mov byte [ebp - 0x224c], 0
lea eax, [ebp - 0x226c]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x22a8]
call fcn.00471240
mov ecx, dword [ebp - 0x2238]
lea eax, [ecx + 1]
cmp eax, dword [ebp - 0x2234]
jbe 0x45916c
push 1
lea ecx, [ebp - 0x2244]
call fcn.00474eb0
mov ecx, dword [ebp - 0x2238]
mov eax, ecx
inc ecx
mov dword [ebp - 0x2238], ecx
mov byte [eax], 0
lea eax, [ebp - 0x2218]
push dword [ebp - 0x223c]
dec dword [ebp - 0x2238]
push 0x520294
push 0xffffffffffffffff
push 0x800
push eax
call fcn.004bb4ef
add esp, 0x14
lea eax, [ebp - 0x118]
push 0x561208
push 0x561418
push str._S__s_files.log.z
push 0x1000
push eax
call fcn.004715a0
add esp, 0x14
lea eax, [ebp - 0x2218]
push 0x1000
push eax
call fcn.004bbd3d
push eax
lea edx, [ebp - 0x2218]
lea ecx, [ebp - 0x118]
call fcn.00457af0
add esp, 0xc
push 0x545d60
push 0x5202b0
push 0xffffffffffffffff
push 0x800
push 0x545d60
call fcn.004bb4ef
add esp, 0x14
mov ecx, 0x545d60
call fcn.00458190
mov eax, dword [0x53ebbc]
test eax, eax
je 0x459223
push eax
call dword [sym.imp.PGPsdk.dll_PGPFreeHashContext]
add esp, 4
push dword [ebp - 0x2260]
call fcn.004bae83
add esp, 4
push dword [ebp - 0x2264]
call fcn.004bae6f
add esp, 4
push dword [ebp - 0x223c]
call fcn.004bae83
add esp, 4
push dword [ebp - 0x2240]
call fcn.004bae6f
mov esi, dword [ebp - 0x2294]
add esp, 4
test esi, esi
je 0x459280
mov ecx, esi
call fcn.0046fc50
push dword [esi + 0x10]
call fcn.004bae6f
add esp, 4
push esi
call fcn.004bae6f
add esp, 4
push dword [ebp - 0x2288]
call fcn.004bae83
add esp, 4
push dword [ebp - 0x228c]
call fcn.004bae6f
add esp, 4
jmp 0x45931c
cmp eax, 1
je 0x458b52
push 0x1000
push 8
call esi
push eax
mov eax, dword [sym.imp.KERNEL32.dll_HeapAlloc]
call eax
mov esi, eax
test esi, esi
jne 0x4592d2
push str.Failed_to_allocate_memory_on_process_heap_n
call fcn.004bc829
add esp, 4
push 1
call fcn.004bcc8d
mov ecx, 0x1000
mov eax, esi
lea esp, [esp]
mov byte [eax], 0
lea eax, [eax + 1]
dec ecx
jne 0x4592e0
call fcn.00476630
push eax
push 0x520294
push 0xffffffffffffffff
push 0x800
push esi
call fcn.004bb4ef
add esp, 0x14
mov ecx, esi
call fcn.00458190
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_HeapFree]
call eax
mov al, byte [ebp - 0x22b8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004bae74
mov esp, ebp
pop ebp
ret