Function at 0x695d5c
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
mov edx, 0x4421c4
lea ecx, [edx + 1]
lea esp, [esp]
mov al, byte [edx]
inc edx
test al, al
jne 0x695d6c
sub edx, ecx
push ebx
push esi
push edi
js 0x695d88
mov ecx, 0x4421c4
call fcn.00678f0c
mov edi, eax
jmp 0x695d8a
xor edi, edi
mov esi, dword [0x443b40]
test esi, esi
je 0x695d9f
cmp dword [esi], edi
je 0x695db4
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x695d94
push 0x18
call fcn.00698280
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x695dd6
jmp 0x696173
test esi, esi
je 0x695d9f
lea eax, [edi + 0xa]
push eax
push 0x43c434
push 1
call fcn.00678ebc
add esp, 0xc
cmp dword [esi + 4], 0xa
je 0x695d9f
jmp 0x696189
test edi, edi
je 0x695df1
push dword [edi]
push edi
push 0x43b344
push 0x1000
call fcn.00678ebc
add esp, 0x10
inc dword [edi]
mov eax, dword [0x443b40]
mov esi, eax
mov dword [ebx], edi
mov dword [ebx + 4], 0xa
mov dword [ebx + 8], 0x443c30
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0x44218c
mov dword [ebp - 4], 0
test esi, esi
je 0x695eb2
add edi, 0xa
lea esp, [esp]
mov eax, dword [esi]
mov ecx, edi
add eax, 0xa
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x695e53
test dl, dl
je 0x695e4f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x695e53
add eax, 2
add ecx, 2
test dl, dl
jne 0x695e33
xor eax, eax
jmp 0x695e58
sbb eax, eax
or eax, 1
test eax, eax
jns 0x695e6a
mov edx, esi
mov esi, dword [esi + 0x14]
mov dword [ebp - 4], edx
test esi, esi
jne 0x695e2c
jmp 0x695ea1
mov edx, dword [esi]
add edx, 0xa
mov eax, edx
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x695e91
test cl, cl
je 0x695e8d
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x695e91
add eax, 2
add edi, 2
test cl, cl
jne 0x695e71
xor eax, eax
jmp 0x695e96
sbb eax, eax
or eax, 1
test eax, eax
je 0x696190
mov edx, dword [ebp - 4]
test edx, edx
je 0x695ead
mov dword [ebx + 0x14], esi
mov dword [edx + 0x14], ebx
jmp 0x695ebb
mov eax, dword [0x443b40]
mov dword [ebx + 0x14], eax
mov dword [0x443b40], ebx
mov edx, 0x442204
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x695ec3
sub edx, ecx
js 0x695edc
mov ecx, 0x442204
call fcn.00678f0c
mov edi, eax
jmp 0x695ede
xor edi, edi
mov esi, dword [0x443b40]
test esi, esi
je 0x695ef7
lea esp, [esp]
cmp dword [esi], edi
je 0x695f11
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x695eec
push 0x18
call fcn.00698280
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x696173
test edi, edi
jne 0x695f33
jmp 0x695f4a
test esi, esi
je 0x695ef7
lea eax, [edi + 0xa]
push eax
push 0x43c434
push 1
call fcn.00678ebc
add esp, 0xc
cmp dword [esi + 4], 9
je 0x695ef7
jmp 0x6961a5
push dword [edi]
push edi
push 0x43b344
push 0x1000
call fcn.00678ebc
add esp, 0x10
inc dword [edi]
mov eax, dword [0x443b40]
mov esi, eax
mov dword [ebx], edi
mov dword [ebx + 4], 9
mov dword [ebx + 8], 0x443c38
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0x4421dc
mov dword [ebp - 4], 0
test esi, esi
je 0x69600d
add edi, 0xa
mov eax, dword [esi]
mov ecx, edi
add eax, 0xa
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x695fac
test dl, dl
je 0x695fa8
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x695fac
add eax, 2
add ecx, 2
test dl, dl
jne 0x695f8c
xor eax, eax
jmp 0x695fb1
sbb eax, eax
or eax, 1
test eax, eax
jns 0x695fc3
mov edx, esi
mov esi, dword [esi + 0x14]
mov dword [ebp - 4], edx
test esi, esi
jne 0x695f81
jmp 0x695ffc
mov edx, dword [esi]
add edx, 0xa
mov eax, edx
mov edi, edi
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x695fec
test cl, cl
je 0x695fe8
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x695fec
add eax, 2
add edi, 2
test cl, cl
jne 0x695fcc
xor eax, eax
jmp 0x695ff1
sbb eax, eax
or eax, 1
test eax, eax
je 0x696190
mov edx, dword [ebp - 4]
test edx, edx
je 0x696008
mov dword [ebx + 0x14], esi
mov dword [edx + 0x14], ebx
jmp 0x696016
mov eax, dword [0x443b40]
mov dword [ebx + 0x14], eax
mov dword [0x443b40], ebx
mov edx, 0x442240
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x69601e
sub edx, ecx
js 0x696037
mov ecx, 0x442240
call fcn.00678f0c
mov edi, eax
jmp 0x696039
xor edi, edi
mov esi, dword [0x443b40]
test esi, esi
je 0x696071
cmp dword [esi], edi
je 0x696050
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x696043
jmp 0x696071
test esi, esi
je 0x696071
lea eax, [edi + 0xa]
push eax
push 0x43c434
push 1
call fcn.00678ebc
add esp, 0xc
cmp dword [esi + 4], 0xa
jne 0x696182
push 0x18
call fcn.00698280
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x696173
test edi, edi
je 0x6960a0
push dword [edi]
push edi
push 0x43b344
push 0x1000
call fcn.00678ebc
add esp, 0x10
inc dword [edi]
mov eax, dword [0x443b40]
mov esi, eax
mov dword [ebx], edi
mov dword [ebx + 4], 0xa
mov dword [ebx + 8], 0x443c3c
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0x442218
mov dword [ebp - 4], 0
test esi, esi
je 0x696163
add edi, 0xa
jmp 0x6960dc
mov eax, dword [esi]
mov ecx, edi
add eax, 0xa
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x696103
test dl, dl
je 0x6960ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x696103
add eax, 2
add ecx, 2
test dl, dl
jne 0x6960e3
xor eax, eax
jmp 0x696108
sbb eax, eax
or eax, 1
test eax, eax
jns 0x69611a
mov edx, esi
mov esi, dword [esi + 0x14]
mov dword [ebp - 4], edx
test esi, esi
jne 0x6960dc
jmp 0x69614d
mov edx, dword [esi]
add edx, 0xa
mov eax, edx
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x696141
test cl, cl
je 0x69613d
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x696141
add eax, 2
add edi, 2
test cl, cl
jne 0x696121
xor eax, eax
jmp 0x696146
sbb eax, eax
or eax, 1
test eax, eax
je 0x696190
mov edx, dword [ebp - 4]
test edx, edx
je 0x69615e
mov dword [ebx + 0x14], esi
pop edi
pop esi
mov dword [edx + 0x14], ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x443b40]
pop edi
pop esi
mov dword [ebx + 0x14], eax
mov dword [0x443b40], ebx
pop ebx
mov esp, ebp
pop ebp
ret
push 0x43c468
push 1
call fcn.00678ebc
add esp, 8
push 1
call fcn.00698820
push 1
call fcn.00698820
push edx
push 0x43c48c
push 1
call fcn.00678ebc
add esp, 0xc
call fcn.00698834
push 1
call fcn.00698820
int3