Function at 0x6deb40
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x22
push 0
push 0
dec ecx
jne 0x6deb48
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
lea eax, [ebp - 0x94]
mov edx, dword [0x491db8]
call fcn.00405ce8
xor eax, eax
push ebp
push 0x6e1af7
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0x20], eax
mov eax, dword [0x83a458]
xor edx, edx
mov dword [eax], edx
mov byte [ebp - 5], 0
mov byte [ebp - 0xd], 0
call fcn.00407d74
mov dword [ebp - 0x24], eax
xor eax, eax
push ebp
push 0x6dec19
push dword fs:[eax]
mov dword fs:[eax], esp
jmp 0x6debed
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [0x83a458]
mov dword [eax], 1
movzx eax, word [ebp - 0x94]
mov edx, dword [0x839ccc]
mov dword [edx], eax
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [0x839ccc]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x83a458]
mov dword [eax], 2
mov dword [ebp - 0x20], 0x3e9
call fcn.00407d74
sub eax, dword [ebp - 0x24]
cmp eax, 0x64
jae 0x6dec0c
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 4]
call fcn.0070b0d4
test al, al
jne 0x6deba3
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6decac
mov eax, dword [0x83a458]
mov dword [eax], 3
xor eax, eax
push ebp
push 0x6df630
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0x164], 0
je 0x6ded3e
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0
jne 0x6ded3e
mov ebx, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe78], 0
jne 0x6ded3e
cmp byte [ebx + 0x75e8], 0
je 0x6ded3e
mov ax, word [ebx + 0x75ec]
cmp ax, word [ebx + 0x75ee]
jae 0x6ded3e
mov ax, word [ebx + 0x75ee]
mov word [ebx + 0x75ec], ax
mov eax, ebx
call fcn.006c0ad0
mov eax, dword [0x83a458]
mov dword [eax], 4
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0
jne 0x6ded8f
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x40], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x48], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x44], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x4c], eax
jmp 0x6dedc7
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x40], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x48], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x44], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x48], 0
jg 0x6dedd4
mov dword [ebp - 0x48], 1
cmp dword [ebp - 0x4c], 0
jg 0x6dede1
mov dword [ebp - 0x4c], 1
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov ecx, 0x14
xor edx, edx
div ecx
mov esi, eax
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
movsx ebx, byte [eax + 0xdac]
add ebx, esi
mov eax, dword [ebp - 4]
add dword [eax + reloc.kernel32.dll_DeleteCriticalSection], ebx
mov eax, dword [ebp - 4]
movsx ebx, byte [eax + 0xdad]
add ebx, esi
mov eax, dword [ebp - 4]
add dword [eax + reloc.kernel32.dll_DeleteCriticalSection], ebx
mov eax, dword [0x83a458]
mov dword [eax], 5
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe78], 0
jne 0x6df5e5
xor eax, eax
push ebp
push 0x6df250
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov al, byte [eax + 0xda2]
sub al, 2
jb 0x6dee70
sub al, 0x3a
jne 0x6df246
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe8b], 0
jne 0x6df246
mov ebx, dword [ebp - 4]
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
jle 0x6deee4
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6deee4
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 0xf8], 0
jle 0x6deee4
call fcn.00407d74
sub eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + 0xfc]
cdq
cmp edx, dword [esp + 4]
jne 0x6deecf
cmp eax, dword [esp]
pop edx
pop eax
jae 0x6deee4
jmp 0x6deed3
pop edx
pop eax
jge 0x6deee4
call fcn.00407d74
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
dec dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a458]
mov dword [eax], 6
cmp byte [ebx + 0x6aae], 0
je 0x6def1b
call fcn.00407d74
sub eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jb 0x6def1b
call fcn.00407d74
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
inc dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a458]
mov dword [eax], 7
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
ja 0x6df246
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
jne 0x6df0bb
cmp byte [ebx + 0x6aae], 0
je 0x6df246
imul eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
cmp eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6df246
xor eax, eax
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6df246
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 0xf8], 0
jl 0x6def9f
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + 0xf8]
cmp eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6df246
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 0xf8], 0
jle 0x6defb4
inc dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x83a458]
mov dword [eax], 8
mov eax, ebx
call fcn.006de4d8
mov eax, dword [0x83a458]
mov dword [eax], 9
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6defe3
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0x64
jb 0x6deff1
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
jmp 0x6df043
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0xa8], eax
xor eax, eax
mov dword [ebp - 0xa4], eax
fild qword [ebp - 0xa8]
fdiv dword [0x6e1b28]
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0xb0], eax
xor eax, eax
mov dword [ebp - 0xac], eax
fild qword [ebp - 0xb0]
fmulp st(1)
call fcn.0040340c
push edx
push eax
push 0
push 1
call fcn.0043514c
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov byte [ebx + 0x11e0], 1
call fcn.00407d74
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov byte [ebp - 0xd], 1
push 1
mov edx, dword [0x83a684]
mov edx, dword [edx]
mov cl, 1
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov eax, dword [0x83a458]
mov dword [eax], 0xa
cmp byte [ebx + 0xda2], 0
jne 0x6df246
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6df246
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov ecx, dword [0x839788]
mov ecx, dword [ecx]
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
call fcn.006a2a64
jmp 0x6df246
mov eax, dword [0x83a458]
mov dword [eax], 0xb
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6df0e0
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov al, byte [eax + 0x1089]
mov byte [ebp - 0x35], al
jmp 0x6df0e4
mov byte [ebp - 0x35], 0
cmp byte [ebp - 0x35], 0
jne 0x6df246
cmp byte [ebx + 0x6aae], 0
je 0x6df246
imul eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
cmp eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6df246
xor eax, eax
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6df246
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 0xf8], 0
jl 0x6df14d
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + 0xf8]
cmp eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6df246
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 0xf8], 0
jle 0x6df162
inc dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, ebx
call fcn.006de4d8
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6df17b
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0x64
jb 0x6df189
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
jmp 0x6df1db
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0xa8], eax
xor eax, eax
mov dword [ebp - 0xa4], eax
fild qword [ebp - 0xa8]
fdiv dword [0x6e1b28]
mov eax, dword [ebx + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0xb0], eax
xor eax, eax
mov dword [ebp - 0xac], eax
fild qword [ebp - 0xb0]
fmulp st(1)
call fcn.0040340c
push edx
push eax
push 0
push 1
call fcn.0043514c
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov byte [ebx + 0x11e0], 1
call fcn.00407d74
mov dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov byte [ebp - 0xd], 1
push 1
mov edx, dword [0x83a684]
mov edx, dword [edx]
mov cl, 1
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov eax, dword [0x83a458]
mov dword [eax], 0xc
cmp byte [ebx + 0xda2], 0
jne 0x6df246
mov eax, dword [0x839fb4]
cmp dword [eax], 0
je 0x6df246
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
push 0
mov ecx, dword [0x839788]
mov ecx, dword [ecx]
mov eax, dword [0x839fb4]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
call fcn.006a2a64
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6df279
mov eax, dword [0x83a458]
mov dword [eax], 0xd
cmp byte [ebp - 0xd], 0
je 0x6df294
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.006d641c
mov eax, dword [0x83a458]
mov dword [eax], 0xe
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe8b], 0
je 0x6df2b6
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [0x83a458]
mov dword [eax], 0xf
mov dword [ebp - 0x20], 0x7d3
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
ja 0x6df3df
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
ja 0x6df3df
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe70], 0
jne 0x6df3df
xor eax, eax
push ebp
push 0x6df35d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x83a458]
mov dword [eax], 0x10
jmp 0x6df336
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov dword [ebp - 0x20], 0x3e9
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 4]
call fcn.0070afa4
test al, al
jne 0x6df31a
mov eax, dword [0x83a458]
mov dword [eax], 0x11
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6df3d7
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x60]
mov byte [ebp - 0xd], 0
mov eax, dword [0x83a458]
mov dword [eax], 0x12
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe78], 0
jne 0x6df59f
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe8b], 0
jne 0x6df59f
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6df59f
mov eax, dword [ebp - 4]
cmp word [eax + 0x1f8], 0
jbe 0x6df441
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6df463
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
cmp word [eax + 0x1a4], 0
jbe 0x6df486
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6df50f
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, dword [ebp - 0x40]
jl 0x6df50f
mov eax, dword [ebp - 0x48]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
call fcn.00406318
mov ebx, eax
inc ebx
test ebx, ebx
jbe 0x6df50f
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, ebx
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
call fcn.00435104
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov dword [ebp - 0x20], 0x3ea
mov byte [ebp - 0xd], 1
mov dword [ebp - 0x20], 0x3eb
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6df59f
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, dword [ebp - 0x44]
jl 0x6df59f
mov eax, dword [ebp - 0x4c]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
call fcn.00406318
mov ebx, eax
inc ebx
test ebx, ebx
jbe 0x6df59f
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, ebx
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
call fcn.00435104
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov dword [ebp - 0x20], 0x3ec
mov byte [ebp - 0xd], 1
mov dword [ebp - 0x20], 0x3ed
mov eax, dword [0x83a458]
mov dword [eax], 0x13
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, dword [ebp - 0x40]
jl 0x6df5c3
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, dword [ebp - 0x44]
jl 0x6df5dc
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
jmp 0x6df623
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 1
je 0x6df61c
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x83a4b8]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6df61c
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x5c]
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6df6bd
mov eax, dword [0x83a458]
mov dword [eax], 0x14
xor eax, eax
push ebp
push 0x6dfb59
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe78], 0
jne 0x6dfab4
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe8b], 0
jne 0x6dfab4
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb8], 0
jg 0x6df71e
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb4], 0
jg 0x6df71e
mov eax, dword [ebp - 4]
cmp dword [eax + 0xbc], 0
jle 0x6dfab4
push 0
push 0x190
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, eax
lea eax, [eax + eax*4]
xor edx, edx
push edx
push eax
call fcn.00435104
mov edx, dword [0x83a4b8]
mov edx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
sub edx, eax
mov dword [ebp - 0x1c], edx
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, dword [ebp - 0x1c]
jb 0x6dfac2
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe78], 0
jne 0x6dfac2
push 0
push 0xc8
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
sub eax, dword [ebp - 0x1c]
xor edx, edx
push edx
push eax
push 0
push 0
call fcn.0043514c
push edx
push eax
call fcn.00435104
mov esi, eax
call fcn.00407d74
add esi, eax
mov eax, dword [ebp - 4]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], esi
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb8], 0
jg 0x6df7d7
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb4], 0
jg 0x6df7d7
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jle 0x6dfac2
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6df7f0
mov eax, dword [ebp - 4]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6df809
mov eax, dword [ebp - 4]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6df822
mov eax, dword [ebp - 4]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0xb4]
jle 0x6df84f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb4]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xb4], edx
jmp 0x6df86d
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
sub dword [edx + 0xb4], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0xb8]
jle 0x6df89a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xb8], edx
jmp 0x6df8b8
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
sub dword [edx + 0xb8], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0xbc]
jle 0x6df8e5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xbc]
add dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xbc], edx
jmp 0x6df903
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
add dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
sub dword [edx + 0xbc], eax
mov eax, dword [0x83a4b8]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6df920
mov eax, dword [0x83a4b8]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0xa
mov eax, dword [0x83a4b8]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6df93d
mov eax, dword [0x83a4b8]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0xa
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
xor edx, edx
call fcn.00406318
add eax, 5
adc edx, 0
push edx
push eax
push 0
push 1
call fcn.0043514c
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
xor edx, edx
call fcn.00406318
add eax, 5
adc edx, 0
push edx
push eax
push 0
push 1
call fcn.0043514c
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
cmp dword [ebp - 0x14], 0
jbe 0x6dfa12
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jae 0x6dfa12
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 0x14]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
call fcn.00435104
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov byte [ebp - 0xd], 1
cmp dword [ebp - 0x18], 0
jbe 0x6dfa69
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jae 0x6dfa69
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 0x18]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
call fcn.00435104
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov byte [ebp - 0xd], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jne 0x6dfa93
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xb4], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xbc], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jne 0x6dfac2
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xb8], edx
jmp 0x6dfac2
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 0x40]
neg edx
cmp eax, edx
jge 0x6dfaf9
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 1
jbe 0x6dfaf9
mov eax, dword [ebp - 4]
dec dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x40]
add dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov byte [ebp - 0xd], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jae 0x6dfb24
mov byte [ebp - 0xd], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
dec eax
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jae 0x6dfb4f
mov byte [ebp - 0xd], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
dec eax
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6dfb82
mov eax, dword [0x83a458]
mov dword [eax], 0x15
cmp byte [ebp - 0xd], 0
je 0x6dfb9d
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.006d641c
mov eax, dword [0x83a458]
mov dword [eax], 0x16
mov dword [ebp - 0x20], 0x3f5
xor edx, edx
push ebp
push 0x6e0686
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dfc94
mov eax, dword [ebp - 4]
mov al, byte [eax + 0xda2]
sub al, 1
je 0x6dfc94
sub al, 0x3b
je 0x6dfc94
sub al, 0x27
je 0x6dfc94
mov eax, dword [ebp - 4]
cmp byte [eax + 0x105c], 0
jne 0x6dfc94
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x7530
ja 0x6dfc89
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe78], 0
jne 0x6dfc89
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
jne 0x6dfc89
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jne 0x6dfc89
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x1c]
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xf
jg 0x6dfc89
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x20]
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xf
jle 0x6dfc94
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dfceb
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x7530
ja 0x6dfce0
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe78], 0
jne 0x6dfce0
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
je 0x6dfceb
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dfd42
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x1770
ja 0x6dfd37
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe78], 0
jne 0x6dfd37
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
je 0x6dfd42
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [0x83a458]
mov dword [eax], 0x17
xor eax, eax
push ebp
push 0x6dfda7
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov ebx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
test ebx, ebx
je 0x6dfd9d
cmp dword [ebx + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dfd9d
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dfd9d
mov eax, ebx
call fcn.007073f4
mov ebx, eax
mov eax, dword [ebp - 4]
call fcn.007073f4
cmp ebx, eax
jne 0x6dfd9d
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x80]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6dfe06
mov eax, dword [0x83a458]
mov dword [eax], 0x18
mov dword [ebp - 0x20], 0x3f8
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dfebc
xor eax, eax
push ebp
push 0x6dfe5d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
je 0x6dfe53
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6dfebc
mov eax, dword [0x83a458]
mov dword [eax], 0x19
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6dffd8
xor eax, eax
push ebp
push 0x6dff79
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x63c8], 0
je 0x6dff40
mov eax, dword [ebp - 4]
cmp word [eax + 0x1f8], 0
jbe 0x6dff40
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
jne 0x6dff30
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xfa4], 0
je 0x6dff40
mov eax, dword [ebp - 4]
mov word [eax + 0x1f8], 0
mov byte [ebp - 5], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
jne 0x6dff64
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe78], 0
je 0x6dff6f
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6dffd8
mov eax, dword [0x83a458]
mov dword [eax], 0x1a
mov dword [ebp - 0x20], 0x3f9
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e042d
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 1
je 0x6e0010
mov eax, dword [ebp - 4]
mov byte [eax + 0xe2f], 1
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp byte [eax + 0xf73], 0
je 0x6e012b
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
cmp edx, dword [esp + 4]
jne 0x6e0058
cmp eax, dword [esp]
pop edx
pop eax
jae 0x6e012b
jmp 0x6e0060
pop edx
pop eax
jge 0x6e012b
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 7
ja case.default.0x6e007c
jmp dword [eax*4 + 0x6e0083]
mov dword [ebp - 0x28], 8
jmp 0x6e00fb
mov dword [ebp - 0x28], 5
jmp 0x6e00fb
mov dword [ebp - 0x28], 4
jmp 0x6e00fb
mov dword [ebp - 0x28], 0x44
jmp 0x6e00fb
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x6e00fb
mov dword [ebp - 0x28], 2
jmp 0x6e00fb
mov dword [ebp - 0x28], 1
jmp 0x6e00fb
mov dword [ebp - 0x28], 0xc
jmp 0x6e00fb
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x28], 8
mov eax, dword [ebp - 4]
inc dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov ecx, dword [ebp - 0x28]
mov eax, 0x80000000
shr eax, cl
or eax, 0
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xe4]
and edx, 0xfffff
or eax, edx
mov edx, dword [ebp - 4]
mov dword [edx + 0xa0], eax
mov eax, dword [0x83a458]
mov dword [eax], 0x1b
mov dword [ebp - 0x20], 0x3fb
mov eax, dword [ebp - 4]
cmp byte [eax + 0xf7c], 0
je 0x6e022b
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0xa0]
je 0x6e022b
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 7
ja case.default.0x6e0173
jmp dword [eax*4 + 0x6e017a]
mov dword [ebp - 0x28], 8
jmp 0x6e01f2
mov dword [ebp - 0x28], 5
jmp 0x6e01f2
mov dword [ebp - 0x28], 4
jmp 0x6e01f2
mov dword [ebp - 0x28], 0x44
jmp 0x6e01f2
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x6e01f2
mov dword [ebp - 0x28], 2
jmp 0x6e01f2
mov dword [ebp - 0x28], 1
jmp 0x6e01f2
mov dword [ebp - 0x28], 0xc
jmp 0x6e01f2
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x28], 8
mov ecx, dword [ebp - 0x28]
mov eax, 0x80000000
shr eax, cl
or eax, 0
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xe4]
and edx, 0xfffff
or eax, edx
mov edx, dword [ebp - 4]
mov dword [edx + 0xa0], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a458]
mov dword [eax], 0x1c
mov dword [ebp - 0x20], 0x3fc
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 1
je 0x6e042d
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe78], 0
je 0x6e03de
call fcn.00407d74
mov edx, dword [ebp - 4]
mov edx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e03de
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x6370], 0
je 0x6e03d3
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e03d3
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.004039ac
test eax, eax
jne 0x6e03d3
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
mov byte [eax + 0xe00], 8
mov dword [ebp - 0x20], 0x3fe
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x68]
mov dword [ebp - 0x20], 0x3ff
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
push edx
push eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
call fcn.004062f4
push edx
push eax
call fcn.00435104
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
push edx
push eax
mov eax, dword [0x83a4b8]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
call fcn.004062f4
push edx
push eax
call fcn.00435104
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a458]
mov dword [eax], 0x1d
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x83a4b8]
mov ecx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cdq
idiv ecx
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov dword [ebp - 0x20], 0x400
mov eax, dword [ebp - 4]
call fcn.006d6674
mov eax, dword [0x83a458]
mov dword [eax], 0x1e
mov dword [ebp - 0x20], 0x401
mov eax, dword [ebp - 4]
call fcn.006e2a74
mov eax, dword [0x83a458]
mov dword [eax], 0x1f
mov dword [ebp - 0x20], 0x402
jmp 0x6e03de
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e0426
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xe70], 0
je 0x6e0426
call fcn.00407d74
mov edx, dword [ebp - 4]
mov edx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e0426
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x5c]
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [0x83a458]
mov dword [eax], 0x20
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x8d90], 0
je 0x6e04ac
mov eax, dword [ebp - 4]
fild dword [eax + 0x11c0]
fcomp dword [0x6e1b2c]
fnstsw ax
sahf
je 0x6e04ac
call fcn.00407d74
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
sub dword [esp], eax
sbb dword [esp + 4], edx
pop eax
pop edx
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
cmp edx, dword [esp + 4]
jne 0x6e0491
cmp eax, dword [esp]
pop edx
pop eax
jae 0x6e04c1
jmp 0x6e0495
pop edx
pop eax
jge 0x6e04c1
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0x3ff00000
jmp 0x6e04c1
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0x3ff00000
mov eax, dword [0x83a458]
mov dword [eax], 0x21
mov dword [ebp - 0x20], 0xbc2
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e05c3
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e05c3
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov ebx, dword [eax + 8]
dec ebx
cmp ebx, 0
jl 0x6e05c3
mov eax, dword [ebp - 4]
mov esi, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [esi + 8], 0
jle 0x6e05c3
mov eax, esi
mov edx, ebx
call fcn.004212e4
test eax, eax
je 0x6e05b9
cmp byte [eax + 0xe78], 0
jne 0x6e055d
cmp byte [eax + 0xe70], 0
jne 0x6e055d
mov edx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp edx, dword [ebp - 4]
je 0x6e05b9
mov edx, dword [ebp - 4]
cmp byte [edx + 0xda2], 0
jne 0x6e05a9
mov edx, dword [ebp - 4]
cmp byte [edx + 0xfa4], 0
jne 0x6e05a9
mov edx, dword [ebp - 4]
cmp byte [edx + 0x105c], 0
jne 0x6e05a9
mov edx, dword [0x83a4b8]
cmp byte [edx + 0x6e43], 0
je 0x6e05a9
push 0
push eax
push 0
push 0
push 0
mov ecx, 0x2c5
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
call fcn.0070a7c0
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, ebx
call fcn.00421168
dec ebx
cmp ebx, reloc.kernel32.dll_DeleteCriticalSection
jne 0x6e0520
mov eax, dword [0x83a458]
mov dword [eax], 0x22
mov dword [ebp - 0x20], 0xbc3
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe40], 0
je 0x6e0602
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e0602
mov eax, dword [ebp - 4]
call fcn.0071b110
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe4c], 0
je 0x6e0636
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e0636
mov eax, dword [ebp - 4]
call fcn.0071b168
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe58], 0
je 0x6e066a
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e066a
mov eax, dword [ebp - 4]
call fcn.006de35c
mov eax, dword [0x83a458]
mov dword [eax], 0x23
mov dword [ebp - 0x20], 0xbc6
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6e06f3
xor eax, eax
push ebp
push 0x6e096e
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x20], 4
mov eax, dword [0x83a458]
mov dword [eax], 0x24
mov dword [ebp - 0x20], 0x2a
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x2710
jbe 0x6e090b
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 1
je 0x6e090b
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e090b
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0x3c
je 0x6e07ad
call fcn.00407d74
mov edx, dword [0x83a6f0]
sub eax, dword [edx]
mov edx, dword [0x839754]
cmp eax, dword [edx]
jbe 0x6e078c
mov eax, dword [0x839ac0]
mov byte [eax], 0
mov eax, dword [0x839ac0]
cmp byte [eax], 0
je 0x6e07ad
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe00], 5
jae 0x6e07ad
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e08cc
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov ebx, dword [eax + 8]
dec ebx
cmp ebx, 0
jl 0x6e0845
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp dword [eax + 8], 0
jle 0x6e0845
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, ebx
call fcn.004212e4
cmp eax, dword [ebp - 4]
jne 0x6e083f
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, ebx
call fcn.00421168
jmp 0x6e0845
dec ebx
cmp ebx, reloc.kernel32.dll_DeleteCriticalSection
jne 0x6e07e9
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0x3c
jne 0x6e0866
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x5c]
jmp 0x6e08cc
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x7480], 0
je 0x6e088c
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
jmp 0x6e08cc
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov ecx, 0xa
xor edx, edx
div ecx
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [0x83a458]
mov dword [eax], 0x25
mov dword [ebp - 0x20], 0x1aa
mov eax, dword [ebp - 4]
call fcn.006e2a74
mov eax, dword [0x83a458]
mov dword [eax], 0x26
mov dword [ebp - 0x20], reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0x3c
je 0x6e090b
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e090b
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x2932e00
jbe 0x6e090b
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0
je 0x6e0964
mov eax, dword [ebp - 4]
cmp byte [eax + 0xf70], 0
jne 0x6e0964
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x7530
jbe 0x6e0964
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x20]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x1c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
call fcn.0076c408
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6e09df
mov eax, dword [0x83a458]
mov dword [eax], 0x27
xor edx, edx
push ebp
push 0x6e150c
push dword fs:[edx]
mov dword fs:[edx], esp
mov byte [ebp - 0xd], 0
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e14f7
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6e0a75
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e0a75
mov eax, dword [ebp - 4]
dec dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
add dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jne 0x6e0a75
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov byte [ebp - 5], 1
mov eax, dword [0x83a458]
mov dword [eax], 0x28
xor ebx, ebx
mov eax, dword [ebp - 4]
mov ax, word [eax + ebx*2 + 0x1f8]
test ax, ax
jbe 0x6e0b3b
cmp ax, 0xea60
jae 0x6e0b3b
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e0b3b
mov eax, dword [ebp - 4]
dec word [eax + ebx*2 + 0x1f8]
mov eax, dword [ebp - 4]
add dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
mov eax, dword [ebp - 4]
cmp word [eax + ebx*2 + 0x1f8], 0
jne 0x6e0b3b
mov byte [ebp - 5], 1
mov eax, ebx
sub eax, 8
je 0x6e0af7
dec eax
je 0x6e0b03
dec eax
je 0x6e0b1a
dec eax
je 0x6e0b31
jmp 0x6e0b3b
mov eax, dword [ebp - 4]
mov byte [eax + 0xeb8], 0
jmp 0x6e0b3b
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1b38
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp 0x6e0b3b
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1b50
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp 0x6e0b3b
mov eax, dword [ebp - 4]
mov byte [eax + 0xec0], 0
inc ebx
cmp ebx, 0xe
jne 0x6e0a82
mov eax, dword [0x83a458]
mov dword [eax], 0x29
xor ebx, ebx
mov eax, dword [ebp - 4]
mov ax, word [eax + ebx*2 + 0x1a4]
test ax, ax
jbe 0x6e0bf1
cmp ax, 0xea60
jae 0x6e0bf1
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e0bf1
mov eax, dword [ebp - 4]
dec word [eax + ebx*2 + 0x1a4]
mov eax, dword [ebp - 4]
add dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
mov eax, dword [ebp - 4]
cmp word [eax + ebx*2 + 0x1a4], 0
jne 0x6e0bf1
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov byte [ebp - 5], 1
mov eax, ebx
sub eax, 8
je 0x6e0bcf
dec eax
je 0x6e0bdb
dec eax
je 0x6e0be1
dec eax
je 0x6e0be7
jmp 0x6e0bf1
mov eax, dword [ebp - 4]
mov byte [eax + 0xeb8], 0
jmp 0x6e0bf1
mov byte [ebp - 0xd], 1
jmp 0x6e0bf1
mov byte [ebp - 0xd], 1
jmp 0x6e0bf1
mov eax, dword [ebp - 4]
mov byte [eax + 0xec0], 0
inc ebx
cmp ebx, 0xe
jne 0x6e0b52
mov eax, dword [0x83a458]
mov dword [eax], 0x2a
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6e0c56
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e0c56
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1b68
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [0x83a458]
mov dword [eax], 0x2b
mov eax, dword [0x8394c4]
mov eax, dword [eax]
call fcn.00406750
dec eax
test eax, eax
jl 0x6e0ea7
inc eax
mov dword [ebp - 0x64], eax
xor ebx, ebx
mov eax, dword [0x8394c4]
mov eax, dword [eax]
mov eax, dword [eax + ebx*8 + 4]
call fcn.00406750
dec eax
test eax, eax
jl 0x6e0e9d
inc eax
mov dword [ebp - 0x68], eax
xor esi, esi
mov eax, dword [0x8394c4]
mov eax, dword [eax]
mov ax, word [eax + ebx*8]
mov edx, eax
add edx, 0xffffff37
sub dx, 0x1e
jae case.default.0x6e0ded
mov edx, dword [0x8394c4]
mov edx, dword [edx]
mov edx, dword [edx + ebx*8 + 4]
mov dl, byte [edx + esi]
sub dl, 7
jae case.default.0x6e0ded
mov edx, dword [0x8394c4]
mov edx, dword [edx]
mov edx, dword [edx + ebx*8 + 4]
movzx edx, byte [edx + esi]
mov ecx, dword [0x8394c4]
movzx eax, ax
mov ecx, eax
shl eax, 3
sub eax, ecx
mov ecx, dword [ebp - 4]
lea eax, [ecx + eax*4]
cmp dword [eax + edx*4 - reloc.kernel32.dll_DeleteCriticalSection], 0
je case.default.0x6e0ded
call fcn.00407d74
mov edx, dword [0x8394c4]
mov edx, dword [edx]
mov edx, dword [edx + ebx*8 + 4]
movzx edx, byte [edx + esi]
mov ecx, dword [0x8394c4]
mov ecx, dword [ecx]
movzx ecx, word [ecx + ebx*8]
mov edi, ecx
shl ecx, 3
sub ecx, edi
mov edi, dword [ebp - 4]
lea ecx, [edi + ecx*4]
sub eax, dword [ecx + edx*4 - reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x8394c4]
mov edx, dword [edx]
mov edx, dword [edx + ebx*8 + 4]
movzx edx, byte [edx + esi]
mov ecx, dword [0x8394c4]
mov ecx, dword [ecx]
movzx ecx, word [ecx + ebx*8]
mov edi, ecx
shl ecx, 3
sub ecx, edi
mov edi, dword [ebp - 4]
lea ecx, [edi + ecx*4]
cmp eax, dword [ecx + edx*4 - reloc.kernel32.dll_DeleteCriticalSection]
jbe case.default.0x6e0ded
mov eax, dword [0x8394c4]
mov eax, dword [eax]
mov eax, dword [eax + ebx*8 + 4]
movzx eax, byte [eax + esi]
mov edx, dword [0x8394c4]
mov edx, dword [edx]
movzx edx, word [edx + ebx*8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
lea edx, [ecx + edx*4]
xor ecx, ecx
mov dword [edx + eax*4 - reloc.kernel32.dll_DeleteCriticalSection], ecx
mov eax, dword [0x8394c4]
mov eax, dword [eax]
mov eax, dword [eax + ebx*8 + 4]
movzx eax, byte [eax + esi]
mov edx, dword [0x8394c4]
mov edx, dword [edx]
movzx edx, word [edx + ebx*8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
lea edx, [ecx + edx*4]
xor ecx, ecx
mov dword [edx + eax*4 - reloc.kernel32.dll_DeleteCriticalSection], ecx
mov byte [ebp - 0xd], 1
mov eax, dword [0x8394c4]
mov eax, dword [eax]
mov eax, dword [eax + ebx*8 + 4]
movzx eax, byte [eax + esi]
cmp eax, 6
ja case.default.0x6e0ded
jmp dword [eax*4 + 0x6e0df4]
push 1
mov cl, 1
mov edx, 0x6e1b80
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
jmp case.default.0x6e0ded
push 1
mov cl, 1
mov edx, 0x6e1b98
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
jmp case.default.0x6e0ded
push 1
mov cl, 1
mov edx, 0x6e1bb0
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
jmp case.default.0x6e0ded
push 1
mov cl, 1
mov edx, 0x6e1bc8
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
jmp case.default.0x6e0ded
push 1
mov cl, 1
mov edx, 0x6e1b68
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
jmp case.default.0x6e0ded
push 1
mov cl, 1
mov edx, 0x6e1be0
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
jmp case.default.0x6e0ded
push 1
mov cl, 1
mov edx, 0x6e1bf8
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 8]
inc esi
dec dword [ebp - 0x68]
jne 0x6e0c9b
inc ebx
dec dword [ebp - 0x64]
jne 0x6e0c7c
mov eax, dword [0x83a458]
mov dword [eax], 0x2c
xor ebx, ebx
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe case.default.0x6e0ef5
call fcn.00407d74
mov edx, dword [ebp - 4]
cmp eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
jbe case.default.0x6e0ef5
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov byte [ebp - 0xd], 1
mov eax, ebx
cmp eax, 5
ja case.default.0x6e0ef5
jmp dword [eax*4 + 0x6e0efc]
push 1
mov cl, 1
mov edx, 0x6e1bb0
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e0ef5
push 1
mov cl, 1
mov edx, 0x6e1bc8
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e0ef5
push 1
mov cl, 1
mov edx, 0x6e1b68
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e0ef5
push 1
mov cl, 1
mov edx, 0x6e1c10
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e0ef5
push 1
mov cl, 1
mov edx, 0x6e1be0
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e0ef5
push 1
mov cl, 1
mov edx, 0x6e1bf8
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
inc ebx
cmp ebx, 0xe
jne 0x6e0eb4
mov eax, dword [0x83a458]
mov dword [eax], 0x2d
xor ebx, ebx
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
test eax, eax
jle 0x6e102d
cmp eax, 0xea60
jge 0x6e102d
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, 0x3e8
jbe 0x6e1039
mov eax, dword [ebp - 4]
dec dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
add dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0
jne 0x6e1039
mov byte [ebp - 5], 1
mov eax, ebx
sub eax, 9
je 0x6e0fff
dec eax
je 0x6e1016
jmp 0x6e1039
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1b38
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp 0x6e1039
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1b50
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp 0x6e1039
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
inc ebx
cmp ebx, 0xe
jne 0x6e0f9b
mov eax, dword [0x83a458]
mov dword [eax], 0x2e
xor ebx, ebx
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe case.default.0x6e1091
call fcn.00407d74
mov edx, dword [ebp - 4]
cmp eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
jbe case.default.0x6e1091
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov byte [ebp - 0xd], 1
mov eax, ebx
cmp eax, 5
ja case.default.0x6e1091
jmp dword [eax*4 + 0x6e1098]
push 1
mov cl, 1
mov edx, 0x6e1bb0
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e1091
push 1
mov cl, 1
mov edx, 0x6e1bc8
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e1091
push 1
mov cl, 1
mov edx, 0x6e1b68
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e1091
push 1
mov cl, 1
mov edx, 0x6e1c10
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e1091
push 1
mov cl, 1
mov edx, 0x6e1be0
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
jmp case.default.0x6e1091
push 1
mov cl, 1
mov edx, 0x6e1bf8
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 8]
inc ebx
cmp ebx, 0xe
jne 0x6e1050
mov eax, dword [0x83a458]
mov dword [eax], 0x2f
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2d0], 0
je 0x6e1179
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e1179
mov eax, dword [ebp - 4]
mov byte [eax + 0x2d0], 0
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1c2c
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2bc], 0
je 0x6e11bd
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e11bd
mov eax, dword [ebp - 4]
mov byte [eax + 0x2bc], 0
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1b38
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2bd], 0
je 0x6e1201
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e1201
mov eax, dword [ebp - 4]
mov byte [eax + 0x2bd], 0
mov byte [ebp - 0xd], 1
push 1
mov cl, 1
mov edx, 0x6e1c50
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
mov eax, dword [0x83a458]
mov dword [eax], 0x30
mov byte [ebp - 0x4d], 0
xor ebx, ebx
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e1348
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
cdq
cmp edx, dword [esp + 4]
jne 0x6e1254
cmp eax, dword [esp]
pop edx
pop eax
jae 0x6e1348
jmp 0x6e125c
pop edx
pop eax
jge 0x6e1348
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, ebx
add eax, 0xfffffffe
sub eax, 6
jae 0x6e1293
mov byte [ebp - 0xd], 1
jmp 0x6e1348
mov eax, ebx
add eax, 0xfffffff8
sub eax, 2
jae 0x6e132f
mov eax, dword [ebp - 4]
mov al, byte [eax + 0xda2]
sub al, 2
jb 0x6e12b2
sub al, 0x3a
jne 0x6e132f
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e6], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e7], 1
mov byte [ebp - 0x4d], 1
cmp ebx, 9
jne 0x6e1348
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e1], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e2], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e0], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e4], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e5], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58e9], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58ea], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58eb], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x58ec], 1
mov byte [ebp - 0x4d], 1
jmp 0x6e1348
cmp ebx, 0xb
je 0x6e1348
cmp ebx, 0xe
jne 0x6e133f
mov byte [ebp - 0x4d], 1
jmp 0x6e1348
cmp ebx, 0x12
jne 0x6e1348
mov byte [ebp - 0xd], 1
inc ebx
cmp ebx, 0x16
jne 0x6e1212
mov eax, dword [0x83a458]
mov dword [eax], 0x31
cmp byte [ebp - 0x4d], 0
je 0x6e140d
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0
jne 0x6e140d
mov eax, dword [ebp - 4]
cmp byte [eax + 0x105c], 0
jne 0x6e140d
mov eax, dword [ebp - 4]
cmp byte [eax + 0xfa4], 0
jne 0x6e140d
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
sete al
call fcn.00490db4
push eax
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jne 0x6e13be
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e13c2
xor eax, eax
jmp 0x6e13c4
mov al, 1
call fcn.00490db4
pop edx
call fcn.004087f4
push eax
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
ja 0x6e13ec
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6e13ec
xor eax, eax
jmp 0x6e13ee
mov al, 1
call fcn.00490db4
xor edx, edx
call fcn.004087f4
push eax
push 0
push 0
xor ecx, ecx
mov dx, 0x5e5
mov eax, dword [ebp - 4]
call fcn.006d76a8
cmp byte [ebp - 5], 0
jne 0x6e1421
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
cmp eax, dword [ebp - 0xc]
je 0x6e145e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
cmp eax, dword [ebp - 0xc]
jne 0x6e1440
mov eax, dword [ebp - 4]
call fcn.00714fac
mov edx, dword [ebp - 4]
mov dword [edx + 0xa0], eax
mov eax, dword [0x83a458]
mov dword [eax], 0x32
mov eax, dword [ebp - 4]
call fcn.007152e4
mov eax, dword [0x83a458]
mov dword [eax], 0x33
mov eax, dword [0x83a458]
mov dword [eax], 0x34
cmp byte [ebp - 0xd], 0
je 0x6e1491
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x68]
push 0
push 0
push 0
push 0
push 0
mov ecx, 0x232
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
call fcn.0070a7c0
mov byte [ebp - 0x55], 0
mov ebx, 0xc9
mov eax, dword [ebp - 4]
cmp byte [eax + ebx + 0x13fb], 0
je 0x6e14e0
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e14e0
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + ebx*4 + reloc.kernel32.dll_DeleteCriticalSection], edx
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00715644
test al, al
je 0x6e14e0
mov byte [ebp - 0x55], 1
inc ebx
cmp ebx, 0xe7
jne 0x6e149a
cmp byte [ebp - 0x55], 0
je 0x6e14f7
mov eax, dword [ebp - 4]
call fcn.007157c4
mov eax, dword [0x83a458]
mov dword [eax], 0x35
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6e1535
mov eax, dword [0x83a458]
mov dword [eax], 0x36
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jle 0x6e15a8
call fcn.00407d74
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cdq
sub dword [esp], eax
sbb dword [esp + 4], edx
pop eax
pop edx
cmp edx, 0
jne 0x6e1576
cmp eax, 0x3e8
jb 0x6e158f
jmp 0x6e1578
jl 0x6e158f
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
dec dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6e15a8
mov eax, dword [ebp - 4]
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0x64
mov eax, dword [0x83a458]
mov dword [eax], 0x37
mov eax, dword [ebp - 4]
cmp byte [eax + 0x105e], 0
je 0x6e15ec
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e15ec
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jg 0x6e15ec
mov eax, dword [ebp - 4]
call fcn.006bf12c
mov eax, dword [0x83a458]
mov dword [eax], 0x38
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6e161e
call fcn.00407d74
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e161e
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
xor eax, eax
push ebp
push 0x6e1763
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [0x83a4b8]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e174e
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
xor ebx, ebx
mov eax, dword [ebp - 4]
cmp word [eax + 0x1f8], 0
jbe 0x6e16a6
mov ebx, 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe2e], 0
je 0x6e1687
mov eax, dword [ebp - 4]
sub dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
mov eax, dword [ebp - 4]
add ebx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
jbe 0x6e16da
test ebx, ebx
jg 0x6e16bb
mov ebx, 1
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
add ebx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
cmp word [eax + 0x1a4], 0
jbe 0x6e171f
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe2e], 0
je 0x6e1700
mov eax, dword [ebp - 4]
sub dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0x3e8
mov eax, dword [ebp - 4]
add ebx, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + reloc.kernel32.dll_DeleteCriticalSection], edx
mov eax, dword [0x83a458]
mov dword [eax], 0x39
test ebx, ebx
jle 0x6e174e
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.006bf4e0
mov edx, eax
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.006d6cdc
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.006d641c
mov eax, dword [0x83a458]
mov dword [eax], 0x3a
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6e178c
mov eax, dword [0x83a458]
mov dword [eax], 0x3b
xor eax, eax
push ebp
push 0x6e17f4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0xfc6], 0xff
je 0x6e17ea
call fcn.00407d74
mov edx, dword [ebp - 4]
sub eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jbe 0x6e17ea
call fcn.00407d74
mov edx, dword [ebp - 4]
mov dword [edx + reloc.kernel32.dll_DeleteCriticalSection], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0xfc6], 0xff
mov eax, dword [ebp - 4]
call fcn.0071515c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6e181d
mov eax, dword [0x83a458]
mov dword [eax], 0x3c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x11f0], 0
je 0x6e19ac
mov eax, dword [ebp - 4]
mov byte [eax + 0x11f0], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x11f1], 0
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x7557], 0
je 0x6e1888
push 0
push 0
push 0
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
xor edx, edx
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 0x34]
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
push eax
xor ecx, ecx
mov edx, 0x227
mov eax, dword [ebp - 4]
call fcn.00711ce8
jmp 0x6e18b6
push 0
push 0
push 0
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
xor edx, edx
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 0x34]
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
push eax
push 0
xor ecx, ecx
mov edx, 0x227
mov eax, dword [ebp - 4]
call fcn.00712628
mov eax, dword [0x83a458]
mov dword [eax], 0x3d
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 1
jne 0x6e19a1
mov eax, dword [ebp - 4]
cmp dword [eax + reloc.kernel32.dll_DeleteCriticalSection], 0
je 0x6e19a1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jne 0x6e1948
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
sub eax, dword [edx + 0x1c]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x83a4b8]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jg 0x6e1948
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 4]
mov edx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
sub eax, dword [edx + 0x20]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
cmp eax, dword [edx + reloc.kernel32.dll_DeleteCriticalSection]
jle 0x6e19a1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0xfa4], 0
jne 0x6e19a1
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
cmp byte [eax + 0x105c], 0
jne 0x6e19a1
push 0
push 0
push 0
push 0
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
xor edx, edx
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 0x34]
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + reloc.kernel32.dll_DeleteCriticalSection]
mov ecx, 0x227
mov edx, dword [ebp - 4]
call fcn.0070ae8c
mov eax, dword [0x83a458]
mov dword [eax], 0x3e
mov eax, dword [0x83a458]
mov dword [eax], 0x3f
mov eax, dword [ebp - 4]
cmp byte [eax + 0x11f1], 0
je 0x6e1a0d
mov eax, dword [ebp - 4]
mov byte [eax + 0x11f1], 0
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x7557], 0
je 0x6e19f4
push 0
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x229
mov eax, dword [ebp - 4]
call fcn.00711ce8
jmp 0x6e1a0d
push 0
push 0
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x229
mov eax, dword [ebp - 4]
call fcn.00712628
mov eax, dword [0x83a458]
mov dword [eax], 0x40
xor eax, eax
push ebp
push 0x6e1a47
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x839ee0]
cmp dword [eax], 0
je 0x6e1a3d
mov eax, dword [ebp - 4]
push eax
mov eax, dword [0x839ee0]
mov eax, dword [eax]
call eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6e1a7d
call fcn.00407d74
sub eax, dword [ebp - 0x24]
mov edx, dword [0x83a7c8]
mov dword [edx], eax
mov eax, dword [0x83a6ec]
mov eax, dword [eax]
mov edx, dword [0x83a7c8]
cmp eax, dword [edx]
jge 0x6e1aad
mov eax, dword [0x83a7c8]
mov eax, dword [eax]
mov edx, dword [0x83a6ec]
mov dword [edx], eax
mov eax, dword [0x83a458]
mov dword [eax], 0x41
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6e1afe
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 0x19
call fcn.00405164
lea eax, [ebp - 0xa0]
mov edx, 3
call fcn.00405164
lea eax, [ebp - 0x94]
mov edx, dword [0x491db8]
call fcn.00405db8
ret