Function at 0x494880
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xffffffb8
mov eax, 0x69d2ab
xor edx, edx
push ebx
push esi
push edi
mov esi, dword [ebp + 8]
mov dword [ebp - 0x500], 0x6bc194
mov dword [ebp - 0x4fc], esp
mov dword [ebp - 0x504], eax
mov word [ebp - 0x4f8], 0
mov dword [ebp - 0x4ec], edx
mov ecx, dword fs:[0]
mov dword [ebp - 0x508], ecx
lea eax, [ebp - 0x508]
mov dword fs:[0], eax
push 0
call fcn.006a99d0
pop ecx
mov dword [ebp - 0x50c], eax
mov word [ebp - 0x4f8], 0x14
push 0xa
lea edx, [ebp - 0xb10]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
call fcn.006a55f4
add esp, 0xc
lea edx, [ebp - 0x170]
push eax
lea eax, [ebp - 0x514]
push eax
push 0x6ba9c7
push edx
call fcn.0069a6ec
add esp, 0xc
push eax
inc dword [ebp - 0x4ec]
mov ecx, dword [ebp + 0x10]
push ecx
lea eax, [ebp - 0x180]
push eax
call fcn.0042b368
add esp, 0xc
lea edx, [ebp - 0x180]
push edx
inc dword [ebp - 0x4ec]
lea ecx, [ebp - 0x10]
push ecx
call fcn.00409058
add esp, 0xc
inc dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x178]
test eax, eax
je 0x494a29
mov edx, dword [ebp - 0x178]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x4949cf
mov eax, dword [ebp - 0x178]
add eax, 0xfffffff4
mov dword [ebp - 0x518], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x518]
cmp edx, ecx
je 0x4949c6
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x518]
cmp eax, edx
je 0x4949bf
mov ecx, dword [ebp - 0x518]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x518]
mov edx, dword [eax]
inc edx
jmp 0x4949cb
mov edx, 1
jmp 0x4949cb
mov edx, 1
test edx, edx
jne 0x494a29
mov eax, dword [ebp - 0x178]
add eax, 0xfffffff4
mov dword [ebp - 0x51c], eax
mov ecx, dword [ebp - 0x178]
add ecx, 0xfffffff4
mov dword [ebp - 0x520], ecx
mov eax, dword [ebp - 0x520]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x524], edx
lea eax, [ebp - 0x180]
mov ecx, dword [ebp - 0x524]
mov dword [ebp - 0x178], ecx
mov dword [ebp - 0x528], eax
mov edx, dword [ebp - 0x528]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xb28], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x168]
test eax, eax
je 0x494af9
mov edx, dword [ebp - 0x168]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x494a9f
mov eax, dword [ebp - 0x168]
add eax, 0xfffffff4
mov dword [ebp - 0x52c], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x52c]
cmp edx, ecx
je 0x494a96
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x52c]
cmp eax, edx
je 0x494a8f
mov ecx, dword [ebp - 0x52c]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x52c]
mov edx, dword [eax]
inc edx
jmp 0x494a9b
mov edx, 1
jmp 0x494a9b
mov edx, 1
test edx, edx
jne 0x494af9
mov eax, dword [ebp - 0x168]
add eax, 0xfffffff4
mov dword [ebp - 0x530], eax
mov ecx, dword [ebp - 0x168]
add ecx, 0xfffffff4
mov dword [ebp - 0x534], ecx
mov eax, dword [ebp - 0x534]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x538], edx
lea eax, [ebp - 0x170]
mov ecx, dword [ebp - 0x538]
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x53c], eax
mov edx, dword [ebp - 0x53c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xb38], ecx
mov word [ebp - 0x4f8], 8
xor ebx, ebx
jmp 0x494bad
mov dword [ebp - 0x548], ebx
mov eax, dword [ebp - 8]
mov edx, dword [eax - 0xc]
inc edx
dec edx
jle 0x494b23
lea ecx, [ebp - 0x10]
push ecx
call fcn.0069c29c
pop ecx
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x54c], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x54c]
cmp edx, ecx
je 0x494b4c
push 0xffffffffffffffff
mov eax, dword [ebp - 0x54c]
push eax
call sub.KERNEL32.DLL_InterlockedExchange
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0x548]
add edx, ecx
movsx eax, byte [edx]
mov dword [ebp - 0x544], eax
mov edx, dword [ebp - 0x544]
push edx
call fcn.006a41c0
pop ecx
push eax
mov dword [ebp - 0x540], ebx
mov ecx, dword [ebp - 8]
mov eax, dword [ecx - 0xc]
inc eax
dec eax
jle 0x494b88
lea edx, [ebp - 0x10]
push edx
call fcn.0069c29c
pop ecx
mov edi, dword [ebp - 8]
add edi, 0xfffffff4
cmp edi, 0x6ff36c
je 0x494b9e
push 0xffffffffffffffff
push edi
call sub.KERNEL32.DLL_InterlockedExchange
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x540]
add eax, edx
pop ecx
mov byte [eax], cl
inc ebx
mov eax, dword [ebp - 8]
mov edx, dword [eax - 4]
cmp ebx, edx
jb 0x494b09
lea ecx, [ebp - 0x10]
push ecx
lea eax, [esi + 0x80]
push eax
lea edx, [ebp - 0xb50]
push edx
call fcn.00498f9c
mov word [ebp - 0x4f8], 8
mov ecx, dword [esi + 0xa4]
add esp, 0xc
mov dword [ebp - 0x550], ecx
mov eax, dword [ebp - 0x550]
mov dword [ebp - 0xb58], eax
mov edx, dword [ebp - 0xb58]
mov ecx, dword [ebp - 0xb48]
cmp edx, ecx
setne al
and eax, 1
test al, al
je 0x49544f
mov edx, dword [ebp - 0xb48]
mov ecx, dword [edx + 0x140]
mov eax, dword [ebp - 0x50c]
cmp ecx, eax
jge 0x494efa
mov edx, dword [ebp - 0xb48]
add edx, 0x148
mov dword [ebp - 0x554], edx
mov ecx, dword [ebp - 0x554]
mov eax, dword [ecx]
mov dword [ebp - 0xb70], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0xb6c], eax
lea eax, [esi + 0xb8]
mov edx, dword [ebp - 0x554]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xb68], ecx
mov dword [ebp - 0x558], eax
mov edx, dword [ebp - 0x558]
mov ecx, dword [edx + 0x24]
mov dword [ebp - 0x55c], ecx
mov eax, dword [ebp - 0x55c]
mov dword [ebp - 0xb78], eax
mov edx, dword [ebp - 0xb78]
mov ecx, dword [ebp - 0xb68]
cmp edx, ecx
sete al
and eax, 1
test al, al
je 0x494cc9
mov edx, dword [ebp - 0x558]
mov ecx, dword [edx + 0x24]
lea edx, [ebp - 0xb90]
mov dword [ebp - 0x560], ecx
mov eax, dword [ebp - 0x560]
mov dword [ebp - 0xb88], eax
jmp 0x494e9b
mov ecx, dword [ebp - 0xb68]
mov eax, dword [ecx]
mov dword [ebp - 0x564], eax
mov edx, dword [ebp - 0x564]
mov dword [ebp - 0xb98], edx
mov ecx, dword [ebp - 0xb68]
mov edx, dword [ebp - 0xb68]
mov eax, dword [ecx]
mov ecx, dword [edx + 4]
mov dword [ecx], eax
mov eax, dword [ebp - 0xb68]
mov ecx, dword [ebp - 0xb68]
mov edx, dword [eax + 4]
mov eax, dword [ecx]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x558]
dec dword [edx + 0x28]
mov ecx, dword [ebp - 0xb68]
add ecx, 8
mov dword [ebp - 0x568], ecx
mov eax, dword [ebp - 0x568]
mov dword [ebp - 0x184], eax
mov edx, dword [ebp - 0x184]
test edx, edx
je 0x494e45
dec dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0x44
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x184]
add ecx, 8
mov dword [ebp - 0x56c], ecx
mov eax, dword [ebp - 0x56c]
mov edx, dword [eax + 8]
test edx, edx
je 0x494e3c
mov ecx, dword [ebp - 0x56c]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x494dd9
mov ecx, dword [ebp - 0x56c]
mov eax, dword [ecx + 8]
add eax, 0xfffffff4
mov dword [ebp - 0x570], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x570]
cmp edx, ecx
je 0x494dd0
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x570]
cmp eax, edx
je 0x494dc9
mov ecx, dword [ebp - 0x570]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x570]
mov edx, dword [eax]
inc edx
jmp 0x494dd5
mov edx, 1
jmp 0x494dd5
mov edx, 1
test edx, edx
jne 0x494e3c
mov eax, dword [ebp - 0x56c]
mov ecx, dword [eax + 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x574], ecx
mov eax, dword [ebp - 0x56c]
mov edx, dword [eax + 8]
add edx, 0xfffffff4
mov dword [ebp - 0x578], edx
mov ecx, dword [ebp - 0x578]
push ecx
call fcn.0067ac7c
pop ecx
xor eax, eax
mov dword [ebp - 0x57c], eax
mov edx, dword [ebp - 0x56c]
mov ecx, dword [ebp - 0x57c]
mov dword [edx + 8], ecx
mov eax, dword [ebp - 0x56c]
mov dword [ebp - 0x580], eax
mov edx, dword [ebp - 0x580]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xba8], ecx
mov word [ebp - 0x4f8], 0x38
mov eax, dword [ebp - 0xb68]
mov dword [ebp - 0x584], eax
mov edx, dword [ebp - 0x558]
mov eax, dword [ebp - 0x584]
mov ecx, dword [edx + 0x18]
mov dword [eax], ecx
mov edx, dword [ebp - 0x558]
mov ecx, dword [ebp - 0x584]
mov dword [edx + 0x18], ecx
mov eax, dword [ebp - 0xba0]
mov dword [ebp - 0xb90], eax
mov eax, dword [ebp - 0xb9c]
mov dword [ebp - 0xb8c], eax
mov edx, dword [ebp - 0xb98]
mov dword [ebp - 0xb88], edx
lea edx, [ebp - 0xb90]
mov eax, dword [ebp - 0xb50]
add esp, 0xfffffff0
mov dword [ebp - 0xbc0], eax
mov eax, dword [ebp - 0xb4c]
mov dword [ebp - 0xbbc], eax
mov ecx, dword [ebp - 0xb48]
mov dword [ebp - 0xbb8], ecx
lea ecx, [esi + 0x80]
mov eax, dword [ebp - 0xbc0]
mov dword [esp], eax
mov eax, dword [ebp - 0xbbc]
mov dword [esp + 4], eax
lea eax, [ebp - 0xbd0]
mov edx, dword [ebp - 0xbb8]
mov dword [esp + 8], edx
push ecx
push eax
call fcn.00485fcc
add esp, 0x18
jmp 0x49544f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0xb48]
add edx, 0x28
mov dword [ecx], edx
mov eax, dword [ebp - 0xb48]
add eax, 0x148
mov dword [ebp - 0x588], eax
mov edx, dword [ebp - 0x588]
mov ecx, dword [edx]
mov dword [ebp - 0xbe0], ecx
mov ecx, dword [edx + 4]
mov dword [ebp - 0xbdc], ecx
lea ecx, [esi + 0xb8]
mov eax, dword [ebp - 0x588]
mov edx, dword [eax + 8]
mov dword [ebp - 0xbd8], edx
mov dword [ebp - 0x58c], ecx
mov eax, dword [ebp - 0x58c]
mov edx, dword [eax + 0x24]
mov dword [ebp - 0x590], edx
mov ecx, dword [ebp - 0x590]
mov dword [ebp - 0xbe8], ecx
mov eax, dword [ebp - 0xbe8]
mov edx, dword [ebp - 0xbd8]
cmp eax, edx
sete cl
and ecx, 1
test cl, cl
je 0x494fa4
mov eax, dword [ebp - 0x58c]
mov edx, dword [eax + 0x24]
lea eax, [ebp - 0xc00]
mov dword [ebp - 0x594], edx
mov ecx, dword [ebp - 0x594]
mov dword [ebp - 0xbf8], ecx
jmp 0x495146
mov edx, dword [ebp - 0xbd8]
mov ecx, dword [edx]
mov dword [ebp - 0x598], ecx
mov eax, dword [ebp - 0x598]
mov dword [ebp - 0xc08], eax
mov edx, dword [ebp - 0xbd8]
mov eax, dword [ebp - 0xbd8]
mov ecx, dword [edx]
mov edx, dword [eax + 4]
mov dword [edx], ecx
mov ecx, dword [ebp - 0xbd8]
mov edx, dword [ebp - 0xbd8]
mov eax, dword [ecx + 4]
mov ecx, dword [edx]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x58c]
dec dword [eax + 0x28]
mov edx, dword [ebp - 0xbd8]
add edx, 8
mov dword [ebp - 0x59c], edx
mov ecx, dword [ebp - 0x59c]
mov dword [ebp - 0x1a0], ecx
mov eax, dword [ebp - 0x1a0]
test eax, eax
je 0x4950f0
dec dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0x68
dec dword [ebp - 0x4ec]
mov ebx, dword [ebp - 0x1a0]
add ebx, 8
mov eax, dword [ebx + 8]
test eax, eax
je 0x4950e7
mov edx, dword [ebx + 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x49509c
mov eax, dword [ebx + 8]
add eax, 0xfffffff4
mov dword [ebp - 0x5a0], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x5a0]
cmp edx, ecx
je 0x495093
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x5a0]
cmp eax, edx
je 0x49508c
mov ecx, dword [ebp - 0x5a0]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x5a0]
mov edx, dword [eax]
inc edx
jmp 0x495098
mov edx, 1
jmp 0x495098
mov edx, 1
test edx, edx
jne 0x4950e7
mov eax, dword [ebx + 8]
add eax, 0xfffffff4
mov dword [ebp - 0x5a4], eax
mov ecx, dword [ebx + 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x5a8], ecx
mov eax, dword [ebp - 0x5a8]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x5ac], edx
mov ecx, dword [ebp - 0x5ac]
mov dword [ebx + 8], ecx
mov dword [ebp - 0x5b0], ebx
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 8]
mov dword [ebp - 0xc18], edx
mov word [ebp - 0x4f8], 0x5c
mov ecx, dword [ebp - 0xbd8]
mov dword [ebp - 0x5b4], ecx
mov eax, dword [ebp - 0x58c]
mov ecx, dword [ebp - 0x5b4]
mov edx, dword [eax + 0x18]
mov dword [ecx], edx
mov eax, dword [ebp - 0x58c]
mov edx, dword [ebp - 0x5b4]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp - 0xc10]
mov dword [ebp - 0xc00], ecx
mov ecx, dword [ebp - 0xc0c]
mov dword [ebp - 0xbfc], ecx
mov eax, dword [ebp - 0xc08]
mov dword [ebp - 0xbf8], eax
lea eax, [ebp - 0xc00]
mov word [ebp - 0x4f8], 0x80
xor edx, edx
mov dword [ebp - 0x5b8], edx
lea edx, [ebp - 0x194]
mov ecx, dword [ebp - 0x5b8]
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x5bc], 0x6ff378
mov eax, dword [ebp - 0x5bc]
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x5c0], edx
mov ecx, dword [ebp - 0x5c0]
mov edx, 0x6ff36c
cmp edx, 0x6ff36c
mov eax, dword [ecx + 8]
mov dword [ebp - 0xc28], eax
je 0x4951ab
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
lea eax, [ebp - 0x10]
mov word [ebp - 0x4f8], 0x98
mov ecx, dword [ebp - 0x50c]
lea edx, [ebp - 0x194]
mov dword [ebp - 0x19c], ecx
push eax
push edx
call fcn.0069a2e0
add esp, 8
lea ecx, [esi + 0xb8]
mov dword [ebp - 0x5c4], ecx
lea eax, [ebp - 0x19c]
push eax
add esp, 0xfffffff0
mov edx, dword [ebp - 0x5c4]
mov ecx, dword [edx + 0x24]
mov dword [ebp - 0x5c8], ecx
mov eax, dword [ebp - 0x5c8]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x5c4]
push edx
lea ecx, [ebp - 0xc40]
push ecx
call fcn.00498be0
mov eax, dword [esi + 0xdc]
add esp, 0x1c
mov dword [ebp - 0x5cc], eax
mov edx, dword [ebp - 0x5cc]
mov dword [ebp - 0xc48], edx
mov ecx, dword [ebp - 0xb48]
push esi
lea esi, [ebp - 0xc50]
lea edi, [ecx + 0x148]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xb48]
pop esi
add eax, 0x148
mov dword [ebp - 0x5d0], eax
mov edx, dword [ebp - 0x5d0]
mov ecx, dword [edx + 8]
mov edx, dword [ebp - 0x5d0]
mov eax, dword [ecx + 4]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0xb48]
mov al, byte [ecx + 0x20]
test al, al
je 0x4952b8
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx]
mov eax, dword [ecx + 0x90]
test eax, eax
jle 0x4952b8
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx]
mov eax, dword [ecx + 0x90]
mov edx, dword [ebp - 0x50c]
cmp eax, edx
jg 0x4952b8
mov ecx, dword [ebp - 0xb48]
mov byte [ecx + 0x20], 0
mov eax, dword [ebp - 0xb48]
mov al, byte [eax + 0x20]
push eax
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x18c]
test edx, edx
je 0x495378
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x49531e
mov ebx, dword [ebp - 0x18c]
add ebx, 0xfffffff4
cmp ebx, 0x6ff36c
je 0x495315
cmp ebx, 0x6ff36c
je 0x49530e
push ebx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebx]
inc eax
jmp 0x49531a
mov eax, 1
jmp 0x49531a
mov eax, 1
test eax, eax
jne 0x495378
mov edx, dword [ebp - 0x18c]
add edx, 0xfffffff4
mov dword [ebp - 0x5d4], edx
mov ecx, dword [ebp - 0x18c]
add ecx, 0xfffffff4
mov dword [ebp - 0x5d8], ecx
mov eax, dword [ebp - 0x5d8]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x5dc], edx
lea eax, [ebp - 0x194]
mov ecx, dword [ebp - 0x5dc]
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x5e0], eax
mov edx, dword [ebp - 0x5e0]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc58], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 8]
test eax, eax
je 0x495433
mov edx, dword [ebp - 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x4953e5
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x5e4], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x5e4]
cmp edx, ecx
je 0x4953dc
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x5e4]
cmp eax, edx
je 0x4953d5
mov ecx, dword [ebp - 0x5e4]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x5e4]
mov edx, dword [eax]
inc edx
jmp 0x4953e1
mov edx, 1
jmp 0x4953e1
mov edx, 1
test edx, edx
jne 0x495433
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x5e8], eax
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x5ec], ecx
mov eax, dword [ebp - 0x5ec]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x5f0], edx
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x5f0]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x5f4], eax
mov edx, dword [ebp - 0x5f4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc68], ecx
pop eax
mov edx, dword [ebp - 0x508]
mov dword fs:[0], edx
jmp 0x498bd6
mov ecx, dword [esi + 0xa8]
mov eax, dword [esi + 0xe8]
cmp ecx, eax
jb 0x49572a
mov edx, dword [ebp - 0x50c]
add edx, 0xfffffc7c
mov dword [ebp - 0x5f8], edx
mov word [ebp - 0x4f8], 8
mov ecx, dword [esi + 0xdc]
mov eax, dword [ecx]
mov dword [ebp - 0x5fc], eax
mov edx, dword [ebp - 0x5fc]
mov dword [ebp - 0xc78], edx
mov ecx, dword [ebp - 0xc78]
mov eax, dword [ecx + 8]
mov edx, dword [ebp - 0x5f8]
cmp eax, edx
jle 0x4954b1
inc dword [esi + 0xec]
mov ecx, dword [ebp - 0xc78]
add ecx, 0x10
mov dword [ebp - 0x600], ecx
mov eax, dword [ebp - 0x600]
push eax
lea edx, [esi + 0x80]
push edx
call fcn.00499080
add esp, 8
lea ecx, [esi + 0xb8]
mov dword [ebp - 0x604], ecx
mov eax, dword [ebp - 0x604]
mov edx, dword [eax + 0x24]
mov ecx, dword [edx]
mov dword [ebp - 0x608], ecx
mov eax, dword [ebp - 0x608]
mov dword [ebp - 0xc88], eax
mov edx, dword [ebp - 0x604]
mov ecx, dword [edx + 0x24]
mov dword [ebp - 0x60c], ecx
mov eax, dword [ebp - 0x60c]
mov dword [ebp - 0xc98], eax
mov edx, dword [ebp - 0xc98]
mov ecx, dword [ebp - 0xc88]
cmp edx, ecx
sete al
and eax, 1
test al, al
je 0x495558
mov edx, dword [ebp - 0x604]
mov ecx, dword [edx + 0x24]
lea edx, [ebp - 0xcb0]
mov dword [ebp - 0x610], ecx
mov eax, dword [ebp - 0x610]
mov dword [ebp - 0xca8], eax
jmp 0x49572a
mov ecx, dword [ebp - 0xc88]
mov eax, dword [ecx]
mov dword [ebp - 0x614], eax
mov edx, dword [ebp - 0x614]
mov dword [ebp - 0xcb8], edx
mov ecx, dword [ebp - 0xc88]
mov edx, dword [ebp - 0xc88]
mov eax, dword [ecx]
mov ecx, dword [edx + 4]
mov dword [ecx], eax
mov eax, dword [ebp - 0xc88]
mov ecx, dword [ebp - 0xc88]
mov edx, dword [eax + 4]
mov eax, dword [ecx]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x604]
dec dword [edx + 0x28]
mov ecx, dword [ebp - 0xc88]
add ecx, 8
mov dword [ebp - 0x618], ecx
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0x1a4], eax
mov edx, dword [ebp - 0x1a4]
test edx, edx
je 0x4956d4
dec dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0xc8
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x1a4]
add ecx, 8
mov dword [ebp - 0x61c], ecx
mov eax, dword [ebp - 0x61c]
mov edx, dword [eax + 8]
test edx, edx
je 0x4956cb
mov ecx, dword [ebp - 0x61c]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x495668
mov ecx, dword [ebp - 0x61c]
mov eax, dword [ecx + 8]
add eax, 0xfffffff4
mov dword [ebp - 0x620], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x620]
cmp edx, ecx
je 0x49565f
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x620]
cmp eax, edx
je 0x495658
mov ecx, dword [ebp - 0x620]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x620]
mov edx, dword [eax]
inc edx
jmp 0x495664
mov edx, 1
jmp 0x495664
mov edx, 1
test edx, edx
jne 0x4956cb
mov eax, dword [ebp - 0x61c]
mov ecx, dword [eax + 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x624], ecx
mov eax, dword [ebp - 0x61c]
mov edx, dword [eax + 8]
add edx, 0xfffffff4
mov dword [ebp - 0x628], edx
mov ecx, dword [ebp - 0x628]
push ecx
call fcn.0067ac7c
pop ecx
xor eax, eax
mov dword [ebp - 0x62c], eax
mov edx, dword [ebp - 0x61c]
mov ecx, dword [ebp - 0x62c]
mov dword [edx + 8], ecx
mov eax, dword [ebp - 0x61c]
mov dword [ebp - 0x630], eax
mov edx, dword [ebp - 0x630]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xcc8], ecx
mov word [ebp - 0x4f8], 0xbc
mov eax, dword [ebp - 0xc88]
mov dword [ebp - 0x634], eax
mov edx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x634]
mov ecx, dword [edx + 0x18]
mov dword [eax], ecx
mov edx, dword [ebp - 0x604]
mov ecx, dword [ebp - 0x634]
mov dword [edx + 0x18], ecx
mov eax, dword [ebp - 0xcc0]
mov dword [ebp - 0xcb0], eax
mov eax, dword [ebp - 0xcbc]
mov dword [ebp - 0xcac], eax
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xca8], edx
lea edx, [ebp - 0xcb0]
mov word [ebp - 0x4f8], 0xe0
xor eax, eax
lea edx, [ebp - 0x140]
mov dword [ebp - 0x638], eax
mov ecx, dword [ebp - 0x638]
mov dword [ebp - 0x138], ecx
mov dword [ebp - 0x63c], 0x6ff378
mov eax, dword [ebp - 0x63c]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x640], edx
mov ecx, dword [ebp - 0x640]
mov edx, 0x6ff36c
cmp edx, 0x6ff36c
mov eax, dword [ecx + 8]
mov dword [ebp - 0xcd8], eax
je 0x49578f
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor ecx, ecx
mov dword [ebp - 0x644], ecx
lea ecx, [ebp - 0x130]
mov eax, dword [ebp - 0x644]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x648], 0x6ff378
mov edx, dword [ebp - 0x648]
mov dword [ebp - 0x128], edx
mov dword [ebp - 0x64c], ecx
mov eax, dword [ebp - 0x64c]
mov ecx, 0x6ff36c
cmp ecx, 0x6ff36c
mov edx, dword [eax + 8]
mov dword [ebp - 0xce8], edx
je 0x4957f1
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor eax, eax
mov dword [ebp - 0x650], eax
lea eax, [ebp - 0x120]
mov edx, dword [ebp - 0x650]
mov dword [ebp - 0x118], edx
mov dword [ebp - 0x654], 0x6ff378
mov ecx, dword [ebp - 0x654]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x658], eax
mov edx, dword [ebp - 0x658]
mov eax, 0x6ff36c
cmp eax, 0x6ff36c
mov ecx, dword [edx + 8]
mov dword [ebp - 0xcf8], ecx
je 0x495852
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor edx, edx
mov dword [ebp - 0x65c], edx
lea edx, [ebp - 0x110]
mov ecx, dword [ebp - 0x65c]
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0x660], 0x6ff378
mov eax, dword [ebp - 0x660]
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x664], edx
mov ecx, dword [ebp - 0x664]
mov edx, 0x6ff36c
cmp edx, 0x6ff36c
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd08], eax
je 0x4958b4
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor ecx, ecx
mov dword [ebp - 0x668], ecx
lea ecx, [ebp - 0x100]
mov eax, dword [ebp - 0x668]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x66c], 0x6ff378
mov edx, dword [ebp - 0x66c]
mov dword [ebp - 0xf8], edx
mov dword [ebp - 0x670], ecx
mov eax, dword [ebp - 0x670]
mov ecx, 0x6ff36c
cmp ecx, 0x6ff36c
mov edx, dword [eax + 8]
mov dword [ebp - 0xd18], edx
je 0x495916
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor eax, eax
mov dword [ebp - 0xa4], eax
xor edx, edx
mov dword [ebp - 0xa0], edx
xor ecx, ecx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x674], 0x40
mov dword [ebp - 0x678], 1
mov eax, dword [ebp - 0x678]
mov edx, dword [ebp - 0x674]
cmp eax, edx
jbe 0x495960
lea ecx, [ebp - 0x678]
jmp 0x495966
lea ecx, [ebp - 0x674]
mov eax, dword [ecx]
xor edx, edx
mov dword [ebp - 0xa8], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x84], edx
xor edx, edx
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x67c], 0x40
mov dword [ebp - 0x680], 1
mov ecx, dword [ebp - 0x680]
mov eax, dword [ebp - 0x67c]
cmp ecx, eax
jbe 0x4959b2
lea edx, [ebp - 0x680]
jmp 0x4959b8
lea edx, [ebp - 0x67c]
mov eax, dword [edx]
xor ecx, ecx
mov dword [ebp - 0x88], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], eax
xor edx, edx
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x684], 0x40
mov dword [ebp - 0x688], 1
mov ecx, dword [ebp - 0x688]
mov eax, dword [ebp - 0x684]
cmp ecx, eax
jbe 0x495a01
lea edx, [ebp - 0x688]
jmp 0x495a07
lea edx, [ebp - 0x684]
mov eax, dword [edx]
xor ecx, ecx
mov dword [ebp - 0x68], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], eax
xor edx, edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x68c], 0x40
mov dword [ebp - 0x690], 1
mov ecx, dword [ebp - 0x690]
mov eax, dword [ebp - 0x68c]
cmp ecx, eax
jbe 0x495a4d
lea edx, [ebp - 0x690]
jmp 0x495a53
lea edx, [ebp - 0x68c]
mov eax, dword [edx]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x69c]
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 8
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x694], ecx
lea ecx, [ebp - 0x1b4]
mov word [ebp - 0x4f8], 0x158
push eax
mov edx, dword [ebp + 0x10]
push edx
push ecx
call fcn.0069a6ec
add esp, 0xc
inc dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x694]
push eax
lea edx, [ebp - 0x1b4]
push edx
push 0
lea ecx, [ebp - 0x140]
push ecx
mov eax, dword [0x6badc8]
push eax
call fcn.005d8e78
add esp, 0x14
mov byte [ebp - 0x148], al
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x1ac]
test edx, edx
je 0x495ba0
mov ecx, dword [ebp - 0x1ac]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x495b46
mov edx, dword [ebp - 0x1ac]
add edx, 0xfffffff4
mov dword [ebp - 0x6a0], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x6a0]
cmp ecx, eax
je 0x495b3d
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x6a0]
cmp edx, ecx
je 0x495b36
mov eax, dword [ebp - 0x6a0]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x6a0]
mov ecx, dword [edx]
inc ecx
jmp 0x495b42
mov ecx, 1
jmp 0x495b42
mov ecx, 1
test ecx, ecx
jne 0x495ba0
mov eax, dword [ebp - 0x1ac]
add eax, 0xfffffff4
mov dword [ebp - 0x6a4], eax
mov edx, dword [ebp - 0x1ac]
add edx, 0xfffffff4
mov dword [ebp - 0x6a8], edx
mov eax, dword [ebp - 0x6a8]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x6ac], edx
lea eax, [ebp - 0x1b4]
mov ecx, dword [ebp - 0x6ac]
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x6b0], eax
mov edx, dword [ebp - 0x6b0]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd28], ecx
mov word [ebp - 0x4f8], 8
mov al, byte [ebp - 0x148]
test al, al
je 0x4963ff
mov word [ebp - 0x4f8], 0x170
xor edx, edx
mov dword [ebp - 0x1d0], edx
xor ecx, ecx
mov dword [ebp - 0x1cc], ecx
xor eax, eax
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 0x6b4], 0x40
mov dword [ebp - 0x6b8], 1
mov edx, dword [ebp - 0x6b8]
mov ecx, dword [ebp - 0x6b4]
cmp edx, ecx
jbe 0x495c04
lea eax, [ebp - 0x6b8]
jmp 0x495c0a
lea eax, [ebp - 0x6b4]
mov edx, dword [eax]
xor ecx, ecx
mov dword [ebp - 0x1d4], edx
inc dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0x188
mov word [ebp - 0x4f8], 0x194
mov dword [ebp - 0x6bc], ecx
lea ecx, [ebp - 0x24c]
mov eax, dword [ebp - 0x6bc]
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x6c0], 0x6ff378
mov edx, dword [ebp - 0x6c0]
mov dword [ebp - 0x244], edx
mov dword [ebp - 0x6c4], ecx
mov eax, dword [ebp - 0x6c4]
mov ecx, 0x6ff36c
cmp ecx, 0x6ff36c
mov edx, dword [eax + 8]
mov dword [ebp - 0xd38], edx
je 0x495c86
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor eax, eax
mov dword [ebp - 0x238], eax
xor edx, edx
mov dword [ebp - 0x234], edx
xor ecx, ecx
mov dword [ebp - 0x224], ecx
mov dword [ebp - 0x6c8], 0x40
mov dword [ebp - 0x6cc], 1
mov eax, dword [ebp - 0x6cc]
mov edx, dword [ebp - 0x6c8]
cmp eax, edx
jbe 0x495cd0
lea ecx, [ebp - 0x6cc]
jmp 0x495cd6
lea ecx, [ebp - 0x6c8]
mov eax, dword [ecx]
xor edx, edx
mov dword [ebp - 0x23c], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x218], edx
xor edx, edx
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x204], edx
mov dword [ebp - 0x6d0], 0x40
mov dword [ebp - 0x6d4], 1
mov ecx, dword [ebp - 0x6d4]
mov eax, dword [ebp - 0x6d0]
cmp ecx, eax
jbe 0x495d28
lea edx, [ebp - 0x6d4]
jmp 0x495d2e
lea edx, [ebp - 0x6d0]
mov eax, dword [edx]
xor ecx, ecx
mov dword [ebp - 0x21c], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x1f8], ecx
mov dword [ebp - 0x1f4], eax
xor edx, edx
mov dword [ebp - 0x1e4], edx
mov dword [ebp - 0x6d8], 0x40
mov dword [ebp - 0x6dc], 1
mov ecx, dword [ebp - 0x6dc]
mov eax, dword [ebp - 0x6d8]
cmp ecx, eax
jbe 0x495d80
lea edx, [ebp - 0x6dc]
jmp 0x495d86
lea edx, [ebp - 0x6d8]
mov eax, dword [edx]
mov dword [ebp - 0x1fc], eax
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0x188
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x6e0], ecx
lea ecx, [ebp - 0x1d4]
mov eax, dword [ebp + 0x10]
push eax
mov eax, dword [0x6badc8]
mov edx, dword [ebp + 0x14]
push edx
push ecx
push eax
call fcn.005bb9e4
add esp, 0x10
xor edx, edx
mov dword [ebp - 0x6e4], edx
jmp 0x4961f6
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x6e8], ecx
mov eax, dword [ebp - 0x6e4]
mov dword [ebp - 0x6ec], eax
mov edx, dword [ebp - 0x6ec]
mov ecx, dword [ebp - 0x1d0]
shl edx, 4
add edx, ecx
lea ecx, [ebp - 0x24c]
mov dword [ebp - 0x6f0], edx
mov eax, dword [ebp - 0x6e8]
push eax
mov eax, dword [0x6badc8]
mov edx, dword [ebp - 0x6f0]
push edx
push ecx
push 0
push eax
call fcn.005d8e78
add esp, 0x14
test al, al
je 0x4961f0
mov edx, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x6e0]
cmp edx, ecx
jge 0x495e4b
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x6e0], eax
mov word [ebp - 0x4f8], 0x188
xor edi, edi
jmp 0x496005
mov eax, edi
mov edx, dword [ebp - 0xa0]
mov ebx, eax
mov eax, dword [ebp - 0x238]
shl ebx, 4
mov ecx, dword [ebp - 0x90]
add ebx, eax
cmp edx, ecx
je 0x495fed
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x6f4], eax
mov edx, dword [ebp - 0x6f4]
mov dword [ebp - 0x250], edx
test edx, edx
je 0x495fe4
mov word [ebp - 0x4f8], 0x1dc
xor eax, eax
mov dword [ebp - 0x6f8], eax
mov ecx, dword [ebp - 0x250]
mov eax, dword [ebp - 0x6f8]
mov dword [ecx + 8], eax
mov edx, dword [ebx + 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x495f32
mov eax, dword [ebx + 8]
mov dword [ebp - 0x6fc], eax
mov edx, dword [ebp - 0x250]
mov ecx, dword [ebp - 0x6fc]
mov dword [edx + 8], ecx
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x700], eax
mov edx, dword [ebp - 0x700]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd48], ecx
mov eax, dword [ebp - 0x250]
mov edx, dword [eax + 8]
add edx, 0xfffffff4
mov dword [ebp - 0x704], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x704]
cmp ecx, eax
je 0x495fdb
mov edx, dword [ebp - 0x704]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x495fdb
mov ecx, dword [ebx + 8]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x708], eax
mov edx, dword [ebp - 0x708]
push edx
mov ecx, dword [ebp - 0x708]
push ecx
mov eax, dword [ebp - 0x250]
push eax
call fcn.0069a874
add esp, 0xc
mov dword [ebp - 0x710], eax
mov edx, dword [ebp - 0x710]
add edx, 0xc
mov dword [ebp - 0x70c], edx
mov ecx, dword [ebp - 0x250]
mov eax, dword [ebp - 0x70c]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x714], edx
mov ecx, dword [ebp - 0x714]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd58], eax
mov edx, dword [ebp - 0x708]
mov dword [ebp - 0x718], edx
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x71c], ecx
mov eax, dword [ebp - 0x250]
mov edx, dword [eax + 8]
mov dword [ebp - 0x720], edx
mov ecx, dword [ebp - 0x718]
push ecx
mov eax, dword [ebp - 0x71c]
push eax
mov edx, dword [ebp - 0x720]
push edx
call fcn.0069cc60
add esp, 0xc
mov word [ebp - 0x4f8], 0x1d0
add dword [ebp - 0xa0], 0x10
jmp 0x496004
push ebx
mov ecx, dword [ebp - 0xa0]
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.004069b4
add esp, 0xc
inc edi
mov edx, dword [ebp - 0x234]
mov ecx, dword [ebp - 0x238]
sub edx, ecx
test edx, edx
jns 0x49601a
add edx, 0xf
sar edx, 4
cmp edi, edx
jb 0x495e5b
mov word [ebp - 0x4f8], 0x188
xor edi, edi
jmp 0x4961d0
mov eax, edi
mov edx, dword [ebp - 0x80]
mov ebx, eax
mov eax, dword [ebp - 0x218]
shl ebx, 4
mov ecx, dword [ebp - 0x70]
add ebx, eax
cmp edx, ecx
je 0x4961bb
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x724], eax
mov edx, dword [ebp - 0x724]
mov dword [ebp - 0x254], edx
test edx, edx
je 0x4961b5
mov word [ebp - 0x4f8], pe_nt_image_headers32
xor eax, eax
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x254]
mov eax, dword [ebp - 0x728]
mov dword [ecx + 8], eax
mov edx, dword [ebx + 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x496103
mov eax, dword [ebx + 8]
mov dword [ebp - 0x72c], eax
mov edx, dword [ebp - 0x254]
mov ecx, dword [ebp - 0x72c]
mov dword [edx + 8], ecx
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x730], eax
mov edx, dword [ebp - 0x730]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd68], ecx
mov eax, dword [ebp - 0x254]
mov edx, dword [eax + 8]
add edx, 0xfffffff4
mov dword [ebp - 0x734], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x734]
cmp ecx, eax
je 0x4961ac
mov edx, dword [ebp - 0x734]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x4961ac
mov ecx, dword [ebx + 8]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x738], eax
mov edx, dword [ebp - 0x738]
push edx
mov ecx, dword [ebp - 0x738]
push ecx
mov eax, dword [ebp - 0x254]
push eax
call fcn.0069a874
add esp, 0xc
mov dword [ebp - 0x740], eax
mov edx, dword [ebp - 0x740]
add edx, 0xc
mov dword [ebp - 0x73c], edx
mov ecx, dword [ebp - 0x254]
mov eax, dword [ebp - 0x73c]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x254]
mov dword [ebp - 0x744], edx
mov ecx, dword [ebp - 0x744]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd78], eax
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x748], edx
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x74c], ecx
mov eax, dword [ebp - 0x254]
mov edx, dword [eax + 8]
mov dword [ebp - 0x750], edx
mov ecx, dword [ebp - 0x748]
push ecx
mov eax, dword [ebp - 0x74c]
push eax
mov edx, dword [ebp - 0x750]
push edx
call fcn.0069cc60
add esp, 0xc
mov word [ebp - 0x4f8], 0x1f4
add dword [ebp - 0x80], 0x10
jmp 0x4961cf
push ebx
mov ecx, dword [ebp - 0x80]
push ecx
lea eax, [ebp - 0x88]
push eax
call fcn.004069b4
add esp, 0xc
inc edi
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
sub edx, ecx
test edx, edx
jns 0x4961e5
add edx, 0xf
sar edx, 4
cmp edi, edx
jb 0x496035
inc dword [ebp - 0x6e4]
mov eax, dword [ebp - 0x1cc]
mov edx, dword [ebp - 0x1d0]
sub eax, edx
test eax, eax
jns 0x49620b
add eax, 0xf
sar eax, 4
mov ecx, dword [ebp - 0x6e4]
cmp eax, ecx
ja 0x495dd6
mov eax, dword [ebp - 0x6e0]
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x1f4]
push edx
mov ecx, dword [ebp - 0x1f8]
push ecx
lea eax, [ebp - 0x1fc]
push eax
call fcn.0040445c
add esp, 0xc
mov edx, dword [ebp - 0x1f8]
mov dword [ebp - 0x754], edx
mov ecx, dword [ebp - 0x754]
push ecx
call fcn.0067ac7c
pop ecx
mov word [ebp - 0x4f8], 0x188
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x214]
push eax
mov edx, dword [ebp - 0x218]
push edx
lea ecx, [ebp - 0x21c]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x758], eax
mov edx, dword [ebp - 0x758]
push edx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x234]
push ecx
mov eax, dword [ebp - 0x238]
push eax
lea edx, [ebp - 0x23c]
push edx
call fcn.0040445c
add esp, 0xc
mov ecx, dword [ebp - 0x238]
mov dword [ebp - 0x75c], ecx
mov eax, dword [ebp - 0x75c]
push eax
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x244]
test edx, edx
je 0x4963b8
mov ecx, dword [ebp - 0x244]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x49635e
mov edx, dword [ebp - 0x244]
add edx, 0xfffffff4
mov dword [ebp - 0x760], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x760]
cmp ecx, eax
je 0x496355
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x760]
cmp edx, ecx
je 0x49634e
mov eax, dword [ebp - 0x760]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x760]
mov ecx, dword [edx]
inc ecx
jmp 0x49635a
mov ecx, 1
jmp 0x49635a
mov ecx, 1
test ecx, ecx
jne 0x4963b8
mov eax, dword [ebp - 0x244]
add eax, 0xfffffff4
mov dword [ebp - 0x764], eax
mov edx, dword [ebp - 0x244]
add edx, 0xfffffff4
mov dword [ebp - 0x768], edx
mov eax, dword [ebp - 0x768]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x76c], edx
lea eax, [ebp - 0x24c]
mov ecx, dword [ebp - 0x76c]
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x770], eax
mov edx, dword [ebp - 0x770]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd88], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x1cc]
push eax
mov edx, dword [ebp - 0x1d0]
push edx
lea ecx, [ebp - 0x1d4]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x774], eax
mov edx, dword [ebp - 0x774]
push edx
call fcn.0067ac7c
pop ecx
mov word [ebp - 0x4f8], 8
jmp 0x49640b
mov ecx, dword [ebp - 0x50c]
add ecx, 0xf
mov dword [ebp - 0x28], ecx
mov word [ebp - 0x4f8], 0x254
xor eax, eax
mov dword [ebp - 0x778], eax
lea eax, [ebp - 0x158]
mov edx, dword [ebp - 0x778]
mov dword [ebp - 0x150], edx
mov dword [ebp - 0x77c], 0x6ff378
mov ecx, dword [ebp - 0x77c]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x780], eax
mov edx, dword [ebp - 0x780]
mov eax, 0x6ff36c
cmp eax, 0x6ff36c
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd98], ecx
je 0x49646f
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
lea ecx, [ebp - 0x10]
mov word [ebp - 0x4f8], 8
mov edx, dword [ebp - 0x50c]
lea eax, [ebp - 0x158]
mov dword [ebp - 0x160], edx
push ecx
push eax
call fcn.0069a2e0
add esp, 8
lea edx, [esi + 0xb8]
mov dword [ebp - 0x784], edx
lea ecx, [ebp - 0x160]
push ecx
add esp, 0xfffffff0
mov eax, dword [ebp - 0x784]
mov edx, dword [eax + 0x24]
mov dword [ebp - 0x788], edx
mov ecx, dword [ebp - 0x788]
mov dword [esp + 8], ecx
mov eax, dword [ebp - 0x784]
push eax
lea edx, [ebp - 0xdb0]
push edx
call fcn.00498be0
mov ecx, dword [esi + 0xdc]
add esp, 0x1c
mov dword [ebp - 0x78c], ecx
lea edi, [ebp - 0x20]
mov eax, dword [ebp - 0x78c]
mov ecx, 4
mov dword [ebp - 0xdb8], eax
push esi
lea esi, [ebp - 0xdc0]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x18]
pop esi
xor ecx, ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x18], edx
mov word [ebp - 0x4f8], 0x278
mov dword [ebp - 0x798], ecx
lea ecx, [ebp - 0x384]
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x37c], eax
mov dword [ebp - 0x79c], 0x6ff378
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x37c], edx
mov dword [ebp - 0x7a0], ecx
mov eax, dword [ebp - 0x7a0]
mov ecx, 0x6ff36c
cmp ecx, 0x6ff36c
mov edx, dword [eax + 8]
mov dword [ebp - 0xdc8], edx
je 0x496580
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor eax, eax
mov dword [ebp - 0x7a4], eax
lea eax, [ebp - 0x374]
mov edx, dword [ebp - 0x7a4]
mov dword [ebp - 0x36c], edx
mov dword [ebp - 0x7a8], 0x6ff378
mov ecx, dword [ebp - 0x7a8]
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x7ac], eax
mov edx, dword [ebp - 0x7ac]
mov eax, 0x6ff36c
cmp eax, 0x6ff36c
mov ecx, dword [edx + 8]
mov dword [ebp - 0xdd8], ecx
je 0x4965e1
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor edx, edx
mov dword [ebp - 0x7b0], edx
lea edx, [ebp - 0x364]
mov ecx, dword [ebp - 0x7b0]
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x7b4], 0x6ff378
mov eax, dword [ebp - 0x7b4]
mov dword [ebp - 0x35c], eax
mov dword [ebp - 0x7b8], edx
mov ecx, dword [ebp - 0x7b8]
mov edx, 0x6ff36c
cmp edx, 0x6ff36c
mov eax, dword [ecx + 8]
mov dword [ebp - 0xde8], eax
je 0x496643
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor ecx, ecx
mov dword [ebp - 0x7bc], ecx
lea ecx, [ebp - 0x354]
mov eax, dword [ebp - 0x7bc]
mov dword [ebp - 0x34c], eax
mov dword [ebp - 0x7c0], 0x6ff378
mov edx, dword [ebp - 0x7c0]
mov dword [ebp - 0x34c], edx
mov dword [ebp - 0x7c4], ecx
mov eax, dword [ebp - 0x7c4]
mov ecx, 0x6ff36c
cmp ecx, 0x6ff36c
mov edx, dword [eax + 8]
mov dword [ebp - 0xdf8], edx
je 0x4966a5
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor eax, eax
mov dword [ebp - 0x7c8], eax
lea eax, [ebp - 0x344]
mov edx, dword [ebp - 0x7c8]
mov dword [ebp - 0x33c], edx
mov dword [ebp - 0x7cc], 0x6ff378
mov ecx, dword [ebp - 0x7cc]
mov dword [ebp - 0x33c], ecx
mov dword [ebp - 0x7d0], eax
mov edx, dword [ebp - 0x7d0]
mov eax, 0x6ff36c
cmp eax, 0x6ff36c
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe08], ecx
je 0x496706
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0x4ec]
xor edx, edx
mov dword [ebp - 0x2e8], edx
xor ecx, ecx
mov dword [ebp - 0x2e4], ecx
xor eax, eax
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 0x7d4], 0x40
mov dword [ebp - 0x7d8], 1
mov edx, dword [ebp - 0x7d8]
mov ecx, dword [ebp - 0x7d4]
cmp edx, ecx
jbe 0x496750
lea eax, [ebp - 0x7d8]
jmp 0x496756
lea eax, [ebp - 0x7d4]
mov edx, dword [eax]
xor ecx, ecx
mov dword [ebp - 0x2ec], edx
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x2c4], eax
xor edx, edx
mov dword [ebp - 0x2b4], edx
mov dword [ebp - 0x7dc], 0x40
mov dword [ebp - 0x7e0], 1
mov ecx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x7dc]
cmp ecx, eax
jbe 0x4967a8
lea edx, [ebp - 0x7e0]
jmp 0x4967ae
lea edx, [ebp - 0x7dc]
mov eax, dword [edx]
xor ecx, ecx
mov dword [ebp - 0x2cc], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], ecx
mov dword [ebp - 0x2a4], eax
xor edx, edx
mov dword [ebp - 0x294], edx
mov dword [ebp - 0x7e4], 0x40
mov dword [ebp - 0x7e8], 1
mov ecx, dword [ebp - 0x7e8]
mov eax, dword [ebp - 0x7e4]
cmp ecx, eax
jbe 0x496800
lea edx, [ebp - 0x7e8]
jmp 0x496806
lea edx, [ebp - 0x7e4]
mov eax, dword [edx]
xor ecx, ecx
mov dword [ebp - 0x2ac], eax
xor eax, eax
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x288], ecx
mov dword [ebp - 0x284], eax
xor edx, edx
mov dword [ebp - 0x274], edx
mov dword [ebp - 0x7ec], 0x40
mov dword [ebp - 0x7f0], 1
mov ecx, dword [ebp - 0x7f0]
mov eax, dword [ebp - 0x7ec]
cmp ecx, eax
jbe 0x496858
lea edx, [ebp - 0x7f0]
jmp 0x49685e
lea edx, [ebp - 0x7ec]
mov eax, dword [edx]
lea ecx, [ebp - 0x38c]
mov dword [ebp - 0x28c], eax
xor eax, eax
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
inc dword [ebp - 0x4ec]
mov dword [ebp - 0x794], ecx
mov dword [ebp - 0x7f4], eax
mov edx, dword [ebp - 0x7f4]
mov dword [ebp - 0x4cc], edx
mov word [ebp - 0x4f8], 0x2f0
mov ecx, dword [ebp - 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x49690f
mov edx, dword [ebp - 8]
lea eax, [ebp - 0x4d4]
mov dword [ebp - 0x7f8], edx
mov ecx, dword [ebp - 0x7f8]
mov dword [ebp - 0x4cc], ecx
mov dword [ebp - 0x7fc], eax
mov edx, dword [ebp - 0x7fc]
mov ecx, dword [edx + 8]
mov edx, 0x6ff36c
mov dword [ebp - 0xe18], ecx
mov eax, dword [ebp - 0x4cc]
add eax, 0xfffffff4
mov dword [ebp - 0x800], eax
mov ecx, dword [ebp - 0x800]
cmp edx, ecx
je 0x4969b2
mov eax, dword [ebp - 0x800]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x4969b2
mov edx, dword [ebp - 8]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x804], ecx
mov eax, dword [ebp - 0x804]
push eax
mov edx, dword [ebp - 0x804]
push edx
lea ecx, [ebp - 0x4d4]
push ecx
call fcn.0069a874
mov dword [ebp - 0x80c], eax
add esp, 0xc
mov eax, dword [ebp - 0x80c]
lea ecx, [ebp - 0x4d4]
add eax, 0xc
mov dword [ebp - 0x808], eax
mov edx, dword [ebp - 0x808]
mov dword [ebp - 0x4cc], edx
mov dword [ebp - 0x810], ecx
mov eax, dword [ebp - 0x810]
mov edx, dword [eax + 8]
mov dword [ebp - 0xe28], edx
mov ecx, dword [ebp - 0x804]
mov dword [ebp - 0x814], ecx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x818], eax
mov edx, dword [ebp - 0x4cc]
mov dword [ebp - 0x81c], edx
mov ecx, dword [ebp - 0x814]
push ecx
mov eax, dword [ebp - 0x818]
push eax
mov edx, dword [ebp - 0x81c]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0x278
mov ecx, dword [ebp - 0x794]
mov al, byte [ecx]
xor ecx, ecx
mov byte [ebp - 0x4c4], al
mov edx, dword [ebp - 0x794]
add edx, 8
mov dword [ebp - 0x820], edx
mov dword [ebp - 0x824], ecx
mov eax, dword [ebp - 0x824]
mov dword [ebp - 0x4b4], eax
mov word [ebp - 0x4f8], 0x308
mov edx, dword [ebp - 0x820]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x496a75
mov edx, dword [ebp - 0x820]
mov ecx, dword [edx + 8]
lea edx, [ebp - 0x4bc]
mov dword [ebp - 0x828], ecx
mov eax, dword [ebp - 0x828]
mov dword [ebp - 0x4b4], eax
mov dword [ebp - 0x82c], edx
mov ecx, dword [ebp - 0x82c]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0xe38], eax
mov edx, dword [ebp - 0x4b4]
add edx, 0xfffffff4
mov dword [ebp - 0x830], edx
mov eax, dword [ebp - 0x830]
cmp ecx, eax
je 0x496b24
mov edx, dword [ebp - 0x830]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x496b24
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 4]
mov dword [ebp - 0x834], edx
mov ecx, dword [ebp - 0x834]
push ecx
mov eax, dword [ebp - 0x834]
push eax
lea edx, [ebp - 0x4bc]
push edx
call fcn.0069a874
mov dword [ebp - 0x83c], eax
add esp, 0xc
mov ecx, dword [ebp - 0x83c]
lea edx, [ebp - 0x4bc]
add ecx, 0xc
mov dword [ebp - 0x838], ecx
mov eax, dword [ebp - 0x838]
mov dword [ebp - 0x4b4], eax
mov dword [ebp - 0x840], edx
mov ecx, dword [ebp - 0x840]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xe48], eax
mov edx, dword [ebp - 0x834]
mov dword [ebp - 0x844], edx
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x848], eax
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x84c], edx
mov ecx, dword [ebp - 0x844]
push ecx
mov eax, dword [ebp - 0x848]
push eax
mov edx, dword [ebp - 0x84c]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x4ec]
xor eax, eax
mov ecx, dword [ebp - 0x820]
add ecx, 0x10
mov dword [ebp - 0x850], ecx
mov dword [ebp - 0x854], eax
mov edx, dword [ebp - 0x854]
mov dword [ebp - 0x4a4], edx
mov ecx, dword [ebp - 0x850]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x496bc7
mov ecx, dword [ebp - 0x850]
mov eax, dword [ecx + 8]
lea ecx, [ebp - 0x4ac]
mov dword [ebp - 0x858], eax
mov edx, dword [ebp - 0x858]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x85c], ecx
mov eax, dword [ebp - 0x85c]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xe58], edx
mov ecx, dword [ebp - 0x4a4]
add ecx, 0xfffffff4
mov dword [ebp - 0x860], ecx
mov edx, dword [ebp - 0x860]
cmp eax, edx
je 0x496c76
mov ecx, dword [ebp - 0x860]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x496c76
mov eax, dword [ebp - 0x850]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x864], ecx
mov eax, dword [ebp - 0x864]
push eax
mov edx, dword [ebp - 0x864]
push edx
lea ecx, [ebp - 0x4ac]
push ecx
call fcn.0069a874
mov dword [ebp - 0x86c], eax
add esp, 0xc
mov eax, dword [ebp - 0x86c]
lea ecx, [ebp - 0x4ac]
add eax, 0xc
mov dword [ebp - 0x868], eax
mov edx, dword [ebp - 0x868]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x870], ecx
mov eax, dword [ebp - 0x870]
mov edx, dword [eax + 8]
mov dword [ebp - 0xe68], edx
mov ecx, dword [ebp - 0x864]
mov dword [ebp - 0x874], ecx
mov eax, dword [ebp - 0x850]
mov edx, dword [eax + 8]
mov dword [ebp - 0x878], edx
mov ecx, dword [ebp - 0x4a4]
mov dword [ebp - 0x87c], ecx
mov eax, dword [ebp - 0x874]
push eax
mov edx, dword [ebp - 0x878]
push edx
mov ecx, dword [ebp - 0x87c]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x4ec]
xor edx, edx
mov eax, dword [ebp - 0x820]
add eax, 0x20
mov dword [ebp - 0x880], eax
mov dword [ebp - 0x884], edx
mov ecx, dword [ebp - 0x884]
mov dword [ebp - 0x494], ecx
mov eax, dword [ebp - 0x880]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x496d19
mov eax, dword [ebp - 0x880]
mov edx, dword [eax + 8]
lea eax, [ebp - 0x49c]
mov dword [ebp - 0x888], edx
mov ecx, dword [ebp - 0x888]
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0x88c], eax
mov edx, dword [ebp - 0x88c]
mov ecx, dword [edx + 8]
mov edx, 0x6ff36c
mov dword [ebp - 0xe78], ecx
mov eax, dword [ebp - 0x494]
add eax, 0xfffffff4
mov dword [ebp - 0x890], eax
mov ecx, dword [ebp - 0x890]
cmp edx, ecx
je 0x496dc8
mov eax, dword [ebp - 0x890]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x496dc8
mov edx, dword [ebp - 0x880]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x894], eax
mov edx, dword [ebp - 0x894]
push edx
mov ecx, dword [ebp - 0x894]
push ecx
lea eax, [ebp - 0x49c]
push eax
call fcn.0069a874
mov dword [ebp - 0x89c], eax
add esp, 0xc
mov edx, dword [ebp - 0x89c]
lea eax, [ebp - 0x49c]
add edx, 0xc
mov dword [ebp - 0x898], edx
mov ecx, dword [ebp - 0x898]
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0x8a0], eax
mov edx, dword [ebp - 0x8a0]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe88], ecx
mov eax, dword [ebp - 0x894]
mov dword [ebp - 0x8a4], eax
mov edx, dword [ebp - 0x880]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x8a8], ecx
mov eax, dword [ebp - 0x494]
mov dword [ebp - 0x8ac], eax
mov edx, dword [ebp - 0x8a4]
push edx
mov ecx, dword [ebp - 0x8a8]
push ecx
mov eax, dword [ebp - 0x8ac]
push eax
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x4ec]
xor ecx, ecx
mov edx, dword [ebp - 0x820]
add edx, 0x30
mov dword [ebp - 0x8b0], edx
mov dword [ebp - 0x8b4], ecx
mov eax, dword [ebp - 0x8b4]
mov dword [ebp - 0x484], eax
mov edx, dword [ebp - 0x8b0]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x496e6b
mov edx, dword [ebp - 0x8b0]
mov ecx, dword [edx + 8]
lea edx, [ebp - 0x48c]
mov dword [ebp - 0x8b8], ecx
mov eax, dword [ebp - 0x8b8]
mov dword [ebp - 0x484], eax
mov dword [ebp - 0x8bc], edx
mov ecx, dword [ebp - 0x8bc]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0xe98], eax
mov edx, dword [ebp - 0x484]
add edx, 0xfffffff4
mov dword [ebp - 0x8c0], edx
mov eax, dword [ebp - 0x8c0]
cmp ecx, eax
je 0x496f1a
mov edx, dword [ebp - 0x8c0]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x496f1a
mov ecx, dword [ebp - 0x8b0]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 4]
mov dword [ebp - 0x8c4], edx
mov ecx, dword [ebp - 0x8c4]
push ecx
mov eax, dword [ebp - 0x8c4]
push eax
lea edx, [ebp - 0x48c]
push edx
call fcn.0069a874
mov dword [ebp - 0x8cc], eax
add esp, 0xc
mov ecx, dword [ebp - 0x8cc]
lea edx, [ebp - 0x48c]
add ecx, 0xc
mov dword [ebp - 0x8c8], ecx
mov eax, dword [ebp - 0x8c8]
mov dword [ebp - 0x484], eax
mov dword [ebp - 0x8d0], edx
mov ecx, dword [ebp - 0x8d0]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xea8], eax
mov edx, dword [ebp - 0x8c4]
mov dword [ebp - 0x8d4], edx
mov ecx, dword [ebp - 0x8b0]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x8d8], eax
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x8dc], edx
mov ecx, dword [ebp - 0x8d4]
push ecx
mov eax, dword [ebp - 0x8d8]
push eax
mov edx, dword [ebp - 0x8dc]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x4ec]
xor eax, eax
mov ecx, dword [ebp - 0x820]
add ecx, 0x40
mov dword [ebp - 0x8e0], ecx
mov dword [ebp - 0x8e4], eax
mov edx, dword [ebp - 0x8e4]
mov dword [ebp - 0x474], edx
mov ecx, dword [ebp - 0x8e0]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x496fbd
mov ecx, dword [ebp - 0x8e0]
mov eax, dword [ecx + 8]
lea ecx, [ebp - 0x47c]
mov dword [ebp - 0x8e8], eax
mov edx, dword [ebp - 0x8e8]
mov dword [ebp - 0x474], edx
mov dword [ebp - 0x8ec], ecx
mov eax, dword [ebp - 0x8ec]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xeb8], edx
mov ecx, dword [ebp - 0x474]
add ecx, 0xfffffff4
mov dword [ebp - 0x8f0], ecx
mov edx, dword [ebp - 0x8f0]
cmp eax, edx
je 0x49706c
mov ecx, dword [ebp - 0x8f0]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x49706c
mov eax, dword [ebp - 0x8e0]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x8f4], ecx
mov eax, dword [ebp - 0x8f4]
push eax
mov edx, dword [ebp - 0x8f4]
push edx
lea ecx, [ebp - 0x47c]
push ecx
call fcn.0069a874
mov dword [ebp - 0x8fc], eax
add esp, 0xc
mov eax, dword [ebp - 0x8fc]
lea ecx, [ebp - 0x47c]
add eax, 0xc
mov dword [ebp - 0x8f8], eax
mov edx, dword [ebp - 0x8f8]
mov dword [ebp - 0x474], edx
mov dword [ebp - 0x900], ecx
mov eax, dword [ebp - 0x900]
mov edx, dword [eax + 8]
mov dword [ebp - 0xec8], edx
mov ecx, dword [ebp - 0x8f4]
mov dword [ebp - 0x904], ecx
mov eax, dword [ebp - 0x8e0]
mov edx, dword [eax + 8]
mov dword [ebp - 0x908], edx
mov ecx, dword [ebp - 0x474]
mov dword [ebp - 0x90c], ecx
mov eax, dword [ebp - 0x904]
push eax
mov edx, dword [ebp - 0x908]
push edx
mov ecx, dword [ebp - 0x90c]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x820]
mov dl, byte [eax + 0x50]
mov byte [ebp - 0x46c], dl
mov ecx, dword [ebp - 0x820]
mov al, byte [ecx + 0x51]
mov byte [ebp - 0x46b], al
mov edx, dword [ebp - 0x820]
mov cl, byte [edx + 0x52]
mov byte [ebp - 0x46a], cl
mov eax, dword [ebp - 0x820]
mov dl, byte [eax + 0x53]
mov byte [ebp - 0x469], dl
mov ecx, dword [ebp - 0x820]
mov al, byte [ecx + 0x54]
mov byte [ebp - 0x468], al
mov edx, dword [ebp - 0x820]
mov cl, byte [edx + 0x55]
mov byte [ebp - 0x467], cl
mov eax, dword [ebp - 0x820]
mov dl, byte [eax + 0x56]
mov byte [ebp - 0x466], dl
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 0x58]
mov dword [ebp - 0x464], eax
mov edx, dword [ebp - 0x820]
mov ecx, dword [edx + 0x5c]
mov dword [ebp - 0x460], ecx
mov eax, dword [ebp - 0x820]
mov edx, dword [eax + 0x60]
mov dword [ebp - 0x45c], edx
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 0x64]
mov dword [ebp - 0x458], eax
mov edx, dword [ebp - 0x820]
mov ecx, dword [edx + 0x68]
mov dword [ebp - 0x454], ecx
mov eax, dword [ebp - 0x820]
mov edx, dword [eax + 0x6c]
mov dword [ebp - 0x450], edx
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 0x70]
mov dword [ebp - 0x44c], eax
mov edx, dword [ebp - 0x820]
mov ecx, dword [edx + 0x74]
mov dword [ebp - 0x448], ecx
mov eax, dword [ebp - 0x820]
mov edx, dword [eax + 0x78]
mov dword [ebp - 0x444], edx
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 0x80]
mov dword [ebp - 0x43c], eax
mov eax, dword [ecx + 0x84]
mov dword [ebp - 0x438], eax
mov edx, dword [ebp - 0x820]
mov ecx, dword [edx + 0x88]
mov dword [ebp - 0x434], ecx
mov ecx, dword [edx + 0x8c]
mov dword [ebp - 0x430], ecx
mov eax, dword [ebp - 0x820]
mov edx, dword [eax + 0x90]
mov dword [ebp - 0x42c], edx
mov ecx, dword [ebp - 0x820]
mov al, byte [ecx + 0x94]
mov byte [ebp - 0x428], al
mov edx, dword [ebp - 0x820]
mov cl, byte [edx + 0x95]
mov byte [ebp - 0x427], cl
mov eax, dword [ebp - 0x820]
mov dl, byte [eax + 0x96]
xor eax, eax
mov byte [ebp - 0x426], dl
xor edx, edx
mov ecx, dword [ebp - 0x820]
add ecx, 0x98
mov dword [ebp - 0x910], ecx
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x41c], edx
xor ecx, ecx
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x914], 0x40
mov dword [ebp - 0x918], 1
mov eax, dword [ebp - 0x918]
mov edx, dword [ebp - 0x914]
cmp eax, edx
jbe 0x49723c
lea ecx, [ebp - 0x918]
jmp 0x497242
lea ecx, [ebp - 0x914]
mov eax, dword [ecx]
mov dword [ebp - 0x424], eax
mov edx, dword [ebp - 0x910]
mov eax, dword [edx + 8]
mov edx, dword [ebp - 0x910]
mov ecx, dword [edx + 4]
sub eax, ecx
test eax, eax
jns 0x497265
add eax, 0xf
sar eax, 4
mov dword [ebp - 0x91c], eax
mov eax, dword [ebp - 0x91c]
shl eax, 4
push eax
call fcn.0067ac68
pop ecx
mov dword [ebp - 0x920], eax
mov edx, dword [ebp - 0x920]
test edx, edx
jne 0x4972da
lea ecx, [ebp - 0x508]
mov eax, 0x6b0470
push ecx
push 0
push 0
push 0
push 1
push 0x40487c
push 0
mov dword [ebp - 0x4d8], eax
inc dword [ebp - 0x4ec]
mov edx, 0x6b045c
mov dword [ebp - 0x4d8], edx
lea ecx, [ebp - 0x4d8]
inc dword [ebp - 0x4ec]
push ecx
push 0x404824
call fcn.006aa5c5
add esp, 0x24
mov eax, dword [ebp - 0x920]
mov dword [ebp - 0x420], eax
mov edx, dword [ebp - 0x420]
push edx
mov ecx, dword [ebp - 0x910]
mov eax, dword [ecx + 8]
push eax
mov edx, dword [ebp - 0x910]
mov ecx, dword [edx + 4]
push ecx
call fcn.004048e0
mov dword [ebp - 0x41c], eax
add esp, 0xc
mov eax, dword [ebp - 0x41c]
mov dword [ebp - 0x40c], eax
xor eax, eax
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0xed8], edx
xor edx, edx
inc dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x820]
add ecx, 0xb8
mov dword [ebp - 0x924], ecx
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], edx
xor ecx, ecx
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x928], 0x40
mov dword [ebp - 0x92c], 1
mov eax, dword [ebp - 0x92c]
mov edx, dword [ebp - 0x928]
cmp eax, edx
jbe 0x497383
lea ecx, [ebp - 0x92c]
jmp 0x497389
lea ecx, [ebp - 0x928]
mov eax, dword [ecx]
mov dword [ebp - 0x404], eax
mov edx, dword [ebp - 0x924]
mov eax, dword [edx + 8]
mov edx, dword [ebp - 0x924]
mov ecx, dword [edx + 4]
sub eax, ecx
test eax, eax
jns 0x4973ac
add eax, 0xf
sar eax, 4
mov dword [ebp - 0x930], eax
mov eax, dword [ebp - 0x930]
shl eax, 4
push eax
call fcn.0067ac68
pop ecx
mov dword [ebp - 0x934], eax
mov edx, dword [ebp - 0x934]
test edx, edx
jne 0x497421
lea ecx, [ebp - 0x508]
mov eax, 0x6b0470
push ecx
push 0
push 0
push 0
push 1
push 0x40487c
push 0
mov dword [ebp - 0x4dc], eax
inc dword [ebp - 0x4ec]
mov edx, 0x6b045c
mov dword [ebp - 0x4dc], edx
lea ecx, [ebp - 0x4dc]
inc dword [ebp - 0x4ec]
push ecx
push 0x404824
call fcn.006aa5c5
add esp, 0x24
mov eax, dword [ebp - 0x934]
mov dword [ebp - 0x400], eax
mov edx, dword [ebp - 0x400]
push edx
mov ecx, dword [ebp - 0x924]
mov eax, dword [ecx + 8]
push eax
mov edx, dword [ebp - 0x924]
mov ecx, dword [edx + 4]
push ecx
call fcn.004048e0
mov dword [ebp - 0x3fc], eax
add esp, 0xc
mov eax, dword [ebp - 0x3fc]
mov dword [ebp - 0x3ec], eax
xor eax, eax
mov edx, dword [ebp - 0x3ec]
mov dword [ebp - 0xee8], edx
xor edx, edx
inc dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x820]
add ecx, 0xd8
mov dword [ebp - 0x938], ecx
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3dc], edx
xor ecx, ecx
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x93c], 0x40
mov dword [ebp - 0x940], 1
mov eax, dword [ebp - 0x940]
mov edx, dword [ebp - 0x93c]
cmp eax, edx
jbe 0x4974ca
lea ecx, [ebp - 0x940]
jmp 0x4974d0
lea ecx, [ebp - 0x93c]
mov eax, dword [ecx]
mov dword [ebp - 0x3e4], eax
mov edx, dword [ebp - 0x938]
mov eax, dword [edx + 8]
mov edx, dword [ebp - 0x938]
mov ecx, dword [edx + 4]
sub eax, ecx
test eax, eax
jns 0x4974f3
add eax, 0xf
sar eax, 4
mov dword [ebp - 0x944], eax
mov eax, dword [ebp - 0x944]
shl eax, 4
push eax
call fcn.0067ac68
pop ecx
mov dword [ebp - 0x948], eax
mov edx, dword [ebp - 0x948]
test edx, edx
jne 0x497568
lea ecx, [ebp - 0x508]
mov eax, 0x6b0470
push ecx
push 0
push 0
push 0
push 1
push 0x40487c
push 0
mov dword [ebp - 0x4e0], eax
inc dword [ebp - 0x4ec]
mov edx, 0x6b045c
mov dword [ebp - 0x4e0], edx
lea ecx, [ebp - 0x4e0]
inc dword [ebp - 0x4ec]
push ecx
push 0x404824
call fcn.006aa5c5
add esp, 0x24
mov eax, dword [ebp - 0x948]
mov dword [ebp - 0x3e0], eax
mov edx, dword [ebp - 0x3e0]
push edx
mov ecx, dword [ebp - 0x938]
mov eax, dword [ecx + 8]
push eax
mov edx, dword [ebp - 0x938]
mov ecx, dword [edx + 4]
push ecx
call fcn.004048e0
mov dword [ebp - 0x3dc], eax
add esp, 0xc
mov eax, dword [ebp - 0x3dc]
mov dword [ebp - 0x3cc], eax
xor eax, eax
mov edx, dword [ebp - 0x3cc]
mov dword [ebp - 0xef8], edx
xor edx, edx
inc dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x820]
add ecx, 0xf8
mov dword [ebp - 0x94c], ecx
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x3bc], edx
xor ecx, ecx
mov dword [ebp - 0x3ac], ecx
mov dword [ebp - 0x950], 0x40
mov dword [ebp - 0x954], 1
mov eax, dword [ebp - 0x954]
mov edx, dword [ebp - 0x950]
cmp eax, edx
jbe 0x497611
lea ecx, [ebp - 0x954]
jmp 0x497617
lea ecx, [ebp - 0x950]
mov eax, dword [ecx]
mov dword [ebp - 0x3c4], eax
mov edx, dword [ebp - 0x94c]
mov eax, dword [edx + 8]
mov edx, dword [ebp - 0x94c]
mov ecx, dword [edx + 4]
sub eax, ecx
test eax, eax
jns 0x49763a
add eax, 0xf
sar eax, 4
mov dword [ebp - 0x958], eax
mov eax, dword [ebp - 0x958]
shl eax, 4
push eax
call fcn.0067ac68
pop ecx
mov dword [ebp - 0x95c], eax
mov edx, dword [ebp - 0x95c]
test edx, edx
jne 0x4976af
lea ecx, [ebp - 0x508]
mov eax, 0x6b0470
push ecx
push 0
push 0
push 0
push 1
push 0x40487c
push 0
mov dword [ebp - 0x4e4], eax
inc dword [ebp - 0x4ec]
mov edx, 0x6b045c
mov dword [ebp - 0x4e4], edx
lea ecx, [ebp - 0x4e4]
inc dword [ebp - 0x4ec]
push ecx
push 0x404824
call fcn.006aa5c5
add esp, 0x24
mov eax, dword [ebp - 0x95c]
mov dword [ebp - 0x3c0], eax
mov edx, dword [ebp - 0x3c0]
push edx
mov ecx, dword [ebp - 0x94c]
mov eax, dword [ecx + 8]
push eax
mov edx, dword [ebp - 0x94c]
mov ecx, dword [edx + 4]
push ecx
call fcn.004048e0
add esp, 0xc
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x3ac], eax
mov edx, dword [ebp - 0x3ac]
mov dword [ebp - 0xf08], edx
inc dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x820]
mov eax, dword [ecx + 0x118]
mov dword [ebp - 0x3a4], eax
inc dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x794]
add edx, 0x128
mov dword [ebp - 0x960], edx
mov ecx, dword [ebp - 0x960]
mov eax, dword [ecx]
mov dword [ebp - 0x39c], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x398], eax
mov edx, dword [ebp - 0x960]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x394], ecx
inc dword [ebp - 0x4ec]
mov word [ebp - 0x4f8], 0x278
inc dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x284]
push eax
mov edx, dword [ebp - 0x288]
push edx
lea ecx, [ebp - 0x28c]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x964], eax
mov edx, dword [ebp - 0x964]
push edx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x2a4]
push ecx
mov eax, dword [ebp - 0x2a8]
push eax
lea edx, [ebp - 0x2ac]
push edx
call fcn.0040445c
add esp, 0xc
mov ecx, dword [ebp - 0x2a8]
mov dword [ebp - 0x968], ecx
mov eax, dword [ebp - 0x968]
push eax
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x2c4]
push edx
mov ecx, dword [ebp - 0x2c8]
push ecx
lea eax, [ebp - 0x2cc]
push eax
call fcn.0040445c
add esp, 0xc
mov edx, dword [ebp - 0x2c8]
mov dword [ebp - 0x96c], edx
mov ecx, dword [ebp - 0x96c]
push ecx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x2e4]
push eax
mov edx, dword [ebp - 0x2e8]
push edx
lea ecx, [ebp - 0x2ec]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x970], eax
mov edx, dword [ebp - 0x970]
push edx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x33c]
test ecx, ecx
je 0x497933
mov eax, dword [ebp - 0x33c]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x4978d9
mov ecx, dword [ebp - 0x33c]
add ecx, 0xfffffff4
mov dword [ebp - 0x974], ecx
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x974]
cmp eax, edx
je 0x4978d0
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x974]
cmp ecx, eax
je 0x4978c9
mov edx, dword [ebp - 0x974]
push edx
call sub.KERNEL32.DLL_InterlockedDecrement
mov ecx, dword [ebp - 0x974]
mov eax, dword [ecx]
inc eax
jmp 0x4978d5
mov eax, 1
jmp 0x4978d5
mov eax, 1
test eax, eax
jne 0x497933
mov edx, dword [ebp - 0x33c]
add edx, 0xfffffff4
mov dword [ebp - 0x978], edx
mov ecx, dword [ebp - 0x33c]
add ecx, 0xfffffff4
mov dword [ebp - 0x97c], ecx
mov eax, dword [ebp - 0x97c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x980], edx
lea eax, [ebp - 0x344]
mov ecx, dword [ebp - 0x980]
mov dword [ebp - 0x33c], ecx
mov dword [ebp - 0x984], eax
mov edx, dword [ebp - 0x984]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf18], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x34c]
test eax, eax
je 0x497a03
mov edx, dword [ebp - 0x34c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x4979a9
mov eax, dword [ebp - 0x34c]
add eax, 0xfffffff4
mov dword [ebp - 0x988], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x988]
cmp edx, ecx
je 0x4979a0
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x988]
cmp eax, edx
je 0x497999
mov ecx, dword [ebp - 0x988]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x988]
mov edx, dword [eax]
inc edx
jmp 0x4979a5
mov edx, 1
jmp 0x4979a5
mov edx, 1
test edx, edx
jne 0x497a03
mov eax, dword [ebp - 0x34c]
add eax, 0xfffffff4
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0x34c]
add ecx, 0xfffffff4
mov dword [ebp - 0x990], ecx
mov eax, dword [ebp - 0x990]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x994], edx
lea eax, [ebp - 0x354]
mov ecx, dword [ebp - 0x994]
mov dword [ebp - 0x34c], ecx
mov dword [ebp - 0x998], eax
mov edx, dword [ebp - 0x998]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf28], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x35c]
test eax, eax
je 0x497ad3
mov edx, dword [ebp - 0x35c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x497a79
mov eax, dword [ebp - 0x35c]
add eax, 0xfffffff4
mov dword [ebp - 0x99c], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x99c]
cmp edx, ecx
je 0x497a70
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x99c]
cmp eax, edx
je 0x497a69
mov ecx, dword [ebp - 0x99c]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x99c]
mov edx, dword [eax]
inc edx
jmp 0x497a75
mov edx, 1
jmp 0x497a75
mov edx, 1
test edx, edx
jne 0x497ad3
mov eax, dword [ebp - 0x35c]
add eax, 0xfffffff4
mov dword [ebp - 0x9a0], eax
mov ecx, dword [ebp - 0x35c]
add ecx, 0xfffffff4
mov dword [ebp - 0x9a4], ecx
mov eax, dword [ebp - 0x9a4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x9a8], edx
lea eax, [ebp - 0x364]
mov ecx, dword [ebp - 0x9a8]
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x9ac], eax
mov edx, dword [ebp - 0x9ac]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf38], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x36c]
test eax, eax
je 0x497ba3
mov edx, dword [ebp - 0x36c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x497b49
mov eax, dword [ebp - 0x36c]
add eax, 0xfffffff4
mov dword [ebp - 0x9b0], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x9b0]
cmp edx, ecx
je 0x497b40
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x9b0]
cmp eax, edx
je 0x497b39
mov ecx, dword [ebp - 0x9b0]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x9b0]
mov edx, dword [eax]
inc edx
jmp 0x497b45
mov edx, 1
jmp 0x497b45
mov edx, 1
test edx, edx
jne 0x497ba3
mov eax, dword [ebp - 0x36c]
add eax, 0xfffffff4
mov dword [ebp - 0x9b4], eax
mov ecx, dword [ebp - 0x36c]
add ecx, 0xfffffff4
mov dword [ebp - 0x9b8], ecx
mov eax, dword [ebp - 0x9b8]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x9bc], edx
lea eax, [ebp - 0x374]
mov ecx, dword [ebp - 0x9bc]
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x9c0], eax
mov edx, dword [ebp - 0x9c0]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf48], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x37c]
test eax, eax
je 0x497c73
mov edx, dword [ebp - 0x37c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x497c19
mov eax, dword [ebp - 0x37c]
add eax, 0xfffffff4
mov dword [ebp - 0x9c4], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x9c4]
cmp edx, ecx
je 0x497c10
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x9c4]
cmp eax, edx
je 0x497c09
mov ecx, dword [ebp - 0x9c4]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x9c4]
mov edx, dword [eax]
inc edx
jmp 0x497c15
mov edx, 1
jmp 0x497c15
mov edx, 1
test edx, edx
jne 0x497c73
mov eax, dword [ebp - 0x37c]
add eax, 0xfffffff4
mov dword [ebp - 0x9c8], eax
mov ecx, dword [ebp - 0x37c]
add ecx, 0xfffffff4
mov dword [ebp - 0x9cc], ecx
mov eax, dword [ebp - 0x9cc]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x9d0], edx
lea eax, [ebp - 0x384]
mov ecx, dword [ebp - 0x9d0]
mov dword [ebp - 0x37c], ecx
mov dword [ebp - 0x9d4], eax
mov edx, dword [ebp - 0x9d4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf58], ecx
lea eax, [ebp - 0x4d4]
push eax
add esi, 0x80
push esi
lea eax, [ebp - 0xf78]
push eax
call fcn.004992d0
add esp, 0xc
mov edx, dword [ebp - 0xf70]
add edx, 0x10
add edx, 0x10
push edx
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x3bc]
push ecx
mov eax, dword [ebp - 0x3c0]
push eax
lea edx, [ebp - 0x3c4]
push edx
call fcn.0040445c
add esp, 0xc
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x9d8], ecx
mov eax, dword [ebp - 0x9d8]
push eax
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x3dc]
push edx
mov ecx, dword [ebp - 0x3e0]
push ecx
lea eax, [ebp - 0x3e4]
push eax
call fcn.0040445c
add esp, 0xc
mov edx, dword [ebp - 0x3e0]
mov dword [ebp - 0x9dc], edx
mov ecx, dword [ebp - 0x9dc]
push ecx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x3fc]
push eax
mov edx, dword [ebp - 0x400]
push edx
lea ecx, [ebp - 0x404]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x400]
mov dword [ebp - 0x9e0], eax
mov edx, dword [ebp - 0x9e0]
push edx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x41c]
push ecx
mov eax, dword [ebp - 0x420]
push eax
lea edx, [ebp - 0x424]
push edx
call fcn.0040445c
add esp, 0xc
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x9e4], ecx
mov eax, dword [ebp - 0x9e4]
push eax
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x474]
test edx, edx
je 0x497e6f
mov ecx, dword [ebp - 0x474]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x497e15
mov edx, dword [ebp - 0x474]
add edx, 0xfffffff4
mov dword [ebp - 0x9e8], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x9e8]
cmp ecx, eax
je 0x497e0c
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x9e8]
cmp edx, ecx
je 0x497e05
mov eax, dword [ebp - 0x9e8]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x9e8]
mov ecx, dword [edx]
inc ecx
jmp 0x497e11
mov ecx, 1
jmp 0x497e11
mov ecx, 1
test ecx, ecx
jne 0x497e6f
mov eax, dword [ebp - 0x474]
add eax, 0xfffffff4
mov dword [ebp - 0x9ec], eax
mov edx, dword [ebp - 0x474]
add edx, 0xfffffff4
mov dword [ebp - 0x9f0], edx
mov eax, dword [ebp - 0x9f0]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x9f4], edx
lea eax, [ebp - 0x47c]
mov ecx, dword [ebp - 0x9f4]
mov dword [ebp - 0x474], ecx
mov dword [ebp - 0x9f8], eax
mov edx, dword [ebp - 0x9f8]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf80], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x484]
test eax, eax
je 0x497f3f
mov edx, dword [ebp - 0x484]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x497ee5
mov eax, dword [ebp - 0x484]
add eax, 0xfffffff4
mov dword [ebp - 0x9fc], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x9fc]
cmp edx, ecx
je 0x497edc
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x9fc]
cmp eax, edx
je 0x497ed5
mov ecx, dword [ebp - 0x9fc]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x9fc]
mov edx, dword [eax]
inc edx
jmp 0x497ee1
mov edx, 1
jmp 0x497ee1
mov edx, 1
test edx, edx
jne 0x497f3f
mov eax, dword [ebp - 0x484]
add eax, 0xfffffff4
mov dword [ebp - 0xa00], eax
mov ecx, dword [ebp - 0x484]
add ecx, 0xfffffff4
mov dword [ebp - 0xa04], ecx
mov eax, dword [ebp - 0xa04]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa08], edx
lea eax, [ebp - 0x48c]
mov ecx, dword [ebp - 0xa08]
mov dword [ebp - 0x484], ecx
mov dword [ebp - 0xa0c], eax
mov edx, dword [ebp - 0xa0c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf90], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x494]
test eax, eax
je 0x49800f
mov edx, dword [ebp - 0x494]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x497fb5
mov eax, dword [ebp - 0x494]
add eax, 0xfffffff4
mov dword [ebp - 0xa10], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xa10]
cmp edx, ecx
je 0x497fac
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xa10]
cmp eax, edx
je 0x497fa5
mov ecx, dword [ebp - 0xa10]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xa10]
mov edx, dword [eax]
inc edx
jmp 0x497fb1
mov edx, 1
jmp 0x497fb1
mov edx, 1
test edx, edx
jne 0x49800f
mov eax, dword [ebp - 0x494]
add eax, 0xfffffff4
mov dword [ebp - 0xa14], eax
mov ecx, dword [ebp - 0x494]
add ecx, 0xfffffff4
mov dword [ebp - 0xa18], ecx
mov eax, dword [ebp - 0xa18]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa1c], edx
lea eax, [ebp - 0x49c]
mov ecx, dword [ebp - 0xa1c]
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0xa20], eax
mov edx, dword [ebp - 0xa20]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xfa0], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x4a4]
test eax, eax
je 0x4980df
mov edx, dword [ebp - 0x4a4]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498085
mov eax, dword [ebp - 0x4a4]
add eax, 0xfffffff4
mov dword [ebp - 0xa24], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xa24]
cmp edx, ecx
je 0x49807c
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xa24]
cmp eax, edx
je 0x498075
mov ecx, dword [ebp - 0xa24]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xa24]
mov edx, dword [eax]
inc edx
jmp 0x498081
mov edx, 1
jmp 0x498081
mov edx, 1
test edx, edx
jne 0x4980df
mov eax, dword [ebp - 0x4a4]
add eax, 0xfffffff4
mov dword [ebp - 0xa28], eax
mov ecx, dword [ebp - 0x4a4]
add ecx, 0xfffffff4
mov dword [ebp - 0xa2c], ecx
mov eax, dword [ebp - 0xa2c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa30], edx
lea eax, [ebp - 0x4ac]
mov ecx, dword [ebp - 0xa30]
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0xa34], eax
mov edx, dword [ebp - 0xa34]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xfb0], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x4b4]
test eax, eax
je 0x4981af
mov edx, dword [ebp - 0x4b4]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498155
mov eax, dword [ebp - 0x4b4]
add eax, 0xfffffff4
mov dword [ebp - 0xa38], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xa38]
cmp edx, ecx
je 0x49814c
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xa38]
cmp eax, edx
je 0x498145
mov ecx, dword [ebp - 0xa38]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xa38]
mov edx, dword [eax]
inc edx
jmp 0x498151
mov edx, 1
jmp 0x498151
mov edx, 1
test edx, edx
jne 0x4981af
mov eax, dword [ebp - 0x4b4]
add eax, 0xfffffff4
mov dword [ebp - 0xa3c], eax
mov ecx, dword [ebp - 0x4b4]
add ecx, 0xfffffff4
mov dword [ebp - 0xa40], ecx
mov eax, dword [ebp - 0xa40]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa44], edx
lea eax, [ebp - 0x4bc]
mov ecx, dword [ebp - 0xa44]
mov dword [ebp - 0x4b4], ecx
mov dword [ebp - 0xa48], eax
mov edx, dword [ebp - 0xa48]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xfc0], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x4cc]
test eax, eax
je 0x49827f
mov edx, dword [ebp - 0x4cc]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498225
mov eax, dword [ebp - 0x4cc]
add eax, 0xfffffff4
mov dword [ebp - 0xa4c], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xa4c]
cmp edx, ecx
je 0x49821c
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xa4c]
cmp eax, edx
je 0x498215
mov ecx, dword [ebp - 0xa4c]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xa4c]
mov edx, dword [eax]
inc edx
jmp 0x498221
mov edx, 1
jmp 0x498221
mov edx, 1
test edx, edx
jne 0x49827f
mov eax, dword [ebp - 0x4cc]
add eax, 0xfffffff4
mov dword [ebp - 0xa50], eax
mov ecx, dword [ebp - 0x4cc]
add ecx, 0xfffffff4
mov dword [ebp - 0xa54], ecx
mov eax, dword [ebp - 0xa54]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa58], edx
lea eax, [ebp - 0x4d4]
mov ecx, dword [ebp - 0xa58]
mov dword [ebp - 0x4cc], ecx
mov dword [ebp - 0xa5c], eax
mov edx, dword [ebp - 0xa5c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xfd0], ecx
pop eax
lea ecx, [ebp - 0x140]
mov word [ebp - 0x4f8], 0x26c
mov dword [ebp - 0x790], eax
mov edx, dword [ebp - 0x790]
add edx, 8
mov dword [ebp - 0xa60], edx
push ecx
mov eax, dword [ebp - 0xa60]
push eax
call fcn.0069a2e0
add esp, 8
lea edx, [ebp - 0x130]
push edx
mov ecx, dword [ebp - 0xa60]
add ecx, 0x10
push ecx
call fcn.0069a2e0
add esp, 8
lea eax, [ebp - 0x120]
push eax
mov edx, dword [ebp - 0xa60]
add edx, 0x20
push edx
call fcn.0069a2e0
add esp, 8
lea ecx, [ebp - 0x110]
push ecx
mov eax, dword [ebp - 0xa60]
add eax, 0x30
push eax
call fcn.0069a2e0
add esp, 8
lea edx, [ebp - 0x100]
push edx
mov ecx, dword [ebp - 0xa60]
add ecx, 0x40
push ecx
call fcn.0069a2e0
add esp, 8
lea eax, [ebp - 0xa8]
push eax
mov edx, dword [ebp - 0xa60]
add edx, 0x98
push edx
call fcn.004045a0
add esp, 8
lea ecx, [ebp - 0x88]
push ecx
mov eax, dword [ebp - 0xa60]
add eax, 0xb8
push eax
call fcn.004045a0
add esp, 8
lea edx, [ebp - 0x68]
push edx
mov ecx, dword [ebp - 0xa60]
add ecx, 0xd8
push ecx
call fcn.004045a0
add esp, 8
lea eax, [ebp - 0x48]
push eax
mov edx, dword [ebp - 0xa60]
add edx, 0xf8
push edx
call fcn.004045a0
mov ecx, dword [ebp - 0xa60]
mov al, byte [ebp - 0xf0]
add esp, 8
lea esi, [ebp - 0x20]
mov byte [ecx + 0x50], al
mov edx, dword [ebp - 0xa60]
mov cl, byte [ebp - 0xef]
mov byte [edx + 0x51], cl
mov eax, dword [ebp - 0xa60]
mov dl, byte [ebp - 0xee]
mov byte [eax + 0x52], dl
mov ecx, dword [ebp - 0xa60]
mov al, byte [ebp - 0xed]
mov byte [ecx + 0x53], al
mov edx, dword [ebp - 0xa60]
mov cl, byte [ebp - 0xec]
mov byte [edx + 0x54], cl
mov eax, dword [ebp - 0xa60]
mov dl, byte [ebp - 0xeb]
mov byte [eax + 0x55], dl
mov ecx, dword [ebp - 0xa60]
mov al, byte [ebp - 0xea]
mov byte [ecx + 0x56], al
mov edx, dword [ebp - 0xa60]
mov ecx, dword [ebp - 0xe8]
mov dword [edx + 0x58], ecx
mov eax, dword [ebp - 0xa60]
mov edx, dword [ebp - 0xe4]
mov dword [eax + 0x5c], edx
mov ecx, dword [ebp - 0xa60]
mov eax, dword [ebp - 0xe0]
mov dword [ecx + 0x60], eax
mov edx, dword [ebp - 0xa60]
mov ecx, dword [ebp - 0xdc]
mov dword [edx + 0x64], ecx
mov eax, dword [ebp - 0xa60]
mov edx, dword [ebp - 0xd8]
mov dword [eax + 0x68], edx
mov ecx, dword [ebp - 0xa60]
mov eax, dword [ebp - 0xd4]
mov dword [ecx + 0x6c], eax
mov edx, dword [ebp - 0xa60]
mov ecx, dword [ebp - 0xd0]
mov dword [edx + 0x70], ecx
mov eax, dword [ebp - 0xa60]
mov edx, dword [ebp - 0xcc]
mov dword [eax + 0x74], edx
mov ecx, dword [ebp - 0xa60]
mov eax, dword [ebp - 0xc8]
mov dword [ecx + 0x78], eax
mov edx, dword [ebp - 0xa60]
mov ecx, dword [ebp - 0xc0]
mov dword [edx + 0x80], ecx
mov ecx, dword [ebp - 0xbc]
mov dword [edx + 0x84], ecx
mov eax, dword [ebp - 0xa60]
mov edx, dword [ebp - 0xb8]
mov dword [eax + 0x88], edx
mov edx, dword [ebp - 0xb4]
mov dword [eax + 0x8c], edx
mov ecx, dword [ebp - 0xa60]
mov eax, dword [ebp - 0xb0]
mov dword [ecx + 0x90], eax
mov edx, dword [ebp - 0xa60]
mov cl, byte [ebp - 0xac]
mov byte [edx + 0x94], cl
mov eax, dword [ebp - 0xa60]
mov dl, byte [ebp - 0xab]
mov byte [eax + 0x95], dl
mov ecx, dword [ebp - 0xa60]
mov al, byte [ebp - 0xaa]
mov byte [ecx + 0x96], al
mov edx, dword [ebp - 0xa60]
mov ecx, dword [ebp - 0x28]
mov dword [edx + 0x118], ecx
mov eax, dword [ebp - 0x790]
mov dl, byte [ebp - 0x148]
mov byte [eax], dl
mov ecx, dword [ebp - 0x790]
lea edi, [ecx + 0x128]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x790]
add eax, 8
mov dword [edx], eax
mov al, byte [ebp - 0x148]
push eax
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x150]
test edx, edx
je 0x498613
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x4985b9
mov edx, dword [ebp - 0x150]
add edx, 0xfffffff4
mov dword [ebp - 0xa64], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0xa64]
cmp ecx, eax
je 0x4985b0
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xa64]
cmp edx, ecx
je 0x4985a9
mov eax, dword [ebp - 0xa64]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0xa64]
mov ecx, dword [edx]
inc ecx
jmp 0x4985b5
mov ecx, 1
jmp 0x4985b5
mov ecx, 1
test ecx, ecx
jne 0x498613
mov eax, dword [ebp - 0x150]
add eax, 0xfffffff4
mov dword [ebp - 0xa68], eax
mov edx, dword [ebp - 0x150]
add edx, 0xfffffff4
mov dword [ebp - 0xa6c], edx
mov eax, dword [ebp - 0xa6c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa70], edx
lea eax, [ebp - 0x158]
mov ecx, dword [ebp - 0xa70]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0xa74], eax
mov edx, dword [ebp - 0xa74]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xfe0], ecx
mov word [ebp - 0x4f8], 8
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x40]
push eax
mov edx, dword [ebp - 0x44]
push edx
lea ecx, [ebp - 0x48]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xa78], eax
mov edx, dword [ebp - 0xa78]
push edx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0x60]
push ecx
mov eax, dword [ebp - 0x64]
push eax
lea edx, [ebp - 0x68]
push edx
call fcn.0040445c
add esp, 0xc
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0xa7c], ecx
mov eax, dword [ebp - 0xa7c]
push eax
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov edx, dword [ebp - 0x80]
push edx
mov ecx, dword [ebp - 0x84]
push ecx
lea eax, [ebp - 0x88]
push eax
call fcn.0040445c
add esp, 0xc
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xa80], edx
mov ecx, dword [ebp - 0xa80]
push ecx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0xa0]
push eax
mov edx, dword [ebp - 0xa4]
push edx
lea ecx, [ebp - 0xa8]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xa84], eax
mov edx, dword [ebp - 0xa84]
push edx
call fcn.0067ac7c
pop ecx
dec dword [ebp - 0x4ec]
mov ecx, dword [ebp - 0xf8]
test ecx, ecx
je 0x4987cd
mov eax, dword [ebp - 0xf8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x498773
mov ecx, dword [ebp - 0xf8]
add ecx, 0xfffffff4
mov dword [ebp - 0xa88], ecx
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xa88]
cmp eax, edx
je 0x49876a
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0xa88]
cmp ecx, eax
je 0x498763
mov edx, dword [ebp - 0xa88]
push edx
call sub.KERNEL32.DLL_InterlockedDecrement
mov ecx, dword [ebp - 0xa88]
mov eax, dword [ecx]
inc eax
jmp 0x49876f
mov eax, 1
jmp 0x49876f
mov eax, 1
test eax, eax
jne 0x4987cd
mov edx, dword [ebp - 0xf8]
add edx, 0xfffffff4
mov dword [ebp - 0xa8c], edx
mov ecx, dword [ebp - 0xf8]
add ecx, 0xfffffff4
mov dword [ebp - 0xa90], ecx
mov eax, dword [ebp - 0xa90]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xa94], edx
lea eax, [ebp - 0x100]
mov ecx, dword [ebp - 0xa94]
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0xa98], eax
mov edx, dword [ebp - 0xa98]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xff0], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x108]
test eax, eax
je 0x49889d
mov edx, dword [ebp - 0x108]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498843
mov eax, dword [ebp - 0x108]
add eax, 0xfffffff4
mov dword [ebp - 0xa9c], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xa9c]
cmp edx, ecx
je 0x49883a
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xa9c]
cmp eax, edx
je 0x498833
mov ecx, dword [ebp - 0xa9c]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xa9c]
mov edx, dword [eax]
inc edx
jmp 0x49883f
mov edx, 1
jmp 0x49883f
mov edx, 1
test edx, edx
jne 0x49889d
mov eax, dword [ebp - 0x108]
add eax, 0xfffffff4
mov dword [ebp - 0xaa0], eax
mov ecx, dword [ebp - 0x108]
add ecx, 0xfffffff4
mov dword [ebp - 0xaa4], ecx
mov eax, dword [ebp - 0xaa4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xaa8], edx
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0xaa8]
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0xaac], eax
mov edx, dword [ebp - 0xaac]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1000], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x118]
test eax, eax
je 0x49896d
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498913
mov eax, dword [ebp - 0x118]
add eax, 0xfffffff4
mov dword [ebp - 0xab0], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xab0]
cmp edx, ecx
je 0x49890a
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xab0]
cmp eax, edx
je 0x498903
mov ecx, dword [ebp - 0xab0]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xab0]
mov edx, dword [eax]
inc edx
jmp 0x49890f
mov edx, 1
jmp 0x49890f
mov edx, 1
test edx, edx
jne 0x49896d
mov eax, dword [ebp - 0x118]
add eax, 0xfffffff4
mov dword [ebp - 0xab4], eax
mov ecx, dword [ebp - 0x118]
add ecx, 0xfffffff4
mov dword [ebp - 0xab8], ecx
mov eax, dword [ebp - 0xab8]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xabc], edx
lea eax, [ebp - 0x120]
mov ecx, dword [ebp - 0xabc]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0xac0], eax
mov edx, dword [ebp - 0xac0]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1010], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x128]
test eax, eax
je 0x498a3d
mov edx, dword [ebp - 0x128]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x4989e3
mov eax, dword [ebp - 0x128]
add eax, 0xfffffff4
mov dword [ebp - 0xac4], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xac4]
cmp edx, ecx
je 0x4989da
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xac4]
cmp eax, edx
je 0x4989d3
mov ecx, dword [ebp - 0xac4]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xac4]
mov edx, dword [eax]
inc edx
jmp 0x4989df
mov edx, 1
jmp 0x4989df
mov edx, 1
test edx, edx
jne 0x498a3d
mov eax, dword [ebp - 0x128]
add eax, 0xfffffff4
mov dword [ebp - 0xac8], eax
mov ecx, dword [ebp - 0x128]
add ecx, 0xfffffff4
mov dword [ebp - 0xacc], ecx
mov eax, dword [ebp - 0xacc]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xad0], edx
lea eax, [ebp - 0x130]
mov ecx, dword [ebp - 0xad0]
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0xad4], eax
mov edx, dword [ebp - 0xad4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1020], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 0x138]
test eax, eax
je 0x498b0d
mov edx, dword [ebp - 0x138]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498ab3
mov eax, dword [ebp - 0x138]
add eax, 0xfffffff4
mov dword [ebp - 0xad8], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xad8]
cmp edx, ecx
je 0x498aaa
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xad8]
cmp eax, edx
je 0x498aa3
mov ecx, dword [ebp - 0xad8]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xad8]
mov edx, dword [eax]
inc edx
jmp 0x498aaf
mov edx, 1
jmp 0x498aaf
mov edx, 1
test edx, edx
jne 0x498b0d
mov eax, dword [ebp - 0x138]
add eax, 0xfffffff4
mov dword [ebp - 0xadc], eax
mov ecx, dword [ebp - 0x138]
add ecx, 0xfffffff4
mov dword [ebp - 0xae0], ecx
mov eax, dword [ebp - 0xae0]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xae4], edx
lea eax, [ebp - 0x140]
mov ecx, dword [ebp - 0xae4]
mov dword [ebp - 0x138], ecx
mov dword [ebp - 0xae8], eax
mov edx, dword [ebp - 0xae8]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1030], ecx
dec dword [ebp - 0x4ec]
mov eax, dword [ebp - 8]
test eax, eax
je 0x498bc8
mov edx, dword [ebp - 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x498b7a
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0xaec], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0xaec]
cmp edx, ecx
je 0x498b71
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xaec]
cmp eax, edx
je 0x498b6a
mov ecx, dword [ebp - 0xaec]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0xaec]
mov edx, dword [eax]
inc edx
jmp 0x498b76
mov edx, 1
jmp 0x498b76
mov edx, 1
test edx, edx
jne 0x498bc8
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0xaf0], eax
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0xaf4], ecx
mov eax, dword [ebp - 0xaf4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0xaf8], edx
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0xaf8]
mov dword [ebp - 8], ecx
mov dword [ebp - 0xafc], eax
mov edx, dword [ebp - 0xafc]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1040], ecx
pop eax
mov edx, dword [ebp - 0x508]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret