Function at 0x6a8a2c
Capabilities:
Check http status code
Parse pe header

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x20
push 0
push 0
dec ecx
jne 0x6a8a34
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x6aab2c
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0x10], eax
call fcn.00407d74
mov dword [ebp - 8], eax
mov eax, dword [0x839e0c]
xor edx, edx
mov dword [eax], edx
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x84]
cmp eax, 0xc8
jbe 0x6a9b18
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + 0x84], eax
xor edx, edx
push ebp
push 0x6a9aac
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0x11c], 0
je 0x6a8cd0
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 8], 0
jle 0x6a8c9d
mov eax, dword [0x839e0c]
mov dword [eax], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
call fcn.004212e4
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp byte [eax + 8], 0
jne 0x6a8b48
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
mov eax, dword [ebp - 4]
call fcn.006af1e0
test eax, eax
jne 0x6a8b1a
mov eax, dword [ebp - 0x34]
mov byte [eax + 8], 1
call fcn.00407d74
mov edx, dword [ebp - 0x34]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
mov eax, dword [0x83a0d0]
mov eax, dword [eax]
call fcn.0063f158
jmp 0x6a8b38
mov edx, dword [0x6a4940]
mov eax, dword [ebp - 0x34]
call fcn.00406240
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
call fcn.00421168
mov eax, dword [0x839e0c]
mov dword [eax], 2
jmp 0x6a8c9d
mov eax, dword [0x839e0c]
mov dword [eax], 3
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
mov eax, dword [0x83a0d0]
mov eax, dword [eax]
xor ecx, ecx
call fcn.0064012c
mov edx, dword [ebp - 0x34]
mov dword [edx + 0x14], eax
mov eax, dword [0x839e0c]
mov dword [eax], 4
mov eax, dword [ebp - 0x34]
cmp dword [eax + 0x14], 0
je 0x6a8c62
cmp dword [ebp - 0x40], 0
jle 0x6a8c62
xor eax, eax
push ebp
push 0x6a8bf1
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x6aab44
push 0
push 0
push 1
push 0
mov eax, dword [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x3c]
push eax
push 0x7295bf1
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 1
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
mov eax, dword [0x83976c]
mov eax, dword [eax]
call fcn.006b67a8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6a8c37
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
call fcn.00421168
mov edx, dword [0x6a4940]
mov eax, dword [ebp - 0x34]
call fcn.00406240
mov eax, dword [0x839e0c]
mov dword [eax], 5
jmp 0x6a8c92
call fcn.00407d74
mov edx, dword [ebp - 0x34]
sub eax, dword [edx + 0xc]
cmp eax, 0x7d0
jbe 0x6a8c92
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
call fcn.00421168
mov edx, dword [0x6a4940]
mov eax, dword [ebp - 0x34]
call fcn.00406240
mov eax, dword [0x839e0c]
mov dword [eax], 6
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 8], 0
setg al
mov edx, dword [ebp - 4]
mov byte [edx + 0x11c], al
mov eax, dword [ebp - 4]
cmp byte [eax + 0x11c], 0
jne 0x6a8cd0
mov cl, 1
xor edx, edx
mov eax, 0x6aab58
call fcn.0077bfe4
mov eax, dword [0x839e0c]
mov dword [eax], 7
mov eax, dword [ebp - 4]
add eax, 4
push eax
call fcn.00407c14
xor edx, edx
push ebp
push 0x6a96fa
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [eax]
call dword [edx + 0x14]
mov esi, eax
dec esi
test esi, esi
jl 0x6a9648
inc esi
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov al, byte [eax + 0x120]
sub al, 0xb
je 0x6a8d4e
dec al
je 0x6a8e9b
dec al
je 0x6a8f85
dec al
je 0x6a9295
jmp 0x6a92fe
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
test eax, eax
je 0x6a8e8b
cmp byte [eax + 0xe70], 0
jne 0x6a8e8b
mov dword [ebp - 0x1c], eax
mov eax, dword [0x839e0c]
mov dword [eax], 8
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x122], 0
je 0x6a8e62
mov eax, dword [ebp - 0x28]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
jne 0x6a8e1b
mov eax, dword [ebp - 0x28]
cmp dword [eax + 0xf0], 0
je 0x6a8dd4
mov eax, dword [ebp - 0x28]
mov word [eax + 0x148], 0x532
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 0xf0]
mov eax, dword [ebp - 0x28]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0xf8]
jmp 0x6a8e8b
push 0
push 0
push 0
lea eax, [ebp - 0x98]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x533
call fcn.0049a678
mov eax, dword [ebp - 0x28]
push esi
lea esi, [ebp - 0x98]
lea edi, reloc.kernel32.dll_DeleteCriticalSection
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [ebp - 0x28]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0xf8]
jmp 0x6a8e8b
push 0
push 0
push 0
lea eax, [ebp - 0x98]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x533
call fcn.0049a678
mov eax, dword [ebp - 0x28]
push esi
lea esi, [ebp - 0x98]
lea edi, reloc.kernel32.dll_DeleteCriticalSection
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [ebp - 0x28]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0xf8]
jmp 0x6a8e8b
mov eax, dword [ebp - 0x28]
mov word [eax + 0x148], 0x532
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 0xf0]
mov eax, dword [ebp - 0x28]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0xf8]
mov eax, dword [0x839e0c]
mov dword [eax], 9
jmp 0x6a9633
mov eax, dword [0x839e0c]
mov dword [eax], 0xa
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x6a8f75
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0xe70], 0
jne 0x6a8f75
mov eax, dword [ebp - 0x1c]
add eax, 0xb0a8
call fcn.00405140
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
dec eax
je 0x6a8ef0
dec eax
je 0x6a8f1d
dec eax
je 0x6a8f4a
jmp 0x6a8f75
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a8f75
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aab74
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
jmp 0x6a8f75
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a8f75
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aab8c
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
jmp 0x6a8f75
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a8f75
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aaba4
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
mov eax, dword [0x839e0c]
mov dword [eax], 0xb
jmp 0x6a9633
mov eax, dword [0x839e0c]
mov dword [eax], 0xc
mov eax, dword [ebp - 0x28]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6a9285
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
jne 0x6a9261
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
dec eax
je 0x6a8feb
dec eax
je 0x6a91dc
dec eax
je 0x6a9209
dec eax
sub eax, 3
jb 0x6a9236
jmp 0x6a9261
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ebx, eax
dec ebx
test ebx, ebx
jl 0x6a9060
inc ebx
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x18]
cmp eax, dword [ebp - 0x1c]
jne 0x6a905a
lea ecx, [ebp - 0x9c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x24]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x18]
call fcn.0040b368
test eax, eax
jne 0x6a905a
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x24]
mov ebx, dword [eax]
call dword [ebx + 0x20]
jmp 0x6a9060
inc dword [ebp - 0x24]
dec ebx
jne 0x6a9005
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a310]
mov eax, dword [eax]
call fcn.007645a4
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 0x18]
mov eax, dword [0x83a310]
mov eax, dword [eax]
call fcn.0076442c
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x8397dc]
mov eax, dword [eax]
call fcn.00765bf0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 0x18]
mov eax, dword [0x8397dc]
mov eax, dword [eax]
call fcn.00765cf0
mov eax, dword [ebp - 0x1c]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6a90e9
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.004cba0c
mov eax, dword [ebp - 0x1c]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6a9168
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ebx, eax
dec ebx
test ebx, ebx
jl 0x6a9168
inc ebx
lea ecx, [ebp - 0xa0]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x18]
call fcn.0040b368
test eax, eax
jne 0x6a9165
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x20]
jmp 0x6a9168
dec ebx
jne 0x6a9111
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x18]
call fcn.00781164
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x18]
call fcn.007818bc
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x18]
call fcn.00781b94
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a91cf
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aabbc
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
mov eax, dword [ebp - 0x1c]
call fcn.0075670c
jmp 0x6a9261
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a9261
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aab8c
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
jmp 0x6a9261
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a9261
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aaba4
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
jmp 0x6a9261
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6a9261
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov ecx, 0x6aabd8
mov edx, dword [ebp - 0x1c]
call fcn.006a2c20
mov eax, dword [ebp - 0x1c]
add eax, 0xb0a4
call fcn.00405140
mov eax, dword [ebp - 0x28]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
jne 0x6a9285
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.006b010c
mov eax, dword [0x839e0c]
mov dword [eax], 0xd
jmp 0x6a9633
mov eax, dword [0x839e0c]
mov dword [eax], 0xe
mov eax, dword [ebp - 0x28]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
jne 0x6a92ee
mov eax, dword [ebp - 0x28]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6a92ee
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0xe70], 0
jne 0x6a92ee
push 0
push 0
push 0
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0xf0]
push eax
xor ecx, ecx
mov dx, 0x679
mov eax, dword [ebp - 0x1c]
call fcn.006d76a8
mov eax, dword [0x839e0c]
mov dword [eax], 0xf
jmp 0x6a9633
mov eax, dword [0x839e0c]
mov dword [eax], 0x10
mov eax, dword [0x83976c]
mov eax, dword [eax]
call fcn.006b658c
mov ebx, eax
lea ecx, [ebp - 0xa4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0xa4]
push eax
lea eax, [ebp - 0xa8]
mov edx, dword [ebp - 0x28]
call fcn.004053b4
mov edx, dword [ebp - 0xa8]
mov eax, dword [ebp - 4]
pop ecx
call fcn.006a74b0
mov byte [ebp - 0x41], al
mov eax, dword [0x839e0c]
mov dword [eax], 0x11
test bl, bl
jne 0x6a953c
cmp byte [ebp - 0x41], 0
jne 0x6a953c
mov eax, dword [0x839e0c]
mov dword [eax], 0x12
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x12e], 0
je 0x6a9418
mov eax, dword [ebp - 0x28]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
jne 0x6a93e0
mov eax, dword [0x839e0c]
mov dword [eax], 0x13
mov eax, dword [ebp - 0x28]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
call fcn.006addf0
mov dword [ebp - 0x1c], eax
mov eax, dword [0x839e0c]
mov dword [eax], 0x14
cmp dword [ebp - 0x1c], 0
je 0x6a952c
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x1c]
call fcn.0042111c
jmp 0x6a952c
lea ecx, [ebp - 0xac]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0xc]
lea eax, [ebp - 0xac]
mov edx, 0x6aabf4
call fcn.00405418
mov eax, dword [ebp - 0xac]
mov cl, 1
xor edx, edx
call fcn.0077bfe4
jmp 0x6a952c
mov eax, dword [0x8392b0]
mov eax, dword [eax]
cmp dword [eax], 4
jl 0x6a9452
call fcn.0040dbbc
mov eax, dword [0x8395b4]
fsub qword [eax]
fcomp dword [0x6aac20]
fnstsw ax
sahf
jbe 0x6a9452
call fcn.0040dbbc
mov eax, dword [0x8395b4]
fsub qword [eax]
fcomp dword [0x6aac24]
fnstsw ax
sahf
jb 0x6a94c2
mov eax, dword [0x839e0c]
mov dword [eax], 0x15
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
call fcn.006a75c4
mov dword [ebp - 0x1c], eax
mov eax, dword [0x839e0c]
mov dword [eax], 0x16
cmp dword [ebp - 0x1c], 0
je 0x6a9492
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x1c]
call fcn.0042111c
jmp 0x6a952c
mov eax, dword [ebp - 0x28]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0042111c
mov eax, dword [ebp - 0x28]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0042111c
jmp 0x6a952c
mov eax, dword [ebp - 0x28]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0042111c
mov eax, dword [ebp - 0x28]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0042111c
lea edx, [ebp - 0xb4]
mov eax, dword [0x8392b0]
mov eax, dword [eax]
mov eax, dword [eax]
call fcn.0040b900
mov ecx, dword [ebp - 0xb4]
lea eax, [ebp - 0xb0]
mov edx, 0x6aac30
call fcn.0040545c
mov eax, dword [ebp - 0xb0]
mov cl, 1
mov edx, 0x378
call fcn.0077bfe4
mov eax, dword [0x839e0c]
mov dword [eax], 0x17
jmp 0x6a9633
lea ecx, [ebp - 0xb8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp - 4]
call fcn.006b0080
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x12e], 0
jne 0x6a9598
mov eax, dword [ebp - 0x28]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0042111c
mov eax, dword [ebp - 0x28]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0042111c
mov eax, dword [0x839e0c]
mov dword [eax], 0x18
test bl, bl
je 0x6a95ea
push 0x6aac54
lea ecx, [ebp - 0xc0]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0xc]
push dword [ebp - 0xc0]
push 0x6aac68
lea eax, [ebp - 0xbc]
mov edx, 3
call fcn.004054d0
mov eax, dword [ebp - 0xbc]
mov cl, 1
xor edx, edx
call fcn.0077bfe4
cmp byte [ebp - 0x41], 0
je 0x6a9633
push 0x6aac54
lea ecx, [ebp - 0xc8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0xc]
push dword [ebp - 0xc8]
push 0x6aac88
lea eax, [ebp - 0xc4]
mov edx, 3
call fcn.004054d0
mov eax, dword [ebp - 0xc4]
mov cl, 1
xor edx, edx
call fcn.0077bfe4
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
call fcn.006b4d5c
inc dword [ebp - 0x20]
dec esi
jne 0x6a8d13
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x839e0c]
mov dword [eax], 0x19
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x68]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x6a96ca
inc esi
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x68]
mov edx, dword [ebp - 0x20]
call fcn.004212e4
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 4]
call fcn.006aef84
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x6a96b6
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x2c]
mov dl, byte [eax]
mov eax, dword [ebp - 0x1c]
call fcn.006fd040
mov edx, dword [0x491f88]
mov eax, dword [ebp - 0x2c]
call fcn.00406240
inc dword [ebp - 0x20]
dec esi
jne 0x6a9674
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x68]
mov edx, dword [eax]
call dword [edx + 8]
mov eax, dword [0x839e0c]
mov dword [eax], 0x1a
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6a9701
mov eax, dword [ebp - 4]
add eax, 4
push eax
call fcn.00407de4
ret
mov eax, dword [0x839e0c]
mov dword [eax], 0x28
xor eax, eax
push ebp
push 0x6a9d55
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x5c]
cmp eax, 0xbb8
jbe 0x6a9d4b
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x6a9d4b
inc esi
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
mov edx, dword [ebp - 0x20]
call fcn.004212e4
mov dword [ebp - 0x1c], eax
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x83a4b8]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6a9d41
xor eax, eax
push ebp
push 0x6a9d08
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
mov edx, dword [ebp - 0x20]
call fcn.004212e4
mov dword [ebp - 0x1c], eax
mov eax, dword [0x83939c]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9bd1
mov eax, dword [0x83939c]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x83a0b4]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9be6
mov eax, dword [0x83a0b4]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x83982c]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9bfb
mov eax, dword [0x83982c]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x839370]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9c10
mov eax, dword [0x839370]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x839d08]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9c25
mov eax, dword [0x839d08]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x839edc]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9c3a
mov eax, dword [0x839edc]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x839c80]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9c76
mov eax, dword [0x839c80]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x83a03c]
mov byte [eax], 0
mov eax, dword [0x83a868]
mov byte [eax], 0
mov eax, dword [0x83a5b8]
call fcn.00405140
call fcn.00407d74
mov edx, dword [0x83a86c]
mov dword [edx], eax
mov eax, dword [0x83a180]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9cb2
mov eax, dword [0x83a180]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x83a508]
mov byte [eax], 0
mov eax, dword [0x839230]
mov byte [eax], 0
mov eax, dword [0x83aa68]
call fcn.00405140
call fcn.00407d74
mov edx, dword [0x839234]
mov dword [edx], eax
mov eax, dword [0x83a76c]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c]
jne 0x6a9cf6
mov eax, dword [0x83a76c]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x839850]
mov eax, dword [eax]
cmp byte [eax], 0
je 0x6a9cf6
mov eax, dword [0x839850]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [0x83a790]
mov eax, dword [eax]
mov byte [eax], 1
call fcn.00407d74
mov edx, dword [0x83984c]
mov edx, dword [edx]
mov dword [edx], eax
mov eax, dword [ebp - 0x1c]
call fcn.004041f0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6a9d31
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
mov edx, dword [ebp - 0x20]
call fcn.00421168
jmp 0x6a9d4b
inc dword [ebp - 0x20]
dec esi
jne 0x6a9b6c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6a9d7e
mov eax, dword [0x839e0c]
mov dword [eax], 0x29
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x2932e00
jbe 0x6a9fab
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x8390e8]
mov eax, dword [eax]
cmp byte [eax], 0
je 0x6a9e2a
mov eax, dword [0x8390e8]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [0x83a03c]
mov byte [eax], 0
mov eax, dword [0x83a5b8]
call fcn.00405140
mov eax, dword [0x839f74]
call fcn.00405140
call fcn.00407d74
mov edx, dword [0x83a718]
mov dword [edx], eax
call fcn.00407d74
mov edx, dword [0x83a86c]
mov dword [edx], eax
call fcn.00407d74
mov edx, dword [0x839520]
mov dword [edx], eax
mov eax, dword [0x839404]
mov eax, dword [eax]
xor edx, edx
mov dword [eax], edx
call fcn.00407d74
mov edx, dword [0x839cf8]
mov dword [edx], eax
mov eax, dword [0x839c80]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x83952c]
mov eax, dword [eax]
cmp byte [eax], 0
je 0x6a9ea4
mov eax, dword [0x83952c]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [0x83a508]
mov byte [eax], 0
mov eax, dword [0x83aa68]
call fcn.00405140
mov eax, dword [0x83a428]
call fcn.00405140
call fcn.00407d74
mov edx, dword [0x839120]
mov dword [edx], eax
call fcn.00407d74
mov edx, dword [0x839234]
mov dword [edx], eax
call fcn.00407d74
mov edx, dword [0x839a3c]
mov dword [edx], eax
mov eax, dword [0x8398bc]
mov eax, dword [eax]
xor edx, edx
mov dword [eax], edx
call fcn.00407d74
mov edx, dword [0x83a1d8]
mov dword [edx], eax
mov eax, dword [0x83a180]
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 4]
call fcn.006af150
cmp eax, 0xa
jl 0x6a9fab
mov eax, dword [0x8396a8]
mov eax, dword [eax]
mov byte [eax], 1
mov dl, 1
mov eax, dword [0x41f05c]
call fcn.004041c0
mov dword [ebp - 0x54], eax
xor eax, eax
push ebp
push 0x6a9f06
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0xdc]
mov eax, dword [0x83a1b4]
mov eax, dword [eax]
call fcn.004770d0
mov edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0x54]
call fcn.0042427c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6a9f10
mov ebx, 0xc
lea eax, [ebp - 0x50]
mov edx, ebx
call fcn.0040579c
mov eax, ebx
neg eax
cdq
push edx
push eax
mov dl, 2
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x18]
lea eax, [ebp - 0x50]
call fcn.00405668
mov edx, eax
mov ecx, ebx
mov eax, dword [ebp - 0x54]
mov ebx, dword [eax]
call dword [ebx + 0xc]
lea edx, [ebp - 0x78]
mov ecx, 0xc
mov eax, dword [ebp - 0x50]
call fcn.004a322c
mov eax, 4
call fcn.00402ea4
mov ebx, eax
mov eax, dword [ebp - 0x54]
mov edx, dword [eax]
call dword [edx]
mov edx, eax
sub edx, 0xc
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 4]
call fcn.0049fbd8
sub eax, dword [ebp - 0x74]
mov dword [ebx], eax
mov eax, dword [ebp - 0x54]
call fcn.004041f0
lea eax, [ebp - 0x78]
xor ecx, ecx
mov edx, 0xc
call fcn.0040398c
mov eax, dword [ebx]
mov edx, dword [0x8392a0]
mov edx, dword [edx]
add dword [edx], eax
mov edx, 4
mov eax, ebx
call fcn.00402ed4
mov eax, dword [0x839e0c]
mov dword [eax], 0x2a
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x6aa206
inc esi
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x20]
call fcn.004212e4
mov edi, eax
mov ebx, dword [edi + 8]
dec ebx
test ebx, ebx
jl 0x6aa1f5
inc ebx
mov dword [ebp - 0x24], 0
mov edx, dword [ebp - 0x24]
mov eax, edi
call fcn.004212e4
mov dword [ebp - 0x58], eax
mov eax, dword [0x839e0c]
mov dword [eax], 0x2b
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
call fcn.00406750
test eax, eax
jle 0x6aa1dd
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x7556], 0
je 0x6aa11e
mov eax, dword [0x839e0c]
mov dword [eax], 0x2c
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
mov eax, dword [0x83a940]
mov eax, dword [eax]
call fcn.007742f0
mov dword [ebp - 0x5c], eax
mov eax, dword [0x839e0c]
mov dword [eax], 0x2d
cmp dword [ebp - 0x5c], 0
je 0x6aa1dd
mov eax, dword [0x839e0c]
mov dword [eax], 0x2e
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
test eax, eax
je 0x6aa0d7
mov edx, dword [0x83a4b8]
cmp byte [eax], 0
je 0x6aa0d7
mov eax, dword [0x839e0c]
mov dword [eax], 0x2f
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
call fcn.00406750
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x18]
push eax
mov eax, dword [ebp - 0x58]
lea ecx, [eax + 8]
mov dx, 0xf
mov eax, dword [ebp - 0x5c]
call fcn.00771114
mov eax, dword [0x839e0c]
mov dword [eax], 0x30
jmp 0x6aa1dd
mov eax, dword [0x839e0c]
mov dword [eax], 0x31
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
call fcn.00406750
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x18]
push eax
mov eax, dword [ebp - 0x58]
lea ecx, [eax + 8]
mov dx, 5
mov eax, dword [ebp - 0x5c]
call fcn.00771114
mov eax, dword [0x839e0c]
mov dword [eax], 0x32
jmp 0x6aa1dd
mov eax, dword [0x839e0c]
mov dword [eax], 0x33
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
test eax, eax
je 0x6aa191
mov edx, dword [0x83a4b8]
cmp byte [eax], 0
je 0x6aa191
mov eax, dword [0x839e0c]
mov dword [eax], 0x34
mov eax, dword [ebp - 0x58]
add eax, 8
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
call fcn.00406750
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x18]
push eax
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
mov eax, dword [0x83a940]
mov eax, dword [eax]
mov cx, 0xf
call fcn.00771a5c
mov eax, dword [0x839e0c]
mov dword [eax], 0x35
jmp 0x6aa1dd
mov eax, dword [0x839e0c]
mov dword [eax], 0x36
mov eax, dword [ebp - 0x58]
add eax, 8
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x20]
call fcn.00406750
push eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax + 0x18]
push eax
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
mov eax, dword [0x83a940]
mov eax, dword [eax]
mov cx, 5
call fcn.00771a5c
mov eax, dword [0x839e0c]
mov dword [eax], 0x37
mov edx, dword [0x491ee0]
mov eax, dword [ebp - 0x58]
call fcn.00406240
inc dword [ebp - 0x24]
dec ebx
jne 0x6a9ffa
mov eax, edi
call fcn.004041f0
inc dword [ebp - 0x20]
dec esi
jne 0x6a9fd3
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [eax]
call dword [edx + 8]
mov eax, dword [0x839e0c]
mov dword [eax], 0x38
mov byte [ebp - 0x11], 0
xor eax, eax
push ebp
push 0x6aa9e7
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00407d74
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x98]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, dword [ebp - 0x18]
jle 0x6aa9c1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x6aa245
mov eax, dword [0x839e0c]
mov dword [eax], 0x39
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0xc]
sub edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
cmp edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6aa98d
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0xc]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [0x839e0c]
mov dword [eax], 0x3a
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0xe70], 0
jne 0x6aa77c
mov eax, dword [0x839e0c]
mov dword [eax], 0x3b
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x82b0], 0
jne 0x6aa33b
xor eax, eax
push ebp
push 0x6aa30d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x839e0c]
mov dword [eax], 0x3c
mov eax, dword [ebp - 0x1c]
call fcn.006d3278
mov eax, dword [0x839e0c]
mov dword [eax], 0x3d
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6aa98d
xor eax, eax
push ebp
push 0x6aa706
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x7d4c], 0
jne 0x6aa382
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x7d4c], 1
mov eax, dword [0x839e0c]
mov dword [eax], 0x3f
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
call dword [edx + 0xfc]
mov eax, dword [0x839e0c]
mov dword [eax], 0x3f
jmp 0x6aa3ef
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x1c]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6aa3ef
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov dword [ebp - 0x10], 0xa
mov eax, dword [0x839e0c]
mov dword [eax], 0x40
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
call dword [edx + 0x4c]
mov dword [ebp - 0x10], 0xb
mov eax, dword [0x839e0c]
mov dword [eax], 0x41
mov eax, dword [ebp - 0x1c]
call fcn.006fba70
mov eax, dword [0x839e0c]
mov dword [eax], 0x42
mov dword [ebp - 0x10], 0xc
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0xfa4], 0
jne 0x6aa62c
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x105c], 0
jne 0x6aa62c
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x83a4b8]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6aa62c
mov eax, dword [0x839e0c]
mov dword [eax], 0x43
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a23c]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, dword [ebp - 0x1c]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6aa601
mov eax, dword [0x839e0c]
mov dword [eax], 0x44
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a23c]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x839e0c]
mov dword [eax], 0x45
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0xe4]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a23c]
mov eax, dword [eax]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov ecx, dword [ebp - 0xe4]
mov eax, dword [0x83936c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x1c]
call fcn.00691eb8
mov eax, dword [0x839e0c]
mov dword [eax], 0x46
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0xf], 0
je 0x6aa512
mov eax, dword [0x839e0c]
mov dword [eax], 0x47
mov eax, dword [ebp - 0x4c]
mov al, byte [eax + 0xd]
push eax
push 0
push 0x1e
push 1
mov eax, dword [ebp - 0x4c]
mov cl, byte [eax + 0xc]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
call fcn.007169e0
mov eax, dword [0x839e0c]
mov dword [eax], 0x48
jmp 0x6aa601
mov eax, dword [0x839e0c]
mov dword [eax], 0x49
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x10], 0
je 0x6aa595
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x10]
mov al, byte [eax]
sub al, 1
jb 0x6aa53a
je 0x6aa54e
dec al
je 0x6aa562
jmp 0x6aa576
push 0
xor ecx, ecx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x6aa5f6
push 0
mov cl, 1
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x6aa5f6
push 0
mov cl, 2
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x6aa5f6
mov eax, dword [ebp - 0x4c]
movzx eax, byte [eax + 0xd]
push eax
push 0
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
mov cl, byte [eax + 0xc]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0xc]
jmp 0x6aa5f6
mov eax, dword [ebp - 0x4c]
mov al, byte [eax]
sub al, 1
jb 0x6aa5a6
je 0x6aa5b7
dec al
je 0x6aa5c8
jmp 0x6aa5d9
push 0
xor ecx, ecx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x6aa5f6
push 0
mov cl, 1
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x6aa5f6
push 0
mov cl, 2
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x6aa5f6
mov eax, dword [ebp - 0x4c]
movzx eax, byte [eax + 0xd]
push eax
push 0
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
mov cl, byte [eax + 0xc]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [0x839e0c]
mov dword [eax], 0x4a
mov eax, dword [ebp - 0x1c]
inc dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a23c]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, dword [ebp - 0x1c]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jg 0x6aa62c
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x10], 0xe
mov eax, dword [0x839e0c]
mov dword [eax], 0x4b
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
call dword [edx + 0x54]
mov eax, dword [0x839e0c]
mov dword [eax], 0x4c
mov dword [ebp - 0x10], 0xf
mov eax, dword [0x83976c]
mov eax, dword [eax]
call fcn.006b658c
test al, al
jne 0x6aa6f9
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x83a4b8]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6aa6f9
mov dword [ebp - 0x10], 0x10
mov eax, dword [0x839e0c]
mov dword [eax], 0x4d
call fcn.00407d74
mov edx, dword [ebp - 0x1c]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov dword [ebp - 0x10], 0x11
mov eax, dword [ebp - 0x1c]
call fcn.006f9dd8
mov eax, dword [0x839e0c]
mov dword [eax], 0x4e
mov eax, dword [ebp - 0x1c]
call fcn.006f9e58
mov eax, dword [0x839e0c]
mov dword [eax], 0x4f
mov dword [ebp - 0x10], 0x12
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.006b010c
mov eax, dword [0x839e0c]
mov dword [eax], 0x50
mov dword [ebp - 0x10], 0x13
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6aa98d
xor eax, eax
push ebp
push 0x6aa7d9
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x839e0c]
mov dword [eax], 0x51
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [0x839e0c]
mov dword [eax], 0x52
mov dword [ebp - 0x10], 2
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x839e0c]
mov dword [eax], 0x53
mov dword [ebp - 0x10], 3
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6aa846
xor eax, eax
push ebp
push 0x6aa91b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x839e0c]
mov dword [eax], 0x54
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.006b0274
mov eax, dword [0x839e0c]
mov dword [eax], 0x55
mov dword [ebp - 0x10], 4
mov eax, dword [ebp - 0x1c]
call fcn.006f9dd8
mov eax, dword [0x839e0c]
mov dword [eax], 0x56
mov dword [ebp - 0x10], 5
mov eax, dword [ebp - 0x1c]
call fcn.006f9e58
mov eax, dword [0x839e0c]
mov dword [eax], 0x57
mov dword [ebp - 0x10], 6
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.006b010c
mov eax, dword [0x839e0c]
mov dword [eax], 0x58
mov dword [ebp - 0x10], 7
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x105c], 0
je 0x6aa8e5
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x7d69], 1
jmp 0x6aa903
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a940]
mov eax, dword [eax]
call fcn.007734cc
mov eax, dword [0x839e0c]
mov dword [eax], 0x59
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6aa245
mov eax, dword [0x839e0c]
mov dword [eax], 0x5a
inc dword [ebp - 0x18]
call fcn.00407d74
sub eax, dword [ebp - 8]
mov edx, dword [0x839c00]
cmp eax, dword [edx]
jbe 0x6aa245
mov byte [ebp - 0x11], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x18]
mov dword [eax + 0x98], edx
mov eax, dword [0x839e0c]
mov dword [eax], 0x5b
cmp byte [ebp - 0x11], 0
jne 0x6aa9dd
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x98], edx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6aaa2a
mov eax, dword [0x839e0c]
mov dword [eax], 0x5c
mov eax, dword [ebp - 4]
inc dword [eax + 0x9c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x9c]
mov edx, dword [0x839760]
mov dword [edx], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x98], 0
jne 0x6aaac1
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x9c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x9c]
mov edx, dword [0x839760]
mov dword [edx], eax
call fcn.00407d74
mov ebx, eax
mov eax, dword [0x83993c]
sub ebx, dword [eax]
mov eax, dword [0x839200]
mov dword [eax], ebx
call fcn.00407d74
mov edx, dword [0x83993c]
mov dword [edx], eax
mov eax, dword [0x839154]
mov eax, dword [eax]
cdq
push edx
push eax
mov eax, ebx
xor edx, edx
cmp edx, dword [esp + 4]
jne 0x6aaab6
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x6aaac1
jmp 0x6aaaba
pop edx
pop eax
jle 0x6aaac1
mov eax, dword [0x839154]
mov dword [eax], ebx
call fcn.00407d74
sub eax, dword [ebp - 8]
mov edx, dword [0x839334]
mov dword [edx], eax
mov eax, dword [0x839280]
mov eax, dword [eax]
mov edx, dword [0x839334]
cmp eax, dword [edx]
jge 0x6aaaf1
mov eax, dword [0x839334]
mov eax, dword [eax]
mov edx, dword [0x839280]
mov dword [edx], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6aab33
lea eax, [ebp - 0x100]
mov edx, 0x1a
call fcn.00405164
lea eax, [ebp - 0x80]
mov edx, 2
call fcn.00405164
lea eax, [ebp - 0x50]
call fcn.00405140
lea eax, [ebp - 0x30]
call fcn.00405140
ret