Function at 0x687d5c
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 0x687d6c
sub edx, ecx
push ebx
push esi
push edi
js 0x687d88
mov ecx, 0x4421c4
call fcn.0066af0c
mov edi, eax
jmp 0x687d8a
xor edi, edi
mov esi, dword [0x443b40]
test esi, esi
je 0x687d9f
cmp dword [esi], edi
je 0x687db4
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x687d94
push 0x18
call fcn.0068a280
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x687dd6
jmp 0x688173
test esi, esi
je 0x687d9f
lea eax, [edi + 0xa]
push eax
push 0x43c434
push 1
call fcn.0066aebc
add esp, 0xc
cmp dword [esi + 4], 0xa
je 0x687d9f
jmp 0x688189
test edi, edi
je 0x687df1
push dword [edi]
push edi
push 0x43b344
push 0x1000
call fcn.0066aebc
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 0x687eb2
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 0x687e53
test dl, dl
je 0x687e4f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x687e53
add eax, 2
add ecx, 2
test dl, dl
jne 0x687e33
xor eax, eax
jmp 0x687e58
sbb eax, eax
or eax, 1
test eax, eax
jns 0x687e6a
mov edx, esi
mov esi, dword [esi + 0x14]
mov dword [ebp - 4], edx
test esi, esi
jne 0x687e2c
jmp 0x687ea1
mov edx, dword [esi]
add edx, 0xa
mov eax, edx
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x687e91
test cl, cl
je 0x687e8d
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x687e91
add eax, 2
add edi, 2
test cl, cl
jne 0x687e71
xor eax, eax
jmp 0x687e96
sbb eax, eax
or eax, 1
test eax, eax
je 0x688190
mov edx, dword [ebp - 4]
test edx, edx
je 0x687ead
mov dword [ebx + 0x14], esi
mov dword [edx + 0x14], ebx
jmp 0x687ebb
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 0x687ec3
sub edx, ecx
js 0x687edc
mov ecx, 0x442204
call fcn.0066af0c
mov edi, eax
jmp 0x687ede
xor edi, edi
mov esi, dword [0x443b40]
test esi, esi
je 0x687ef7
lea esp, [esp]
cmp dword [esi], edi
je 0x687f11
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x687eec
push 0x18
call fcn.0068a280
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x688173
test edi, edi
jne 0x687f33
jmp 0x687f4a
test esi, esi
je 0x687ef7
lea eax, [edi + 0xa]
push eax
push 0x43c434
push 1
call fcn.0066aebc
add esp, 0xc
cmp dword [esi + 4], 9
je 0x687ef7
jmp 0x6881a5
push dword [edi]
push edi
push 0x43b344
push 0x1000
call fcn.0066aebc
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 0x68800d
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 0x687fac
test dl, dl
je 0x687fa8
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x687fac
add eax, 2
add ecx, 2
test dl, dl
jne 0x687f8c
xor eax, eax
jmp 0x687fb1
sbb eax, eax
or eax, 1
test eax, eax
jns 0x687fc3
mov edx, esi
mov esi, dword [esi + 0x14]
mov dword [ebp - 4], edx
test esi, esi
jne 0x687f81
jmp 0x687ffc
mov edx, dword [esi]
add edx, 0xa
mov eax, edx
mov edi, edi
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x687fec
test cl, cl
je 0x687fe8
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x687fec
add eax, 2
add edi, 2
test cl, cl
jne 0x687fcc
xor eax, eax
jmp 0x687ff1
sbb eax, eax
or eax, 1
test eax, eax
je 0x688190
mov edx, dword [ebp - 4]
test edx, edx
je 0x688008
mov dword [ebx + 0x14], esi
mov dword [edx + 0x14], ebx
jmp 0x688016
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 0x68801e
sub edx, ecx
js 0x688037
mov ecx, 0x442240
call fcn.0066af0c
mov edi, eax
jmp 0x688039
xor edi, edi
mov esi, dword [0x443b40]
test esi, esi
je 0x688071
cmp dword [esi], edi
je 0x688050
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x688043
jmp 0x688071
test esi, esi
je 0x688071
lea eax, [edi + 0xa]
push eax
push 0x43c434
push 1
call fcn.0066aebc
add esp, 0xc
cmp dword [esi + 4], 0xa
jne 0x688182
push 0x18
call fcn.0068a280
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x688173
test edi, edi
je 0x6880a0
push dword [edi]
push edi
push 0x43b344
push 0x1000
call fcn.0066aebc
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 0x688163
add edi, 0xa
jmp 0x6880dc
mov eax, dword [esi]
mov ecx, edi
add eax, 0xa
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x688103
test dl, dl
je 0x6880ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x688103
add eax, 2
add ecx, 2
test dl, dl
jne 0x6880e3
xor eax, eax
jmp 0x688108
sbb eax, eax
or eax, 1
test eax, eax
jns 0x68811a
mov edx, esi
mov esi, dword [esi + 0x14]
mov dword [ebp - 4], edx
test esi, esi
jne 0x6880dc
jmp 0x68814d
mov edx, dword [esi]
add edx, 0xa
mov eax, edx
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x688141
test cl, cl
je 0x68813d
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x688141
add eax, 2
add edi, 2
test cl, cl
jne 0x688121
xor eax, eax
jmp 0x688146
sbb eax, eax
or eax, 1
test eax, eax
je 0x688190
mov edx, dword [ebp - 4]
test edx, edx
je 0x68815e
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.0066aebc
add esp, 8
push 1
call fcn.0068a820
push 1
call fcn.0068a820
push edx
push 0x43c48c
push 1
call fcn.0066aebc
add esp, 0xc
call fcn.0068a834
push 1
call fcn.0068a820
int3