Function at 0x825dac
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffeb8
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x14], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x826a61
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x825a5c]
call fcn.0040999c
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x825dfb
sub edx, 0xfffffff8
call fcn.00410d98
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0xc], ebx
mov eax, 1
call fcn.004c78cc
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x825e28
sub edx, 0xffffffd8
xor eax, eax
call fcn.004c776c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
xor edx, edx
mov dword [eax + 0x38], edx
cmp byte [eax + 0xc4], 0
jne 0x825e6c
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x825e5b
sub edx, 0xffffffdc
xor eax, eax
call fcn.004c776c
mov eax, 0x1388
call fcn.004c78cc
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x825e84
sub edx, 0xffffffe0
xor eax, eax
call fcn.004c776c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x50], 9
mov eax, dword [0x8dce24]
cmp byte [eax], 1
jne 0x825eb6
mov eax, dword [0x8dce24]
mov byte [eax], 0
lea eax, [ebp - 0x10]
mov edx, 0x826a7c
call fcn.0040bcec
jmp 0x825ecb
mov eax, dword [0x8dce24]
mov byte [eax], 1
lea eax, [ebp - 0x10]
mov edx, 0x826a94
call fcn.0040bcec
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 0x10]
call fcn.0040bcec
lea eax, [ebp - 0xc]
mov edx, 0x826aac
call fcn.0040ca34
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xc4], 0
jne 0x825fcc
mov eax, 0x35a4e900
call fcn.00407b54
mov edx, dword [ebp - 0x2c]
mov ebx, dword [edx + 0xc]
mov dword [ebx + 0xc8], eax
mov eax, dword [0x8ddbb8]
cmp dword [eax], 0
je 0x825fc2
lea eax, [ebp - 0xc]
mov edx, 0x826ac4
call fcn.0040ca34
xor eax, eax
push ebp
push 0x825f82
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
push eax
push 0x826adc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc8]
push eax
push 1
lea eax, [ebp - 0x3c]
mov edx, dword [0x8ddbb8]
mov edx, dword [edx]
call fcn.0040c8f4
mov ecx, dword [ebp - 0x3c]
mov dl, 1
mov eax, dword [0x8462dc]
call fcn.00846880
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx + 0xc]
mov dword [edx + 0xc0], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x825f8c
mov eax, 0x1388
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xcc], 1
jne 0x825fd4
cmp dword [eax + 0xc0], 0
setne dl
cmp dl, 1
jne 0x825fd4
mov byte [eax + 0x50], 1
xor edx, edx
mov dword [eax + 0xc8], edx
jmp 0x825fd4
xor eax, eax
mov dword [ebx + 0xc8], eax
jmp 0x825fd4
xor edx, edx
mov dword [eax + 0xc8], edx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x50], 9
jne 0x826169
cmp byte [eax + 0xc4], 0
jne 0x826016
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x826005
sub edx, 0xffffffe4
xor eax, eax
call fcn.004c776c
mov eax, 0x1388
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x50], 9
mov eax, dword [0x8dce24]
cmp byte [eax], 1
jne 0x826041
mov eax, dword [0x8dce24]
mov byte [eax], 0
lea eax, [ebp - 0x10]
mov edx, 0x826a7c
call fcn.0040bcec
jmp 0x826056
mov eax, dword [0x8dce24]
mov byte [eax], 1
lea eax, [ebp - 0x10]
mov edx, 0x826a94
call fcn.0040bcec
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 0x10]
call fcn.0040bcec
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xc4], 0
jne 0x826161
mov eax, 0x35a4e900
call fcn.00407b54
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx + 0xc]
mov dword [edx + 0xc8], eax
mov eax, dword [0x8ddbb8]
cmp dword [eax], 0
je 0x826151
lea eax, [ebp - 0xc]
mov edx, 0x826ac4
call fcn.0040ca34
xor eax, eax
push ebp
push 0x826100
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
push eax
push 0x826adc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc8]
push eax
push 1
lea eax, [ebp - 0x40]
mov edx, dword [0x8ddbb8]
mov edx, dword [edx]
call fcn.0040c8f4
mov ecx, dword [ebp - 0x40]
mov dl, 1
mov eax, dword [0x8462dc]
call fcn.00846880
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx + 0xc]
mov dword [edx + 0xc0], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x82610a
mov eax, 0x1388
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xcc], 1
jne 0x826169
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp dword [eax + 0xc0], 0
setne al
cmp al, 1
jne 0x826169
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x50], 1
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
xor edx, edx
mov dword [eax + 0xc8], edx
jmp 0x826169
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
xor edx, edx
mov dword [eax + 0xc8], edx
jmp 0x826169
xor edx, edx
mov dword [eax + 0xc8], edx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x50], 9
jne 0x826238
mov eax, 0x35a4e900
call fcn.00407b54
mov edx, dword [ebp - 0x2c]
mov ebx, dword [edx + 0xc]
mov dword [ebx + 0xc8], eax
mov eax, ebx
call fcn.00826c30
mov eax, dword [ebp - 0x2c]
mov ebx, dword [eax + 0xc]
cmp byte [ebx + 0xc4], 0
jne 0x826230
xor eax, eax
push ebp
push 0x8261f0
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
push eax
push 0x826adc
mov eax, dword [ebx + 0xc8]
push eax
push 1
mov ecx, 0x826af4
mov dl, 1
mov eax, dword [0x8462dc]
call fcn.00846880
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx + 0xc]
mov dword [edx + 0xc0], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x8261fa
mov eax, 0x1388
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xcc], 1
jne 0x826238
cmp dword [eax + 0xc0], 0
setne dl
cmp dl, 1
jne 0x826238
mov byte [eax + 0x50], 2
xor edx, edx
mov dword [eax + 0xc8], edx
jmp 0x826238
xor eax, eax
mov dword [ebx + 0xc8], eax
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x826250
sub edx, 0xffffffe8
xor eax, eax
call fcn.004c776c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x50], 2
jne 0x82626f
mov dword [eax + 0x84], 0x320
jmp 0x826279
mov dword [eax + 0x84], 0x1f4
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x50], 9
jne 0x8262b8
call fcn.00826c30
mov eax, 0x7530
call fcn.004c78cc
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x8262ac
sub edx, 0xffffffec
xor eax, eax
call fcn.004c776c
jmp 0x8268c2
mov eax, 0x64
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov ebx, dword [eax + 0xc]
cmp byte [ebx + 0xc4], 0
jne 0x8262e0
mov eax, ebx
mov edx, 0x826b18
call fcn.00826b8c
mov byte [ebp - 0x16], al
mov eax, dword [0x8dc9cc]
cmp byte [eax], 1
je 0x826a22
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x8262f8
sub edx, 0xfffffff0
xor eax, eax
call fcn.004c776c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x50], 2
jne 0x82631b
mov dword [eax + 0x40], 0x989680
mov dword [eax + 0x44], 0
jmp 0x826329
mov dword [eax + 0x40], 0x1312d00
mov dword [eax + 0x44], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x98
push eax
call sub.kernel32.dll_QueryPerformanceFrequency
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp dword [eax + 0x9c], 0
jne 0x826354
cmp dword [eax + 0x98], 1
jae 0x826370
jmp 0x826356
jge 0x826370
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov dword [eax + 0x98], 0x989680
mov dword [eax + 0x9c], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x88
push eax
call sub.kernel32.dll_QueryPerformanceCounter
call fcn.00433e88
mov eax, dword [ebp - 0x2c]
mov ebx, dword [eax + 0xc]
fstp qword [ebx + 0x30]
wait
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x4c], 0
lea eax, [ebp - 8]
call fcn.0040b8d8
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
xor edx, edx
mov dword [eax + 0x54], edx
xor edx, edx
mov dword [eax + 0x58], edx
mov byte [eax + 0xa4], 0
cmp byte [eax + 0xc4], 0
jne 0x8263cb
call fcn.00824f44
mov eax, dword [ebp - 0x2c]
mov ebx, dword [eax + 0xc]
xor eax, eax
mov dword [ebx + 0x7c], eax
lea eax, [ebx + 0x78]
mov edx, dword [0x404cd0]
call fcn.0040f2c4
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x70
mov edx, dword [0x404cd0]
call fcn.0040f2c4
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x74
mov edx, dword [0x404cd0]
call fcn.0040f2c4
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov dl, 1
call fcn.0082466c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
inc dword [eax + 0x38]
mov eax, dword [ebp - 0x2c]
mov esi, dword [eax + 0xc]
cmp byte [esi + 0xc4], 1
je 0x8268c2
mov eax, esi
call fcn.00825028
lea edx, [ebp - 0x21]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
call fcn.00824344
mov eax, dword [ebp - 0x2c]
mov ebx, dword [eax + 0xc]
cmp byte [ebx + 0xc4], 1
je 0x8268c2
movzx eax, byte [ebx + 0x6c]
sub al, 1
jb 0x826484
dec al
je 0x82676b
dec eax
sub al, 0x34
jb 0x82682e
dec eax
sub al, 0xc8
jb 0x826845
jmp 0x82685a
cmp byte [ebp - 0x21], 1
jne 0x826496
lea edx, [ebp - 0x1c]
mov eax, ebx
call fcn.00824e00
jmp 0x82649b
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x96
jle 0x826720
mov dword [ebp - 0x20], 0x15
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
movzx eax, byte [eax + 0x64]
sub al, 1
jb 0x8264ca
je 0x8264e5
dec al
je 0x8264ee
dec eax
sub al, 7
jb 0x8264f7
jmp 0x8264fe
cmp dword [ebp - 0x1c], 0x1b58
jge 0x8264dc
mov dword [ebp - 0x20], 0x13
jmp 0x8264fe
mov dword [ebp - 0x20], 0x15
jmp 0x8264fe
mov dword [ebp - 0x20], 0x12
jmp 0x8264fe
mov dword [ebp - 0x20], 0xf
jmp 0x8264fe
mov dword [ebp - 0x20], 0xb
cmp dword [ebp - 0x1c], 0x1388
jge 0x82650e
mov dword [ebp - 0x20], 7
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xa0]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x74]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x5c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x78]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
call dword [eax + 0x28]
add esp, 0x14
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x32
jle 0x8266fe
cmp dword [ebp - 0x28], 0x5e
je 0x8266fe
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x90
push eax
call sub.kernel32.dll_QueryPerformanceCounter
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x94]
mov eax, dword [eax + 0x90]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx + 0xc]
sub eax, dword [ecx + 0x88]
sbb edx, dword [ecx + 0x8c]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fild qword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
fild qword [eax + 0x98]
fdivp st(1)
fmul dword [0x826b44]
call fcn.00407cd8
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx + 0xc]
mov dword [ecx + 0x90], eax
mov dword [ecx + 0x94], edx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x90]
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx + 0xc]
mov dword [edx + 0x68], eax
lea edx, [ebp - 0x148]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x68]
call fcn.00408e74
lea edx, [ebp - 0x148]
lea eax, [ebp - 4]
mov ecx, 0
call fcn.0040c078
jmp 0x826617
lea eax, [ebp - 4]
mov ecx, dword [ebp - 4]
mov edx, 0x826b54
call fcn.0040c140
mov eax, dword [ebp - 4]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
je 0x82662c
mov eax, dword [ebp - 0x30]
mov eax, dword [eax - 4]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xa
jl 0x826607
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x88
push eax
call sub.kernel32.dll_QueryPerformanceCounter
lea eax, [ebp - 8]
xor ecx, ecx
mov edx, dword [ebp - 0x28]
call fcn.0040c438
lea eax, [ebp - 8]
call fcn.0040be88
mov edx, eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x78]
mov ecx, dword [ebp - 0x28]
call fcn.00407720
push 0x826b64
push dword [ebp - 4]
push dword [ebp - 8]
push 0x826b80
lea eax, [ebp - 8]
mov edx, 4
call fcn.0040c1c4
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xc4], 0
jne 0x8266bd
mov eax, dword [ebp - 8]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x8266ac
mov eax, dword [ebp - 0x34]
mov eax, dword [eax - 4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 8]
call fcn.00825340
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x84]
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0xa0]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 4]
call fcn.00407720
lea eax, [ebp - 8]
call fcn.0040b8d8
jmp 0x826740
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
xor ecx, ecx
xor edx, edx
call fcn.00825340
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x84]
call fcn.004c78cc
jmp 0x826740
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
xor ecx, ecx
xor edx, edx
call fcn.00825340
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x84]
call fcn.004c78cc
cmp dword [ebp - 0x1c], 0
jle 0x82685a
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x60]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x74]
mov ecx, 0x30
call fcn.00408280
jmp 0x82685a
lea edx, [ebp - 0x15]
mov eax, ebx
call fcn.00824344
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x6c], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0xa0]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 4]
call fcn.00407720
push 0x15
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xa0]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x70]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x5c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x78]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
call dword [eax + 0x28]
add esp, 0x14
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xc4], 1
je 0x8268c2
cmp dword [ebp - 0x28], 0
jle 0x826808
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 0x28]
call fcn.00824534
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xc4], 1
je 0x8268c2
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x84]
call fcn.004c78cc
jmp 0x82685a
mov eax, dword [ebx + 0x84]
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x6c], 0
jmp 0x82685a
mov eax, dword [ebx + 0x84]
call fcn.004c78cc
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x6c], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x7c]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x10]
mov eax, dword [ebp - 0x2c]
mov edi, dword [eax + 0xc]
cmp dword [edi + 0x38], 0x1e
jle 0x826419
xor eax, eax
mov dword [edi + 0x38], eax
xor eax, eax
push ebp
push 0x8268b3
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [edi + 0xc0], 0
setne al
cmp al, 1
jne 0x8268a6
mov eax, dword [edi + 0xc0]
call fcn.00846920
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x826419
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
call fcn.00826c30
xor eax, eax
push ebp
push 0x8268f9
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x78
mov edx, dword [0x404cd0]
call fcn.0040f2c4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x826903
xor eax, eax
push ebp
push 0x82692f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x74
mov edx, dword [0x404cd0]
call fcn.0040f2c4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x826939
xor eax, eax
push ebp
push 0x826965
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x70
mov edx, dword [0x404cd0]
call fcn.0040f2c4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x82696f
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0xa4], 1
jne 0x8269f2
xor edx, edx
push ebp
push 0x82699e
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [eax + 0x7c]
call fcn.004baef4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x8269a8
xor edx, edx
push ebp
push 0x8269dd
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
add eax, 0x7c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov edx, dword [ebp - 0x38]
xor ecx, ecx
mov dword [edx], ecx
call fcn.004099cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x8269e7
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
call fcn.00824e60
xor eax, eax
push ebp
push 0x826a18
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x2c]
call fcn.005fbec0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x826a22
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x826a68
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.0040b914
lea eax, [ebp - 0x14]
call fcn.00410d80
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.0040b914
lea eax, [ebp - 8]
mov edx, 2
call fcn.0040b94c
pop eax
jmp eax