Function at 0x5595d4
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x40
push 0
push 0
dec ecx
jne 0x5595dc
push ebx
push esi
push edi
mov dword [ebp - 4], eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, dword [0x492088]
call fcn.00405ce8
xor eax, eax
push ebp
push 0x55ac64
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 8], reloc.kernel32.dll_DeleteCriticalSection
lea eax, [ebp - 0x48]
mov edx, dword [0x839384]
mov edx, dword [edx]
call fcn.004051d8
mov edx, dword [0x83a4b8]
mov edx, dword [edx + 0xd4]
lea eax, [ebp - 0xc]
mov ecx, 0x55ac80
call fcn.0040545c
mov eax, dword [ebp - 0xc]
call fcn.0040be8c
test al, al
je 0x559677
mov dl, 1
mov eax, dword [0x41ed6c]
call fcn.004041c0
mov esi, eax
mov edx, dword [ebp - 0xc]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x68]
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jge 0x55974e
mov eax, esi
call fcn.004041f0
jmp 0x55abd5
mov eax, dword [0x839658]
cmp dword [eax], 0
je 0x55abd5
xor eax, eax
push ebp
push 0x559712
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x41f05c]
call fcn.004041c0
mov ebx, eax
push ebx
push 0x55ac8c
mov eax, dword [0x839658]
mov eax, dword [eax]
call eax
test al, al
jne 0x5596c8
mov eax, ebx
call fcn.004041f0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55abd5
mov dl, 1
mov eax, dword [0x41ed6c]
call fcn.004041c0
mov esi, eax
mov eax, ebx
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x5596e8
cmp eax, 0
jbe 0x559701
jmp 0x5596ea
jle 0x559701
lea ecx, [ebp - 0x14]
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.005743d8
mov edx, dword [ebp - 0x14]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov eax, ebx
call fcn.004041f0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55974e
mov edx, esi
mov eax, dword [ebp - 4]
call fcn.00574514
xor ebx, ebx
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
cmp ebx, eax
jge 0x5597e9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov ecx, 0xb
mov eax, 0x55acd4
call fcn.00491970
test al, al
je 0x5597e3
push 1
lea eax, [ebp - 0x44]
push eax
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov byte [ebp - 0x114], 0x20
mov byte [ebp - 0x113], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x14]
call fcn.0049136c
mov edx, ebx
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x48]
cmp dword [ebp - 0x44], 0
je 0x5597e3
push ebp
mov edx, dword [ebp - 0x44]
mov eax, esi
call fcn.0055927c
pop ecx
inc ebx
jmp 0x55975a
mov dword [ebp - 8], 1
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x55a8a5
inc eax
mov dword [ebp - 0x4c], eax
xor ebx, ebx
lea ecx, [ebp - 0x14]
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
cmp dword [ebp - 0x14], 0
je 0x55a80b
mov eax, dword [ebp - 0x14]
cmp byte [eax], 0x5b
jne 0x55a80b
lea eax, [ebp - 0x20]
call fcn.00405140
mov byte [ebp - 0x108], 0
lea eax, [ebp - 0x20]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ace8
mov edx, 0x55acf4
mov eax, dword [ebp - 0x14]
call fcn.004916b0
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
push 2
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x20]
call fcn.00491520
push 3
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x124], 0x7c
mov byte [ebp - 0x123], 0x2f
mov byte [ebp - 0x122], 0x5c
mov byte [ebp - 0x121], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x20]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x24]
call fcn.0040b510
cmp dword [ebp - 0x2c], 0
je 0x5598fd
mov eax, dword [ebp - 0x2c]
cmp byte [eax], 0x22
jne 0x5598fd
lea eax, [ebp - 0x2c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad00
mov edx, 0x55ad00
mov eax, dword [ebp - 0x2c]
call fcn.004916b0
push 2
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x30]
call fcn.0040b510
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0040ba78
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x20], 0
je 0x55a89b
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, dword [0x492088]
call fcn.00405db8
xor ecx, ecx
mov edx, 0xbc
call fcn.00490da0
mov dword [ebp - 0xe4], 1
xor edi, edi
mov dword [ebp - 0xe0], reloc.kernel32.dll_DeleteCriticalSection
mov dword [ebp - 0xdc], reloc.kernel32.dll_DeleteCriticalSection
lea eax, [ebp - 0x84]
call fcn.00405140
lea eax, [ebp - 0x7c]
call fcn.00405140
mov byte [ebp - 0x77], 0
mov byte [ebp - 0xf8], 0
mov byte [ebp - 0xf7], 0
mov byte [ebp - 0xf6], 0
mov byte [ebp - 0xf5], 0
mov byte [ebp - 0xf4], 0
mov byte [ebp - 0xf3], 0
mov byte [ebp - 0x101], 0
mov byte [ebp - 0x107], 0
mov byte [ebp - 0x73], 0
mov byte [ebp - 0x60], 0
mov dword [ebp - 0x70], reloc.kernel32.dll_DeleteCriticalSection
mov byte [ebp - 0x6c], 0
mov dword [ebp - 0x68], reloc.kernel32.dll_DeleteCriticalSection
mov dword [ebp - 0x64], 0x7530
mov byte [ebp - 0x5f], 0
mov byte [ebp - 0x58], 0
mov byte [ebp - 0x102], 0
mov byte [ebp - 0x50], 0
cmp dword [ebp - 0x14], 0
je 0x55a7de
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x14]
call fcn.004051d8
push 2
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
cmp dword [ebp - 0x18], 0
je 0x55a7de
lea eax, [ebp - 0xd8]
call fcn.00405140
mov edx, 0x55ad0c
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559a95
mov byte [ebp - 0x108], 1
jmp 0x559a11
mov edx, 0x55ad1c
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559ab2
mov byte [ebp - 0x107], 1
jmp 0x559a11
mov edx, 0x55ad2c
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559acf
mov byte [ebp - 0x106], 1
jmp 0x559a11
mov edx, 0x55ad3c
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559aec
mov byte [ebp - 0x105], 1
jmp 0x559a11
mov ecx, 6
mov edx, 0x55ad4c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559b41
mov byte [ebp - 0x104], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
mov eax, dword [ebp - 0x1c]
mov edx, 0x55ad74
call fcn.0040555c
sete al
mov byte [ebp - 0x102], al
jmp 0x559a11
mov edx, 0x55ad80
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559b5e
mov byte [ebp - 0x103], 1
jmp 0x559a11
mov edx, 0x55ad90
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559b7b
mov byte [ebp - 0x101], 1
jmp 0x559a11
mov edx, 0x55ad9c
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559b98
mov byte [ebp - 0x100], 1
jmp 0x559a11
mov edx, 0x55adac
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559bb2
mov byte [ebp - 0x76], 1
jmp 0x559a11
mov edx, 0x55adc0
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559bcc
mov byte [ebp - 0x75], 1
jmp 0x559a11
mov edx, 0x55add4
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559be6
mov byte [ebp - 0x74], 1
jmp 0x559a11
mov edx, 0x55ade8
mov eax, dword [ebp - 0x18]
call fcn.0040b368
test eax, eax
jne 0x559c00
mov byte [ebp - 0x73], 1
jmp 0x559a11
mov ecx, 0xb
mov edx, 0x55adfc
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559c61
mov byte [ebp - 0xff], 1
lea eax, [ebp - 0x34]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
lea eax, [ebp - 0x90]
mov edx, dword [ebp - 0x34]
call fcn.004051d8
cmp dword [ebp - 0x90], 0
jne 0x559a11
mov dword [ebp - 8], reloc.kernel32.dll_DeleteCriticalSection
jmp 0x559a11
mov ecx, 0xa
mov edx, 0x55ae10
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559ca3
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
mov eax, dword [ebp - 0x1c]
call fcn.005591a4
mov edi, eax
jmp 0x559a11
mov ecx, 0xa
mov edx, 0x55ae24
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559cf6
mov dword [ebp - 0xdc], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xe0], eax
jmp 0x559a11
mov ecx, 0xb
mov edx, 0x55ae38
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559d47
xor eax, eax
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xe0], eax
jmp 0x559a11
mov ecx, 5
mov edx, 0x55ae4c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559d98
mov byte [ebp - 0xfe], 1
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov cl, 0x29
mov dl, 0x28
mov eax, dword [ebp - 0x10]
call fcn.00559518
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x1c]
call fcn.0040b510
lea eax, [ebp - 0xd8]
mov edx, dword [ebp - 0x1c]
call fcn.004051d8
jmp 0x559a11
mov ecx, 7
mov edx, 0x55ae5c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559de8
mov byte [ebp - 0xfd], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xd0], eax
jmp 0x559a11
mov ecx, 0xa
mov edx, 0x55ae6c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559e38
mov byte [ebp - 0xfc], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xd4], eax
jmp 0x559a11
mov ecx, 8
mov edx, 0x55ae80
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559e88
mov byte [ebp - 0xfb], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xcc], eax
jmp 0x559a11
mov ecx, 0xb
mov edx, 0x55ae94
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559ed8
mov byte [ebp - 0xfa], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xc8], eax
jmp 0x559a11
mov ecx, 9
mov edx, 0x55aea8
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559f28
mov byte [ebp - 0xf9], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xc4], eax
jmp 0x559a11
mov ecx, 5
mov edx, 0x55aebc
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x559fad
mov byte [ebp - 0xf8], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
or edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040ba78
mov dword [ebp - 0xc0], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xbc], eax
jmp 0x559a11
mov ecx, 5
mov edx, 0x55aecc
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a032
mov byte [ebp - 0xf7], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
or edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040ba78
mov dword [ebp - 0xb8], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xb4], eax
jmp 0x559a11
mov ecx, 0xb
mov edx, 0x55aedc
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a0b7
mov byte [ebp - 0xf6], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
or edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040ba78
mov dword [ebp - 0xb0], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xac], eax
jmp 0x559a11
mov ecx, 0xc
mov edx, 0x55aef0
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a13c
mov byte [ebp - 0xf5], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
or edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040ba78
mov dword [ebp - 0xa8], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0xa4], eax
jmp 0x559a11
mov ecx, 0xb
mov edx, 0x55af08
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a1c1
mov byte [ebp - 0xf4], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
or edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040ba78
mov dword [ebp - 0xa0], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0x9c], eax
jmp 0x559a11
mov ecx, 0xc
mov edx, 0x55af1c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a246
mov byte [ebp - 0xf3], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
or edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040ba78
mov dword [ebp - 0x98], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0x94], eax
jmp 0x559a11
mov ecx, 7
mov edx, 0x55af34
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a2d0
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
push 0
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x168], 0x2f
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.0049136c
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov edx, 0x1e
call fcn.0040ba78
imul eax, eax, 0x3e8
mov edx, 0x7530
call fcn.004350fc
mov dword [ebp - 0x64], eax
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0x68], eax
jmp 0x559a11
mov ecx, 8
mov edx, 0x55af44
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a2f2
mov byte [ebp - 0xf2], 1
jmp 0x559a11
mov ecx, 6
mov edx, 0x55af58
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a314
mov byte [ebp - 0xf1], 1
jmp 0x559a11
mov ecx, 8
mov edx, 0x55af68
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a336
mov byte [ebp - 0xf0], 1
jmp 0x559a11
mov ecx, 8
mov edx, 0x55af7c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a358
mov byte [ebp - 0xef], 1
jmp 0x559a11
mov ecx, 0xd
mov edx, 0x55af90
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a37a
mov byte [ebp - 0xee], 1
jmp 0x559a11
mov ecx, 0xc
mov edx, 0x55afa8
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a39c
mov byte [ebp - 0xed], 1
jmp 0x559a11
mov ecx, 0xe
mov edx, 0x55afc0
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a3be
mov byte [ebp - 0xec], 1
jmp 0x559a11
mov ecx, 0xc
mov edx, 0x55afd8
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a3e0
mov byte [ebp - 0xeb], 1
jmp 0x559a11
mov ecx, 6
mov edx, 0x55aff0
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a402
mov byte [ebp - 0xea], 1
jmp 0x559a11
mov ecx, 4
mov edx, 0x55b000
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a424
mov byte [ebp - 0xe9], 1
jmp 0x559a11
mov ecx, 0xe
mov edx, 0x55b010
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a446
mov byte [ebp - 0xe8], 1
jmp 0x559a11
mov ecx, 0xe
mov edx, 0x55b010
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a468
mov byte [ebp - 0xe8], 1
jmp 0x559a11
mov ecx, 5
mov edx, 0x55b028
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a487
mov byte [ebp - 0x50], 1
jmp 0x559a11
mov ecx, 6
mov edx, 0x55b038
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a4a6
mov byte [ebp - 0x58], 1
jmp 0x559a11
mov ecx, 0x10
mov edx, 0x55b048
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a4f1
mov byte [ebp - 0x80], 1
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov cl, 0x29
mov dl, 0x28
mov eax, dword [ebp - 0x10]
call fcn.00559518
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x1c]
call fcn.0040b510
lea eax, [ebp - 0x7c]
mov edx, dword [ebp - 0x1c]
call fcn.004051d8
jmp 0x559a11
mov ecx, 0xf
mov edx, 0x55b064
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a53c
mov byte [ebp - 0x80], 1
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov cl, 0x29
mov dl, 0x28
mov eax, dword [ebp - 0x10]
call fcn.00559518
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x1c]
call fcn.0040b510
lea eax, [ebp - 0x7c]
mov edx, dword [ebp - 0x1c]
call fcn.004051d8
jmp 0x559a11
mov ecx, 0x10
mov edx, 0x55b07c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a58d
mov byte [ebp - 0x86], 1
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov cl, 0x29
mov dl, 0x28
mov eax, dword [ebp - 0x10]
call fcn.00559518
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x1c]
call fcn.0040b510
lea eax, [ebp - 0x84]
mov edx, dword [ebp - 0x1c]
call fcn.004051d8
jmp 0x559a11
mov ecx, 0xf
mov edx, 0x55b098
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a5de
mov byte [ebp - 0x86], 1
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov cl, 0x29
mov dl, 0x28
mov eax, dword [ebp - 0x10]
call fcn.00559518
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x1c]
call fcn.0040b510
lea eax, [ebp - 0x84]
mov edx, dword [ebp - 0x1c]
call fcn.004051d8
jmp 0x559a11
mov ecx, 0xc
mov edx, 0x55b0b0
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a5fd
mov byte [ebp - 0x78], 1
jmp 0x559a11
mov ecx, 0xa
mov edx, 0x55b0c8
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a61c
mov byte [ebp - 0x78], 1
jmp 0x559a11
mov ecx, 0xe
mov edx, 0x55b0dc
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a63b
mov byte [ebp - 0x77], 1
jmp 0x559a11
mov ecx, 0xb
mov edx, 0x55b0f4
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a65a
mov byte [ebp - 0x6c], 1
jmp 0x559a11
mov ecx, 8
mov edx, 0x55b108
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a6a0
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
or edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040ba78
mov dword [ebp - 0x70], eax
jmp 0x559a11
mov ecx, 0xe
mov edx, 0x55b11c
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a6bf
mov byte [ebp - 0x60], 1
jmp 0x559a11
mov ecx, 0x12
mov edx, 0x55b134
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a6de
mov byte [ebp - 0x5f], 1
jmp 0x559a11
mov ecx, 6
mov edx, 0x55b150
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a736
mov byte [ebp - 0x5e], 1
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
lea edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040b510
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x5c]
call fcn.004051d8
jmp 0x559a11
mov eax, dword [0x83a4b8]
cmp byte [eax + 0x8d95], 0
je 0x55a798
mov ecx, 0x12
mov edx, 0x55b160
mov eax, dword [ebp - 0x18]
call fcn.00491970
test al, al
je 0x55a798
lea eax, [ebp - 0x1c]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov ecx, 0x55ad5c
mov edx, 0x55ad68
mov eax, dword [ebp - 0x18]
call fcn.004916b0
lea edx, reloc.kernel32.dll_DeleteCriticalSection
mov eax, dword [ebp - 0x1c]
call fcn.0040b510
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x54]
call fcn.004051d8
jmp 0x559a11
mov eax, dword [ebp - 0x18]
cmp byte [eax], 0x4c
jne 0x559a11
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov eax, dword [ebp - 0x18]
call fcn.00405410
mov ecx, eax
dec ecx
mov edx, 2
mov eax, dword [ebp - 0x18]
call fcn.00405670
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov edx, 1
call fcn.0040ba78
mov dword [ebp - 0xe4], eax
jmp 0x559a11
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x40]
push eax
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
push edi
mov eax, dword [0x8391d8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
call fcn.00768d88
test eax, eax
jne 0x55a80b
mov dword [ebp - 8], reloc.kernel32.dll_DeleteCriticalSection
push 0x55b17c
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040b900
push dword [ebp - 0x1c4]
push 0x55b198
lea edx, reloc.kernel32.dll_DeleteCriticalSection
lea eax, [ebx + 1]
call fcn.0040b900
push dword [ebp - 0x1c8]
push 0x55ad5c
mov eax, dword [0x839384]
mov edx, 5
call fcn.004054d0
mov eax, dword [0x839700]
push dword [eax]
push 0x55b1a4
mov eax, dword [0x839384]
push dword [eax]
push 0x55ace8
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 4
call fcn.004054d0
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x839c58]
mov eax, dword [eax]
call fcn.00456864
mov eax, dword [0x83a1b4]
mov eax, dword [eax]
call fcn.00476854
inc ebx
dec dword [ebp - 0x4c]
jne 0x559806
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x55ab7b
inc eax
mov dword [ebp - 0x4c], eax
xor ebx, ebx
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea edx, [ebp - 0x14]
call fcn.0040b510
cmp dword [ebp - 0x14], 0
je 0x55aae1
mov eax, dword [ebp - 0x14]
cmp byte [eax], 0x5b
je 0x55aae1
mov eax, dword [ebp - 0x14]
cmp byte [eax], 0x3b
je 0x55aae1
push 2
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 0x18]
call fcn.004051d8
push 2
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
xor edx, edx
mov eax, dword [ebp - 0x18]
call fcn.0040ba78
mov edi, eax
push 2
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
xor edx, edx
mov eax, dword [ebp - 0x18]
call fcn.0040ba78
mov dword [ebp - 0x38], eax
push 4
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x1e8], 0x20
mov byte [ebp - 0x1e7], 0x2c
mov byte [ebp - 0x1e6], 0x2d
mov byte [ebp - 0x1e5], 0x3e
mov byte [ebp - 0x1e4], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
lea eax, [ebp - 0x28]
mov edx, dword [ebp - 0x18]
call fcn.004051d8
push 2
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x11c], 0x20
mov byte [ebp - 0x11b], 0x2c
mov byte [ebp - 0x11a], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
xor edx, edx
mov eax, dword [ebp - 0x18]
call fcn.0040ba78
mov dword [ebp - 0x3c], eax
push 3
lea eax, reloc.kernel32.dll_DeleteCriticalSection
push eax
mov byte [ebp - 0x124], 0x20
mov byte [ebp - 0x123], 0x2c
mov byte [ebp - 0x122], 0x3b
mov byte [ebp - 0x121], 9
lea ecx, reloc.kernel32.dll_DeleteCriticalSection
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.0049136c
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
lea eax, [ebp - 0x14]
call fcn.004051d8
xor edx, edx
mov eax, dword [ebp - 0x18]
call fcn.0040ba78
mov edx, dword [ebp - 0x38]
push edx
mov edx, dword [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x3c]
push edx
push eax
mov eax, dword [0x8391d8]
mov eax, dword [eax]
mov ecx, edi
mov edx, dword [ebp - 0x20]
call fcn.00769680
push 0x55b1b0
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
lea edx, reloc.kernel32.dll_DeleteCriticalSection
call fcn.0040b900
push dword [ebp - 0x1f4]
push 0x55b198
lea edx, reloc.kernel32.dll_DeleteCriticalSection
lea eax, [ebx + 1]
call fcn.0040b900
push dword [ebp - 0x1f8]
push 0x55ad5c
mov eax, dword [0x839384]
mov edx, 5
call fcn.004054d0
mov eax, dword [0x839700]
push dword [eax]
push 0x55b1a4
mov eax, dword [0x839384]
push dword [eax]
push 0x55ace8
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 4
call fcn.004054d0
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x839c58]
mov eax, dword [eax]
call fcn.00456864
mov eax, dword [0x83a1b4]
mov eax, dword [eax]
call fcn.00476854
inc ebx
dec dword [ebp - 0x4c]
jne 0x55a8bb
mov eax, esi
call fcn.004041f0
mov eax, dword [0x839384]
mov edx, dword [ebp - 0x48]
call fcn.00405194
mov eax, dword [0x839700]
push dword [eax]
push 0x55b1a4
mov eax, dword [0x839384]
push dword [eax]
push 0x55ace8
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 4
call fcn.004054d0
mov edx, dword [ebp - reloc.kernel32.dll_DeleteCriticalSection]
mov eax, dword [0x839c58]
mov eax, dword [eax]
call fcn.00456864
mov eax, dword [0x83a1b4]
mov eax, dword [eax]
call fcn.00476854
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x55ac6e
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 6
call fcn.00405164
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 0x1e
call fcn.00405164
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 0x10
call fcn.00405164
lea eax, reloc.kernel32.dll_DeleteCriticalSection
call fcn.00405140
lea eax, reloc.kernel32.dll_DeleteCriticalSection
call fcn.00405140
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, 2
call fcn.00405164
lea eax, reloc.kernel32.dll_DeleteCriticalSection
mov edx, dword [0x492088]
call fcn.00405db8
lea eax, [ebp - 0x48]
mov edx, 2
call fcn.00405164
lea eax, [ebp - 0x34]
mov edx, 0xb
call fcn.00405164
ret