Function at 0x464950
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov eax, dword [sym.imp.cygwin1.dll___stack_chk_guard]
mov dword [esp + 0x1c], eax
xor eax, eax
mov edi, dword [esp + 0x40]
mov ebx, dword [edi + 0xe4]
lea esi, [edi + 0xe4]
cmp ebx, esi
je 0x464998
lea esi, [esi]
lea esi, [esi]
mov eax, ebx
mov ebx, dword [ebx]
mov dword [esp + 4], 0x18
mov dword [esp], eax
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
cmp ebx, esi
jne 0x464980
mov eax, dword [edi + 0xd8]
test eax, eax
je 0x4649b6
mov edx, dword [edi + 0xe0]
mov dword [esp], eax
sub edx, eax
mov dword [esp + 4], edx
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov eax, dword [edi + 0xc4]
lea edx, [eax - 0xc]
cmp eax, method.std::string.swap_std::string_
jne 0x464b00
mov eax, dword [edi + 0xb8]
test eax, eax
je 0x4649e8
mov edx, dword [edi + 0xc0]
mov dword [esp], eax
sub edx, eax
mov dword [esp + 4], edx
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov eax, dword [edi + 0xb4]
lea edx, [eax - 0xc]
cmp eax, method.std::string.swap_std::string_
jne 0x464b30
mov eax, dword [edi + 0xa4]
test eax, eax
je 0x464a1a
mov edx, dword [edi + 0xac]
mov dword [esp], eax
sub edx, eax
mov dword [esp + 4], edx
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov eax, dword [edi + 0xa0]
lea edx, [eax - 0xc]
cmp eax, method.std::string.swap_std::string_
jne 0x464b60
mov edx, dword [edi + 0x58]
test edx, edx
je 0x464a4a
mov eax, dword [edi + 0x68]
mov ecx, eax
sub ecx, edx
sub eax, ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov eax, dword [edi + 0x28]
test eax, eax
je 0x464a62
mov edx, dword [edi + 0x30]
mov dword [esp], eax
sub edx, eax
mov dword [esp + 4], edx
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov eax, dword [edi + 0x1c]
test eax, eax
je 0x464a7a
mov edx, dword [edi + 0x24]
mov dword [esp], eax
sub edx, eax
mov dword [esp + 4], edx
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov ebp, dword [edi + 0x14]
mov esi, dword [edi + 0x10]
cmp ebp, esi
jne 0x464a97
jmp 0x464acb
add esi, 8
cmp ebp, esi
je 0x464ac8
mov ebx, dword [esi + 4]
test ebx, ebx
je 0x464a90
lock sub dword [ebx + 4], 1
jne 0x464a90
mov eax, dword [ebx]
mov dword [esp], ebx
call dword [eax + 8]
lock sub dword [ebx + 8], 1
jne 0x464a90
mov eax, dword [ebx]
add esi, 8
mov dword [esp], ebx
call dword [eax + 0xc]
cmp ebp, esi
jne 0x464a97
lea esi, [esi]
nop
mov esi, dword [edi + 0x10]
test esi, esi
je 0x464ae0
mov eax, dword [edi + 0x18]
mov dword [esp], esi
sub eax, esi
mov dword [esp + 4], eax
call sub.cygstdc_6.dll_operator_delete_void__unsigned_int_
mov eax, dword [esp + 0x1c]
sub eax, dword [sym.imp.cygwin1.dll___stack_chk_guard]
jne 0x464b87
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, 0xffffffff
lock xadd dword [eax - 4], ecx
test ecx, ecx
jg 0x4649ca
lea eax, [esp + 0x1b]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.00451180
jmp 0x4649ca
mov ecx, 0xffffffff
lock xadd dword [eax - 4], ecx
test ecx, ecx
jg 0x4649fc
lea eax, [esp + 0x1b]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.00451180
jmp 0x4649fc
mov ecx, 0xffffffff
lock xadd dword [eax - 4], ecx
test ecx, ecx
jg 0x464a2e
lea eax, [esp + 0x1b]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.00451180
jmp 0x464a2e
call sub.cygwin1.dll___stack_chk_fail
nop
nop
nop
nop