Function at 0x6ed420
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
mov esi, ecx
mov ecx, dword [esi + 0x20]
push edi
xor edi, edi
cmp ecx, edi
je 0x6ed43f
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [esi + 0x20], edi
lea ecx, [esi + 0x2c]
mov dword [esi + 0x28], edi
mov dword [esi + 0x24], edi
call fcn.006e7420
push 0x210
lea eax, [esi + 0x5c]
push edi
push eax
mov byte [esi + 0x54], 0
mov dword [esi + 0x58], edi
call fcn.0067e0a0
push 0x2100
lea ecx, [esi + 0x26c]
push edi
push ecx
call fcn.0067e0a0
add esp, 0x18
mov dword [esi + 0x23cc], edi
mov edi, edi
mov eax, dword [esi + 0x23cc]
lea edx, [eax + eax*2]
mov ecx, dword [esi + edx*4 + 0x236c]
cmp ecx, dword [esi + edx*4 + 0x2370]
lea eax, [esi + edx*4 + 0x236c]
je 0x6ed4e9
mov edi, dword [eax + 4]
sub edi, dword [eax]
mov ecx, dword [esi + 0x10]
mov edx, dword [ecx]
mov eax, dword [eax]
mov edx, dword [edx + 0x14]
push edi
push eax
call edx
mov eax, dword [esi + 0x23cc]
lea eax, [eax + eax*2]
mov ecx, dword [esi + eax*4 + 0x236c]
lea edi, [esi + eax*4 + 0x236c]
mov eax, dword [edi + 4]
cmp eax, eax
jne 0x6ed4d5
mov eax, ecx
jmp 0x6ed4e6
mov ebx, eax
sub ebx, eax
push ebx
push eax
push ecx
call fcn.0067f500
add esp, 0xc
add eax, ebx
mov dword [edi + 4], eax
mov eax, dword [esi + 0x23cc]
lea ecx, [eax + eax*2]
mov edi, dword [esi + ecx*4 + 0x236c]
mov edx, dword [esi + ecx*4 + 0x2374]
lea ebx, [esi + ecx*4 + 0x236c]
sub edx, edi
cmp edx, 0x10
jae 0x6ed588
mov eax, dword [ebx + 4]
mov dword [ebp - 8], eax
sub eax, edi
push 0x10
mov dword [ebp - 0xc], eax
call fcn.008f6480
add esp, 4
test edi, edi
je 0x6ed567
test eax, eax
mov dword [ebp - 4], eax
jne 0x6ed53b
push 0x10
call fcn.00694cd0
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 8], edi
je 0x6ed553
mov eax, dword [ebp - 8]
sub eax, edi
push eax
mov eax, dword [ebp - 4]
push edi
push eax
call fcn.0067f500
add esp, 0xc
mov eax, dword [ebx]
test eax, eax
mov edi, dword [ebp - 4]
je 0x6ed577
push eax
call fcn.008f64c0
add esp, 4
jmp 0x6ed577
test eax, eax
jne 0x6ed575
push 0x10
call fcn.00694cd0
add esp, 4
mov edi, eax
mov ecx, dword [ebp - 0xc]
lea edx, [edi + ecx]
mov dword [ebx], edi
add edi, 0x10
mov dword [ebx + 4], edx
mov dword [ebx + 8], edi
add dword [esi + 0x23cc], 1
cmp dword [esi + 0x23cc], 8
jb 0x6ed480
mov eax, dword [esi + 0x23d0]
cmp eax, dword [esi + 0x23d4]
je 0x6ed633
mov ecx, dword [esi + 0x23d4]
sub ecx, eax
xor edi, edi
sar ecx, 2
je 0x6ed608
lea ecx, [ecx]
mov edx, dword [esi + 0x23d0]
cmp dword [edx + edi*4], 0
lea eax, [edx + edi*4]
je 0x6ed5f2
mov ebx, dword [eax]
test ebx, ebx
je 0x6ed5e5
mov ecx, ebx
call fcn.008eb950
push ebx
call fcn.0068ae0b
add esp, 4
mov eax, dword [esi + 0x23d0]
mov dword [eax + edi*4], 0
mov ecx, dword [esi + 0x23d4]
sub ecx, dword [esi + 0x23d0]
add edi, 1
sar ecx, 2
cmp edi, ecx
jb 0x6ed5c0
mov eax, dword [esi + 0x23d4]
cmp eax, eax
mov ecx, dword [esi + 0x23d0]
jne 0x6ed61c
mov eax, ecx
jmp 0x6ed62d
mov edi, eax
sub edi, eax
push edi
push eax
push ecx
call fcn.0067f500
add esp, 0xc
add eax, edi
mov dword [esi + 0x23d4], eax
mov edi, dword [esi + 0x23d0]
mov edx, dword [esi + 0x23d8]
sub edx, edi
sar edx, 2
cmp edx, 0x10
jae 0x6ed6d6
mov ebx, dword [esi + 0x23d4]
mov eax, ebx
sub eax, edi
sar eax, 2
push 0x40
mov dword [ebp - 0xc], eax
call fcn.008f6480
add esp, 4
test edi, edi
je 0x6ed6ab
test eax, eax
mov dword [ebp - 4], eax
jne 0x6ed67f
push 0x40
call fcn.00694cd0
add esp, 4
mov dword [ebp - 4], eax
cmp ebx, edi
je 0x6ed693
mov eax, dword [ebp - 4]
sub ebx, edi
push ebx
push edi
push eax
call fcn.0067f500
add esp, 0xc
mov eax, dword [esi + 0x23d0]
test eax, eax
mov edi, dword [ebp - 4]
je 0x6ed6bb
push eax
call fcn.008f64c0
add esp, 4
jmp 0x6ed6bb
test eax, eax
jne 0x6ed6b9
push 0x40
call fcn.00694cd0
add esp, 4
mov edi, eax
mov ecx, dword [ebp - 0xc]
lea edx, [edi + ecx*4]
mov dword [esi + 0x23d0], edi
add edi, 0x40
mov dword [esi + 0x23d4], edx
mov dword [esi + 0x23d8], edi
mov eax, dword [esi + 0x23dc]
cmp eax, dword [esi + 0x23e0]
je 0x6ed76d
mov ecx, dword [esi + 0x23e0]
sub ecx, eax
xor edi, edi
sar ecx, 2
je 0x6ed742
jmp 0x6ed700
mov edx, dword [esi + 0x23dc]
cmp dword [edx + edi*4], 0
lea eax, [edx + edi*4]
je 0x6ed72c
mov eax, dword [eax]
test eax, eax
je 0x6ed71f
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx]
push 1
call eax
mov ecx, dword [esi + 0x23dc]
mov dword [ecx + edi*4], 0
mov edx, dword [esi + 0x23e0]
sub edx, dword [esi + 0x23dc]
add edi, 1
sar edx, 2
cmp edi, edx
jb 0x6ed700
mov eax, dword [esi + 0x23e0]
cmp eax, eax
mov ecx, dword [esi + 0x23dc]
jne 0x6ed756
mov eax, ecx
jmp 0x6ed767
mov edi, eax
sub edi, eax
push edi
push eax
push ecx
call fcn.0067f500
add esp, 0xc
add eax, edi
mov dword [esi + 0x23e0], eax
mov ebx, dword [esi + 0x23dc]
mov eax, dword [esi + 0x23e4]
sub eax, ebx
sar eax, 2
cmp eax, 0x10
jae 0x6ed86a
mov eax, dword [esi + 0x23e0]
mov dword [ebp - 8], eax
sub eax, ebx
sar eax, 2
push 0x40
mov dword [ebp - 0xc], eax
call fcn.008f6480
add esp, 4
test ebx, ebx
je 0x6ed80e
mov edi, eax
test edi, edi
jne 0x6ed7e4
mov eax, dword [0x6eb6bc]
test eax, eax
je 0x6ed7ce
call eax
push 0x40
call fcn.0067eaf2
add esp, 4
test eax, eax
jne 0x6ed7e2
mov eax, dword [0x6eb6bc]
test eax, eax
jne 0x6ed7b5
push 0x68ed54
call fcn.008f8e57
add esp, 4
push 1
call fcn.0067a12a
mov edi, eax
cmp dword [ebp - 8], ebx
je 0x6ed7f9
mov eax, dword [ebp - 8]
sub eax, ebx
push eax
push ebx
push edi
call fcn.0067f500
add esp, 0xc
mov eax, dword [esi + 0x23dc]
test eax, eax
je 0x6ed84f
push eax
call fcn.008f64c0
add esp, 4
jmp 0x6ed84f
test eax, eax
jne 0x6ed84d
mov eax, dword [0x6eb6bc]
test eax, eax
je 0x6ed839
jmp 0x6ed820
call eax
push 0x40
call fcn.0067eaf2
add esp, 4
test eax, eax
jne 0x6ed84d
mov eax, dword [0x6eb6bc]
test eax, eax
jne 0x6ed820
push 0x68ed54
call fcn.008f8e57
add esp, 4
push 1
call fcn.0067a12a
mov edi, eax
mov ecx, dword [ebp - 0xc]
lea edx, [edi + ecx*4]
mov dword [esi + 0x23dc], edi
add edi, 0x40
mov dword [esi + 0x23e0], edx
mov dword [esi + 0x23e4], edi
mov eax, dword [esi + 0x23e8]
mov edi, dword [eax]
cmp edi, eax
je 0x6ed899
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x23e8]
jne 0x6ed876
mov eax, dword [esi + 0x23e8]
mov dword [eax], eax
mov eax, dword [esi + 0x23e8]
lea edi, [esi + 0x23ec]
xor ebx, ebx
mov dword [eax + 4], eax
cmp dword [edi + 4], ebx
je 0x6ed906
mov eax, dword [edi]
cmp eax, ebx
jne 0x6ed8c4
mov eax, 0x6eb740
jmp 0x6ed8c7
add eax, 4
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.006eb000
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb744
je 0x6ed8df
lea ecx, [eax + 8]
mov dword [ecx], eax
mov eax, dword [edi]
cmp eax, ebx
jne 0x6ed8ee
mov eax, 0x6eb740
jmp 0x6ed8f1
add eax, 4
mov dword [eax], ebx
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb748
je 0x6ed901
lea ecx, [eax + 0xc]
mov dword [ecx], eax
mov dword [edi + 4], ebx
cmp dword [esi + 0x23fc], ebx
lea edi, [esi + 0x23f8]
je 0x6ed963
mov eax, dword [edi]
cmp eax, ebx
jne 0x6ed921
mov eax, 0x6eb740
jmp 0x6ed924
add eax, 4
mov ecx, dword [eax]
push ecx
mov ecx, edi
call fcn.006eb000
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb744
je 0x6ed93c
lea ecx, [eax + 8]
mov dword [ecx], eax
mov eax, dword [edi]
cmp eax, ebx
jne 0x6ed94b
mov eax, 0x6eb740
jmp 0x6ed94e
add eax, 4
mov dword [eax], ebx
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb748
je 0x6ed95e
lea ecx, [eax + 0xc]
mov dword [ecx], eax
mov dword [edi + 4], ebx
mov dword [esi + 0x2404], ebx
mov eax, dword [esi + 0x2408]
mov edi, dword [eax]
cmp edi, eax
je 0x6ed99a
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x2408]
jne 0x6ed975
xor ebx, ebx
mov eax, dword [esi + 0x2408]
mov dword [eax], eax
mov eax, dword [esi + 0x2408]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x240c]
mov edi, dword [eax]
cmp edi, eax
je 0x6ed9dc
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x240c]
jne 0x6ed9b7
xor ebx, ebx
mov eax, dword [esi + 0x240c]
mov dword [eax], eax
mov eax, dword [esi + 0x240c]
lea edi, [esi + 0x2410]
mov dword [eax + 4], eax
cmp dword [edi + 4], ebx
je 0x6eda47
mov eax, dword [edi]
cmp eax, ebx
jne 0x6eda05
mov eax, 0x6eb74c
jmp 0x6eda08
add eax, 4
mov edx, dword [eax]
push edx
mov ecx, edi
call fcn.006e74c0
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb750
je 0x6eda20
lea ecx, [eax + 8]
mov dword [ecx], eax
mov eax, dword [edi]
cmp eax, ebx
jne 0x6eda2f
mov eax, 0x6eb74c
jmp 0x6eda32
add eax, 4
mov dword [eax], ebx
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb754
je 0x6eda42
lea ecx, [eax + 0xc]
mov dword [ecx], eax
mov dword [edi + 4], ebx
cmp dword [esi + 0x2420], ebx
lea edi, [esi + 0x241c]
je 0x6edaa4
mov eax, dword [edi]
cmp eax, ebx
jne 0x6eda62
mov eax, 0x6eb74c
jmp 0x6eda65
add eax, 4
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.006e74c0
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb750
je 0x6eda7d
lea ecx, [eax + 8]
mov dword [ecx], eax
mov eax, dword [edi]
cmp eax, ebx
jne 0x6eda8c
mov eax, 0x6eb74c
jmp 0x6eda8f
add eax, 4
mov dword [eax], ebx
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb754
je 0x6eda9f
lea ecx, [eax + 0xc]
mov dword [ecx], eax
mov dword [edi + 4], ebx
cmp dword [esi + 0x242c], ebx
lea edi, [esi + 0x2428]
je 0x6edb01
mov eax, dword [edi]
cmp eax, ebx
jne 0x6edabf
mov eax, 0x6eb74c
jmp 0x6edac2
add eax, 4
mov ecx, dword [eax]
push ecx
mov ecx, edi
call fcn.006e74c0
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb750
je 0x6edada
lea ecx, [eax + 8]
mov dword [ecx], eax
mov eax, dword [edi]
cmp eax, ebx
jne 0x6edae9
mov eax, 0x6eb74c
jmp 0x6edaec
add eax, 4
mov dword [eax], ebx
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb754
je 0x6edafc
lea ecx, [eax + 0xc]
mov dword [ecx], eax
mov dword [edi + 4], ebx
mov dword [esi + 0x2438], ebx
mov dword [esi + 0x2434], ebx
mov eax, dword [esi + 0x243c]
mov edi, dword [eax]
cmp edi, eax
je 0x6edb43
lea esp, [esp]
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x243c]
jne 0x6edb20
mov eax, dword [esi + 0x243c]
mov dword [eax], eax
mov eax, dword [esi + 0x243c]
lea edi, [esi + 0x2440]
xor ebx, ebx
mov dword [eax + 4], eax
cmp dword [edi + 4], ebx
je 0x6edbb0
mov eax, dword [edi]
cmp eax, ebx
jne 0x6edb6e
mov eax, 0x6eb74c
jmp 0x6edb71
add eax, 4
mov edx, dword [eax]
push edx
mov ecx, edi
call fcn.006e74c0
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb750
je 0x6edb89
lea ecx, [eax + 8]
mov dword [ecx], eax
mov eax, dword [edi]
cmp eax, ebx
jne 0x6edb98
mov eax, 0x6eb74c
jmp 0x6edb9b
add eax, 4
mov dword [eax], ebx
mov eax, dword [edi]
cmp eax, ebx
mov ecx, 0x6eb754
je 0x6edbab
lea ecx, [eax + 0xc]
mov dword [ecx], eax
mov dword [edi + 4], ebx
mov dword [esi + 0x244c], ebx
mov eax, dword [esi + 0x2450]
mov edi, dword [eax]
cmp edi, eax
je 0x6edbe5
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x2450]
jne 0x6edbc2
mov eax, dword [esi + 0x2450]
mov dword [eax], eax
mov eax, dword [esi + 0x2450]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x2454]
mov edi, dword [eax]
cmp edi, eax
je 0x6edc25
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x2454]
jne 0x6edc02
mov eax, dword [esi + 0x2454]
mov dword [eax], eax
mov eax, dword [esi + 0x2454]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x2458]
mov edi, dword [eax]
cmp edi, eax
je 0x6edc65
mov ebx, edi
mov edi, dword [edi]
lea ecx, [ebx + 8]
mov dword [ecx], 0x68ed34
call fcn.008924a0
push ebx
call fcn.008f64c0
add esp, 4
cmp edi, dword [esi + 0x2458]
jne 0x6edc42
mov eax, dword [esi + 0x2458]
mov dword [eax], eax
mov eax, dword [esi + 0x2458]
mov dword [eax + 4], eax
xor eax, eax
pop edi
mov dword [esi + 0x245c], eax
mov dword [esi + 0x2460], eax
pop esi
pop ebx
mov esp, ebp
pop ebp
ret