Function at 0x4b74f0
Capabilities:
Contain obfuscated stackstrings
Enumerate files on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x58fead
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3b4
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0x20], edi
mov dword [ebp - 4], 0
wait
cmp dword [edi + 0x2a8], 0
jne 0x4b753e
xor eax, eax
wait
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [edi + 0x2f8]
call fcn.004940b0
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x344]
call fcn.004b4dc0
lea ecx, [ebp - 0xe4]
call fcn.004a3030
mov byte [ebp - 4], 1
push 0
lea ecx, [edi + 0x50]
call fcn.004f9c70
push eax
mov ecx, dword [edi + 0x2a8]
call fcn.00510aa0
mov ecx, 0x5f5774
mov eax, dword [0x5f5774]
mov edx, dword [eax + 0xc]
call edx
add eax, 0x10
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 2
mov byte [ebp - 4], 3
lea eax, [ebp - 0x4c]
push eax
call fcn.0050a4d0
add esp, 4
push 0x104
push 0x104
lea ecx, [ebp - 0x24]
call fcn.00405c40
push eax
push str.LogsDir
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.0050a330
add esp, 0x10
lea ecx, [ebp - 0x24]
test eax, eax
jne 0x4b7632
push 0x104
call fcn.00405c40
push eax
push 1
push 0
push 0x1a
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jns 0x4b7610
push str.SHGetFolderPathW__0__0x001a__0__SHGFP_TYPE_DEFAULT__strSysDir.GetBuffer__260__
push eax
lea ecx, [ebp - 0x170]
call fcn.00434a80
push 0x5cc0a0
lea edx, [ebp - 0x170]
push edx
call fcn.00554cbc
push 0xffffffffffffffff
lea ecx, [ebp - 0x24]
call fcn.00403ab0
push 0x5a429c
push str._sData_
lea eax, [ebp - 0x24]
push eax
call fcn.0040a750
add esp, 0xc
jmp 0x4b7646
push 0xffffffffffffffff
call fcn.00403ab0
push 0x59e4c8
lea ecx, [ebp - 0x24]
call fcn.00407ed0
mov ecx, dword [edi + 0x2a8]
add ecx, 0x10
push ecx
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.00425d90
mov byte [ebp - 4], 4
push 0x59e4c4
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00425e40
mov byte [ebp - 4], 5
push 0x5a42f4
push eax
lea edx, [ebp - 0x14]
push edx
call fcn.00425e40
mov byte [ebp - 4], 6
push 0x59e658
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00425e40
mov byte [ebp - 4], 7
push 0x5a433c
push eax
lea ecx, [ebp - 0x3c]
push ecx
call fcn.00425e40
add esp, 0x3c
mov byte [ebp - 4], 8
mov eax, dword [eax]
lea edx, [ebp - 0x3c0]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x3c]
call fcn.00404d60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2c]
call fcn.00404d60
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x14]
call fcn.00404d60
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x18]
call fcn.00404d60
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1c]
call fcn.00404d60
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
mov ecx, edi
call fcn.00453a30
lea ecx, [edi + 0x2b4]
call fcn.0042c7a0
push eax
lea ecx, [ebp - 0x70]
call fcn.00404d10
mov byte [ebp - 4], 9
cmp ebx, 0xffffffff
je 0x4b7a9b
lea ecx, [ebp - 0x64]
call fcn.004374b0
mov byte [ebp - 4], 0xa
lea ebx, [ebx]
call esi
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0xac]
push ecx
lea edx, [ebp - 0x394]
push edx
mov ecx, edi
call fcn.004a9640
test al, al
je 0x4b78a3
lea eax, [edi + 0x2cc]
push eax
lea ecx, [ebp - 0x44]
call fcn.00415ff0
push eax
lea ecx, [ebp - 0xac]
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00431360
mov ecx, eax
call fcn.00431470
test al, al
je 0x4b78a3
lea edx, [edi + 0x2bc]
push edx
lea ecx, [ebp - 0xbc]
call fcn.00415ff0
push eax
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0xc4]
call fcn.00431360
mov ecx, eax
call fcn.00431440
test al, al
je 0x4b78a3
lea ecx, [ebp - 0xac]
push ecx
lea ecx, [ebp - 0x6c]
call fcn.00431360
fld qword [eax]
fstp qword [ebp - 0x104]
mov edx, dword [edi + 0x2a8]
add edx, 0x10
push edx
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.00425d90
mov byte [ebp - 4], 0xb
push 0x59e4c4
push eax
lea edx, [ebp - 0x18]
push edx
call fcn.00425e40
mov byte [ebp - 4], 0xc
push 0x5a42f4
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.00425e40
mov byte [ebp - 4], 0xd
push 0x59e4c4
push eax
lea ecx, [ebp - 0x2c]
push ecx
call fcn.00425e40
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0x394]
push edx
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00425e40
add esp, 0x3c
mov esi, eax
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x104]
push ecx
lea ecx, [ebp - 0x64]
call fcn.004367f0
push esi
mov ecx, eax
call fcn.00407d40
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x3c]
call fcn.00404d60
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x2c]
call fcn.00404d60
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x14]
call fcn.00404d60
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x18]
call fcn.00404d60
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1c]
call fcn.00404d60
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [ebp - 0x3c0]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4b7740
call esi
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [ebp - 0x60]
mov edi, dword [eax]
mov bl, 0x12
mov dword [ebp - 0x78], edi
cmp edi, dword [ebp - 0x60]
je 0x4b7a8c
push 0x59d4a4
mov esi, dword [ebp - 0x20]
lea ecx, [esi + 0x2b4]
push ecx
call fcn.00442c30
add esp, 8
push 0
push 0
test al, al
mov eax, dword [edi + 0x18]
je 0x4b7a1d
lea edx, [ebp - 0xe4]
push edx
push ecx
mov ecx, esp
mov dword [ebp - 0xa8], esp
push eax
call fcn.0040bfb0
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 0xa
call fcn.004b68b0
add esp, 0x10
xor esi, esi
mov dword [ebp - 0xc8], esi
cmp esi, dword [ebp - 0xe0]
jae 0x4b7a43
push esi
lea ecx, [ebp - 0xe4]
call fcn.004b2ef0
add eax, 0x10
push eax
lea ecx, [ebp - 0x1c]
call fcn.00404d10
mov byte [ebp - 4], 0x11
push esi
lea ecx, [ebp - 0xe4]
call fcn.004b2ef0
add eax, 0xc
push eax
lea ecx, [ebp - 0x18]
call fcn.00404d10
mov byte [ebp - 4], bl
push esi
lea ecx, [ebp - 0xe4]
call fcn.004b2ef0
add eax, 0x14
push eax
lea ecx, [ebp - 0x14]
call fcn.00404d10
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1c]
call fcn.0042c7a0
lea ecx, [ebp - 0x18]
call fcn.0042c7a0
lea ecx, [ebp - 0x14]
call fcn.0042c7a0
push 0
mov eax, dword [ebp - 0x70]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004177a0
cmp eax, 0xffffffff
jne 0x4b79d9
push 0
mov ecx, dword [ebp - 0x70]
push ecx
lea ecx, [ebp - 0x18]
call fcn.004177a0
cmp eax, 0xffffffff
jne 0x4b79d9
push 0
mov edx, dword [ebp - 0x70]
push edx
lea ecx, [ebp - 0x14]
call fcn.004177a0
cmp eax, 0xffffffff
je 0x4b79f4
push esi
lea ecx, [ebp - 0xe4]
call fcn.004b2ef0
push eax
mov ecx, dword [ebp - 0x20]
add ecx, 0x344
call fcn.004b3f80
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x14]
call fcn.00404d60
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x18]
call fcn.00404d60
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1c]
call fcn.00404d60
inc esi
jmp 0x4b7923
add esi, 0x344
push esi
push ecx
mov ecx, esp
mov dword [ebp - 0xa8], esp
push eax
call fcn.0040bfb0
mov byte [ebp - 4], 0x14
mov byte [ebp - 4], 0xa
call fcn.004b68b0
add esp, 0x10
cmp byte [edi + 0x21], 0
jne 0x4b78cc
mov eax, dword [edi + 8]
cmp byte [eax + 0x21], 0
jne 0x4b7a70
mov edi, eax
mov dword [ebp - 0xcc], edi
mov eax, dword [edi]
cmp byte [eax + 0x21], 0
jne 0x4b78c9
jmp 0x4b7a56
mov eax, dword [edi + 4]
cmp byte [eax + 0x21], 0
jne 0x4b7a85
cmp edi, dword [eax + 8]
jne 0x4b7a85
mov edi, eax
mov dword [ebp - 0x78], edi
jmp 0x4b7a70
mov edi, eax
jmp 0x4b78c9
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x64]
call fcn.00437450
mov edi, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xf4], esi
mov byte [ebp - 4], 0x15
push esi
lea ecx, [edi + 0x50]
call fcn.004f9c70
push eax
mov ecx, dword [edi + 0x2a8]
call fcn.00510cf0
mov dword [ebp - 0xa8], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0050a4d0
add esp, 4
push 0x104
push 0x104
lea ecx, [ebp - 0x24]
call fcn.00405c40
push eax
push str.LogsDir
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.0050a330
add esp, 0x10
lea ecx, [ebp - 0x24]
test eax, eax
jne 0x4b7b64
push 0x104
call fcn.00405c40
push eax
push 1
push esi
push 0x1a
push esi
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
cmp eax, esi
jge 0x4b7b42
push str.SHGetFolderPathW__0__0x001a__0__SHGFP_TYPE_DEFAULT__strSysDir.GetBuffer__260__
push eax
lea ecx, [ebp - 0x160]
call fcn.00434a80
push 0x5cc0a0
lea edx, [ebp - 0x160]
push edx
call fcn.00554cbc
push 0xffffffffffffffff
lea ecx, [ebp - 0x24]
call fcn.00403ab0
push 0x5a429c
push str._sData_
lea eax, [ebp - 0x24]
push eax
call fcn.0040a750
add esp, 0xc
jmp 0x4b7b78
push 0xffffffffffffffff
call fcn.00403ab0
push 0x59e4c8
lea ecx, [ebp - 0x24]
call fcn.00407ed0
mov ecx, dword [edi + 0x2a8]
add ecx, 0x10
push ecx
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.00425d90
mov byte [ebp - 4], 0x16
push 0x59e4c4
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00425e40
mov byte [ebp - 4], 0x17
push 0x5a42e8
push eax
lea edx, [ebp - 0x14]
push edx
call fcn.00425e40
mov byte [ebp - 4], 0x18
push 0x59e658
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00425e40
mov bl, 0x19
mov byte [ebp - 4], bl
push 0x5a432c
push eax
lea ecx, [ebp - 0x3c]
push ecx
call fcn.00425e40
add esp, 0x3c
mov byte [ebp - 4], 0x1a
mov eax, dword [eax]
lea edx, [ebp - 0x3c0]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
mov dword [ebp - 0x28], esi
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x3c]
call fcn.00404d60
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x2c]
call fcn.00404d60
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x14]
call fcn.00404d60
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x18]
call fcn.00404d60
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x1c]
call fcn.00404d60
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ebx
cmp esi, 0xffffffff
je 0x4b84ad
lea ecx, [ebp - 0x150]
call fcn.004374b0
mov byte [ebp - 4], 0x1b
mov ecx, edi
call fcn.00453a30
lea ebx, [ebx]
call ebx
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x80]
push ecx
lea edx, [ebp - 0x394]
push edx
mov ecx, edi
call fcn.004a9640
test al, al
je 0x4b7e12
lea eax, [edi + 0x2cc]
push eax
lea ecx, [ebp - 0x44]
call fcn.00415ff0
push eax
lea ecx, [ebp - 0x80]
push ecx
lea ecx, [ebp - 0xbc]
call fcn.00431360
mov ecx, eax
call fcn.00431470
test al, al
je 0x4b7e12
lea edx, [edi + 0x2bc]
push edx
lea ecx, [ebp - 0xc4]
call fcn.00415ff0
push eax
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00431360
mov ecx, eax
call fcn.00431440
test al, al
je 0x4b7e12
lea ecx, [ebp - 0x80]
push ecx
lea ecx, [ebp - 0x34]
call fcn.00431360
fld qword [eax]
fstp qword [ebp - 0xb4]
mov edx, dword [edi + 0x2a8]
add edx, 0x10
push edx
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x38]
push ecx
call fcn.00425d90
mov byte [ebp - 4], 0x1c
push 0x59e4c4
push eax
lea edx, [ebp - 0x1c]
push edx
call fcn.00425e40
mov byte [ebp - 4], 0x1d
push 0x5a42e8
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.00425e40
mov byte [ebp - 4], 0x1e
push 0x59e4c4
push eax
lea ecx, [ebp - 0x14]
push ecx
call fcn.00425e40
mov byte [ebp - 4], 0x1f
lea edx, [ebp - 0x394]
push edx
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00425e40
add esp, 0x3c
mov esi, eax
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xb4]
push ecx
lea ecx, [ebp - 0x150]
call fcn.004367f0
mov ebx, eax
mov ecx, dword [esi]
lea eax, [ecx - 0x10]
mov esi, dword [ebx]
sub esi, 0x10
cmp eax, esi
je 0x4b7dcd
cmp dword [esi + 0xc], 0
jl 0x4b7dc1
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x4b7dc1
push eax
call fcn.004021d0
add esp, 4
mov dword [ebp - 0x3c], eax
lea eax, [esi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4b7db7
mov ecx, dword [esi]
mov edx, dword [ecx]
push esi
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x3c]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x4b7dcd
mov eax, dword [ecx - 0xc]
push eax
push ecx
mov ecx, ebx
call fcn.00405e50
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x2c]
call fcn.00404d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x14]
call fcn.00404d60
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x18]
call fcn.00404d60
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x1c]
call fcn.00404d60
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x38]
call fcn.00404d60
mov esi, dword [ebp - 0x28]
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [ebp - 0x3c0]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4b7c60
call ebx
lea ecx, [edi + 0x2b4]
call fcn.0042c7a0
push eax
lea ecx, [ebp - 0x68]
call fcn.00404d10
mov byte [ebp - 4], 0x21
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax]
mov dword [ebp - 0x50], ecx
mov esi, ecx
cmp esi, dword [ebp - 0x14c]
je 0x4b848f
push 0
push 0
lea edx, [ebp - 0xfc]
push edx
mov eax, dword [esi + 0x18]
push ecx
mov ecx, esp
mov dword [ebp - 0x7c], esp
push eax
call fcn.0040bfb0
mov byte [ebp - 4], 0x22
mov byte [ebp - 4], 0x21
call fcn.00465510
add esp, 0x10
mov ebx, dword [ebp - 0xfc]
mov dword [ebp - 0xd0], ebx
cmp ebx, dword [ebp - 0xf8]
je 0x4b8449
mov dword [ebp - 0x48], 0
jmp 0x4b7eb0
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebx + 0x28]
jae 0x4b8441
mov esi, eax
push esi
lea ecx, [ebx + 0x24]
call fcn.004b2ed0
add eax, 4
push eax
lea ecx, [ebp - 0x1c]
call fcn.00404d10
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x1c]
call fcn.0042c7a0
lea ecx, [ebp - 0xa4]
call fcn.004b3970
mov byte [ebp - 4], 0x24
push esi
lea ecx, [ebx + 0x24]
call fcn.004b2ed0
xor ecx, ecx
cmp dword [eax + 0xc], ecx
sete cl
mov dword [ebp - 0x94], ecx
mov eax, dword [ebx + 4]
lea esi, [eax - 0x10]
mov ecx, dword [ebp - 0x84]
add ecx, 0xfffffff0
mov dword [ebp - 0x14], ecx
cmp esi, ecx
je 0x4b7fd3
cmp dword [ecx + 0xc], 0
jl 0x4b7fc3
mov edx, dword [esi]
cmp edx, dword [ecx]
jne 0x4b7fc3
mov ecx, edx
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
lea ecx, [esi + 0xc]
cmp dword [ecx], 0
jl 0x4b7f56
cmp eax, dword [esi]
jne 0x4b7f56
mov dword [ebp - 0x18], esi
mov eax, 1
lock xadd dword [ecx], eax
jmp 0x4b7f96
mov edx, dword [eax]
push 2
mov ecx, dword [esi + 4]
push ecx
mov ecx, eax
mov edx, dword [edx]
call edx
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x4b7f70
call fcn.004021c0
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 4], eax
mov eax, dword [esi + 4]
lea edx, [eax + eax + 2]
push edx
add esi, 0x10
push esi
lea eax, [eax + eax + 2]
push eax
add ecx, 0x10
push ecx
call fcn.00554d08
add esp, 0x10
mov eax, dword [ebp - 0x14]
add eax, 0xc
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4b7fb5
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x10
mov dword [ebp - 0x84], ecx
jmp 0x4b7fd3
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ecx, [ebp - 0x84]
call fcn.00405e50
mov esi, dword [ebp - 0x48]
push esi
lea ecx, [ebx + 0x24]
call fcn.004b2ed0
mov edx, dword [eax + 8]
mov dword [ebp - 0x90], edx
push esi
lea ecx, [ebx + 0x24]
call fcn.004b2ed0
mov eax, dword [eax + 4]
lea esi, [eax - 0x10]
mov ecx, dword [ebp - 0x88]
add ecx, 0xfffffff0
mov dword [ebp - 0x14], ecx
cmp esi, ecx
je 0x4b80bf
cmp dword [ecx + 0xc], 0
jl 0x4b80af
mov edx, dword [esi]
cmp edx, dword [ecx]
jne 0x4b80af
mov ecx, edx
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
lea ecx, [esi + 0xc]
cmp dword [ecx], 0
jl 0x4b8042
cmp eax, dword [esi]
jne 0x4b8042
mov dword [ebp - 0x18], esi
mov eax, 1
lock xadd dword [ecx], eax
jmp 0x4b8082
mov edx, dword [eax]
push 2
mov ecx, dword [esi + 4]
push ecx
mov ecx, eax
mov edx, dword [edx]
call edx
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x4b805c
call fcn.004021c0
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 4], eax
mov eax, dword [esi + 4]
lea edx, [eax + eax + 2]
push edx
add esi, 0x10
push esi
lea eax, [eax + eax + 2]
push eax
add ecx, 0x10
push ecx
call fcn.00554d08
add esp, 0x10
mov eax, dword [ebp - 0x14]
add eax, 0xc
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4b80a1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x10
mov dword [ebp - 0x88], ecx
jmp 0x4b80bf
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ecx, [ebp - 0x88]
call fcn.00405e50
push 0x59e2bc
lea edx, [ebx + 0xc]
push edx
lea eax, [ebp - 0x2c]
push eax
call fcn.00425e40
mov byte [ebp - 4], 0x25
lea ecx, [ebx + 0x10]
push ecx
push eax
lea edx, [ebp - 0x3c]
push edx
call fcn.00425d90
add esp, 0x18
mov byte [ebp - 4], 0x26
mov ecx, eax
call fcn.00404db0
push eax
lea ecx, [ebp - 0x128]
call fcn.0040b4a0
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x10c]
push ecx
call fcn.0046d430
add esp, 8
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov esi, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], edx
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], eax
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x128]
call fcn.00405c10
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x3c]
call fcn.00404d60
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x2c]
call fcn.00404d60
mov ecx, 0x5f5774
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0x28
mov byte [ebp - 4], 0x29
sub esp, 0x10
mov eax, esp
mov ecx, dword [ebp - 0xa4]
mov dword [eax], ecx
mov edx, dword [ebp - 0xa0]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x9c]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0x98]
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebx + 0x20]
call fcn.004b51f0
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + 0x2a8]
add edx, 0x10
push edx
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x40]
push ecx
call fcn.00425d90
mov byte [ebp - 4], 0x2a
push 0x59e4c4
push eax
lea edx, [ebp - 0xb0]
push edx
call fcn.00425e40
mov byte [ebp - 4], 0x2b
push 0x5a4318
push eax
lea eax, [ebp - 0xb8]
push eax
call fcn.00425e40
mov byte [ebp - 4], 0x2c
push 0x59e4c4
push eax
lea ecx, [ebp - 0xc0]
push ecx
call fcn.00425e40
mov byte [ebp - 4], 0x2d
lea edx, [ebp - 0x30]
push edx
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.00425d90
mov byte [ebp - 4], 0x2e
push 0x59e4c4
push eax
lea ecx, [ebp - 0x28]
push ecx
call fcn.00425e40
add esp, 0x48
mov esi, eax
mov byte [ebp - 4], 0x2f
mov edx, dword [ebp - 0x48]
push edx
lea ecx, [ebx + 0x24]
call fcn.004b2ed0
push eax
push esi
lea eax, [ebp - 0x38]
push eax
call fcn.00425d90
add esp, 0xc
mov byte [ebp - 4], 0x30
mov eax, dword [eax]
lea esi, [eax - 0x10]
mov edi, dword [ebp - 0x8c]
add edi, 0xfffffff0
cmp esi, edi
je 0x4b831d
cmp dword [edi + 0xc], 0
jl 0x4b830d
mov ecx, dword [esi]
cmp ecx, dword [edi]
jne 0x4b830d
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
lea ecx, [esi + 0xc]
cmp dword [ecx], 0
jl 0x4b82a6
cmp eax, dword [esi]
jne 0x4b82a6
mov dword [ebp - 0x14], esi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x4b82e6
mov edx, dword [eax]
push 2
mov ecx, dword [esi + 4]
push ecx
mov ecx, eax
mov edx, dword [edx]
call edx
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x4b82c0
call fcn.004021c0
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 4], eax
mov eax, dword [esi + 4]
lea edx, [eax + eax + 2]
push edx
add esi, 0x10
push esi
lea eax, [eax + eax + 2]
push eax
add ecx, 0x10
push ecx
call fcn.00554d08
add esp, 0x10
lea eax, [edi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4b82ff
mov ecx, dword [edi]
mov edx, dword [ecx]
push edi
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x10
mov dword [ebp - 0x8c], ecx
jmp 0x4b831d
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ecx, [ebp - 0x8c]
call fcn.00405e50
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x38]
call fcn.00404d60
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x28]
call fcn.00404d60
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x58]
call fcn.00404d60
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0xc0]
call fcn.00404d60
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xb8]
call fcn.00404d60
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0xb0]
call fcn.00404d60
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x40]
call fcn.00404d60
push 0x59d4a4
lea edx, [ebp - 0x68]
push edx
call fcn.00442c30
add esp, 8
test al, al
je 0x4b83d7
push 0
mov eax, dword [ebp - 0x68]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004177a0
cmp eax, 0xffffffff
je 0x4b840f
cmp dword [ebp - 0x90], 0
jbe 0x4b840f
lea ecx, [ebp - 0xa4]
push ecx
mov ecx, 0x5f7888
call fcn.004b4000
mov edx, dword [0x5f788c]
dec edx
push edx
lea eax, [ebp - 0xa4]
push eax
mov ecx, dword [ebp - 0x20]
lea edx, [ecx + 0x344]
push edx
jmp 0x4b840a
cmp dword [ebp - 0x90], 0
jbe 0x4b840f
lea eax, [ebp - 0xa4]
push eax
mov ecx, 0x5f7888
call fcn.004b4000
mov ecx, dword [0x5f788c]
dec ecx
push ecx
lea edx, [ebp - 0xa4]
push edx
mov ecx, dword [ebp - 0x20]
lea eax, [ecx + 0x344]
push eax
call fcn.004b4130
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x30]
call fcn.00404d60
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0xa4]
call fcn.00411d80
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x1c]
call fcn.00404d60
inc dword [ebp - 0x48]
mov esi, dword [ebp - 0x50]
jmp 0x4b7eb0
add ebx, 0x34
jmp 0x4b7e92
cmp byte [esi + 0x21], 0
jne 0x4b7e56
mov eax, dword [esi + 8]
cmp byte [eax + 0x21], 0
jne 0x4b8470
mov esi, eax
mov dword [ebp - 0xe8], esi
mov eax, dword [esi]
cmp byte [eax + 0x21], 0
jne 0x4b8487
jmp 0x4b845c
mov eax, dword [esi + 4]
cmp byte [eax + 0x21], 0
jne 0x4b8485
cmp esi, dword [eax + 8]
jne 0x4b8485
mov esi, eax
mov dword [ebp - 0x50], esi
jmp 0x4b8470
mov esi, eax
mov dword [ebp - 0x50], esi
jmp 0x4b7e56
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x68]
call fcn.00404d60
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x150]
call fcn.00437450
mov edi, dword [ebp - 0x20]
mov ecx, dword [edi + 0x28]
mov dword [ebp - 0x7c], ecx
mov dl, byte [edi + 0x24]
mov byte [ebp - 0x100], dl
mov dword [0x5ed808], 0
lea ecx, [edi + 4]
call fcn.00431340
lea eax, [ebp - 0x54]
push eax
push str.ItemsPerPage
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.0050a210
add esp, 0xc
test eax, eax
jne 0x4b84ff
push 0x1f4
push str.ItemsPerPage
mov edx, dword [ebp - 0x4c]
push edx
call fcn.0050a260
add esp, 0xc
jmp 0x4b8505
cmp dword [ebp - 0x54], 0
jne 0x4b850c
mov dword [ebp - 0x54], 0x1f4
mov eax, dword [ebp - 0x4c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, dword [edi + 0x348]
mov dword [ebp - 0x2c], esi
mov eax, esi
xor edx, edx
mov ecx, dword [ebp - 0x54]
div ecx
mov ebx, edx
mov eax, esi
sub eax, ebx
xor edx, edx
div ecx
mov esi, eax
mov dword [ebp - 0xec], esi
test ebx, ebx
je 0x4b8545
inc esi
mov dword [ebp - 0xec], esi
mov eax, dword [ebp - 0x2c]
dec eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x18], eax
lea eax, [esi - 1]
imul eax, ecx
mov dword [ebp - 0x3c], eax
push esi
lea ecx, [edi + 0x2f8]
call fcn.00494860
lea ecx, [edi + 0x2f8]
cmp byte [edi + 0x340], 0
jne 0x4b8591
call fcn.004940a0
mov ecx, dword [ebp - 0x54]
imul eax, ecx
mov dword [ebp - 0x3c], eax
lea ecx, [eax + ecx - 1]
mov dword [ebp - 0x18], ecx
mov byte [edi + 0x340], 1
jmp 0x4b8597
push esi
call fcn.004949a0
mov edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 0x2c]
jl 0x4b85a5
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
xor ebx, ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0xd4], ebx
cmp ebx, dword [edi + 0x348]
jae 0x4b8d8a
mov ecx, 0x5f5774
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x31
mov byte [ebp - 4], 0x32
mov ecx, 0x5f5774
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0xc0], eax
mov byte [ebp - 4], 0x33
mov byte [ebp - 4], 0x34
mov ecx, 0x5f5774
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x58], eax
mov byte [ebp - 4], 0x35
mov byte [ebp - 4], 0x36
push 0
push 1
push 0x1002
mov edi, dword [ebp - 0x20]
mov ecx, dword [edi + 4]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
mov dword [ebp - 0x140], 0
push 0x30
push 0
lea edx, [ebp - 0x13c]
push edx
call fcn.00555020
add esp, 0xc
mov dword [ebp - 0x140], 6
mov dword [ebp - 0x120], ebx
add edi, 0x344
push ebx
mov ecx, edi
call fcn.004b2ef0
movzx eax, byte [eax + 0x18]
dec eax
cmp eax, 7
ja case.default.0x4b867a
jmp dword [eax*4 + 0x4b8e30]
push 0x189
mov eax, dword [0x5fd7c0]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov ecx, dword [ebp - 0x30]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.myspace
jmp 0x4b8874
push 0x18b
mov edx, dword [0x5fd7c0]
push edx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.linkedin
jmp 0x4b8874
push 0x18a
mov ecx, dword [0x5fd7c0]
push ecx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov edx, dword [ebp - 0x30]
push edx
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.moikrug
jmp 0x4b8874
push 0x155
mov eax, dword [0x5fd7c0]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov ecx, dword [ebp - 0x30]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.vkontakte
jmp 0x4b8874
push 0x154
mov edx, dword [0x5fd7c0]
push edx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.facebook
jmp 0x4b8874
push 0x157
mov ecx, dword [0x5fd7c0]
push ecx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov edx, dword [ebp - 0x30]
push edx
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.odnoklassniki
jmp 0x4b8874
push 0x159
mov eax, dword [0x5fd7c0]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov ecx, dword [ebp - 0x30]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
push str.twitter
jmp 0x4b8874
push 0x15c
mov edx, dword [0x5fd7c0]
push edx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_DestroyIcon]
push 0x5a45c8
jmp 0x4b8874
push 0x118
mov ecx, dword [0x5fd7c0]
push ecx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x30], eax
push eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov dword [ebp - 0x124], eax
mov edx, dword [ebp - 0x30]
push edx
call dword [sym.imp.USER32.dll_DestroyIcon]
push 0x59ff90
lea ecx, [ebp - 0x28]
call fcn.00405c70
lea eax, [ebp - 0x140]
push eax
push 0
push 0x104d
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
push ebx
mov ecx, edi
call fcn.004b2ef0
mov eax, dword [eax + 4]
push eax
push 1
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
push ebx
mov ecx, edi
call fcn.004b2ef0
mov eax, dword [eax + 8]
push eax
push 2
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
push ebx
mov ecx, edi
call fcn.004b2ef0
cmp dword [eax + 0x28], 0
je 0x4b8a6f
push 0x160
lea ecx, [ebp - 0x58]
call fcn.00407ea0
mov edx, dword [ebp - 0x28]
push edx
push 0
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
push ebx
mov ecx, edi
call fcn.004b2ef0
mov eax, dword [eax + 0x2c]
push eax
mov ecx, 0x5f7888
call fcn.004b2f20
push eax
lea ecx, [ebp - 0xa4]
call fcn.004b3a10
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x88]
push ecx
push 3
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
mov ecx, 0x5f5774
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x68], eax
mov byte [ebp - 4], 0x38
mov byte [ebp - 4], 0x39
push 0x400
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0055b3f8
add esp, 8
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
test eax, eax
jle 0x4b8a11
push 0x100000
mov edx, dword [ebp - 0x90]
push edx
call fcn.0055b3f8
add esp, 8
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
fild dword [ebp - 0x90]
test eax, eax
jle 0x4b89d7
mov eax, dword [ebp - 0x90]
test eax, eax
jns 0x4b89ad
fadd dword [0x59bde8]
fmul qword [0x5a45c0]
fstp dword [ebp - 0x40]
push 0x5a45b8
fld dword [ebp - 0x40]
sub esp, 8
fstp qword [esp]
push str._.2f__s
lea ecx, [ebp - 0x68]
push ecx
call fcn.004060d0
add esp, 0x14
jmp 0x4b8a2e
mov edx, dword [ebp - 0x90]
test edx, edx
jns 0x4b89e7
fadd dword [0x59bde8]
fmul qword [0x5a45a0]
fstp dword [ebp - 0x40]
push 0x5a4594
fld dword [ebp - 0x40]
sub esp, 8
fstp qword [esp]
push str._.2f__s
lea eax, [ebp - 0x68]
push eax
call fcn.004060d0
add esp, 0x14
jmp 0x4b8a2e
push str.bytes
mov ecx, dword [ebp - 0x90]
push ecx
push str._u__s
lea edx, [ebp - 0x68]
push edx
call fcn.004060d0
add esp, 0x10
mov eax, dword [ebp - 0x68]
push eax
push 5
push esi
mov edi, dword [ebp - 0x20]
lea ecx, [edi + 4]
call fcn.00401a50
mov ecx, dword [ebp - 0x58]
push ecx
push 4
push esi
lea ecx, [edi + 4]
call fcn.00401a50
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x68]
call fcn.00404d60
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0xa4]
call fcn.00411d80
jmp 0x4b8d57
push ebx
mov ecx, edi
call fcn.004b2ef0
movzx eax, byte [eax]
dec eax
cmp eax, 8
ja case.default.0x4b8a80
jmp dword [eax*4 + 0x4b8e50]
push ebx
mov ecx, edi
call fcn.004b2ef0
lea ecx, [ebp - 0x58]
cmp byte [eax + 1], 0
jne 0x4b8a9f
push 0xbf
jmp 0x4b8adf
push 0xb9
jmp 0x4b8adf
push 0x156
jmp 0x4b8adc
push 0x146
jmp 0x4b8adc
push 0x158
jmp 0x4b8adc
push 0x15b
jmp 0x4b8adc
push 0x15c
jmp 0x4b8adc
push 0x157
jmp 0x4b8adc
push 0x161
jmp 0x4b8adc
push 0x162
lea ecx, [ebp - 0x58]
call fcn.00407ea0
lea ecx, [ebp - 0x28]
call fcn.00404db0
mov dword [ebp - 0x12c], eax
mov edx, dword [ebp - 0x3c]
cmp dword [ebp - 0x74], edx
jl 0x4b8d57
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x74], eax
jg 0x4b8d57
mov ecx, dword [ebp - 0x28]
push ecx
push 0
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
mov ecx, 0x5f5774
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x3a
mov byte [ebp - 4], 0x3b
push ebx
mov ecx, edi
call fcn.004b2ef0
mov eax, dword [eax + 0x14]
lea ecx, [eax - 0x10]
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
mov dword [ebp - 0x2c], edx
cmp ecx, edx
je 0x4b8c21
mov ecx, edx
cmp dword [ecx + 0xc], 0
jl 0x4b8c14
mov edx, dword [ebp - 0x30]
mov edx, dword [edx]
cmp edx, dword [ecx]
jne 0x4b8c14
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
mov ecx, dword [ebp - 0x30]
add ecx, 0xc
cmp dword [ecx], 0
jl 0x4b8ba1
mov edx, dword [ebp - 0x30]
cmp eax, dword [edx]
jne 0x4b8ba1
mov dword [ebp - 0x14], edx
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x4b8bea
mov edx, dword [eax]
push 2
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ecx + 4]
push ecx
mov ecx, eax
mov edx, dword [edx]
call edx
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x4b8bbe
call fcn.004021c0
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov dword [edx + 4], ecx
mov ecx, dword [eax + 4]
lea edx, [ecx + ecx + 2]
push edx
add eax, 0x10
push eax
lea eax, [ecx + ecx + 2]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x10
push ecx
call fcn.00554d08
add esp, 0x10
mov eax, dword [ebp - 0x2c]
add eax, 0xc
or edx, 0xffffffff
lock xadd dword [eax], edx
dec edx
test edx, edx
jg 0x4b8c09
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x10
mov dword [ebp - 0x1c], ecx
jmp 0x4b8c21
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ecx, [ebp - 0x1c]
call fcn.00405e50
mov edx, dword [ebp - 0x1c]
push edx
push 3
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
mov eax, dword [ebp - 0x58]
push eax
push 4
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
push ebx
mov ecx, edi
call fcn.004b2ef0
add eax, 0x10
push eax
lea ecx, [ebp - 0x38]
call fcn.00404d10
mov byte [ebp - 4], 0x3c
push 0x5a4574
push 0x59d684
lea ecx, [ebp - 0x38]
call fcn.00419570
cmp dword [0x5f7bf0], 0
jne 0x4b8d2d
mov ecx, dword [ebp - 0x38]
cmp dword [ecx - 0xc], 0x3c
jbe 0x4b8d2d
push 0x3c
lea edx, [ebp - 0xb8]
push edx
lea ecx, [ebp - 0x38]
call fcn.0041e300
mov byte [ebp - 4], 0x3d
push 0x59e5dc
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00425e40
add esp, 0xc
mov byte [ebp - 4], 0x3e
mov ecx, dword [eax]
lea eax, [ecx - 0x10]
mov edi, dword [ebp - 0x38]
add edi, 0xfffffff0
cmp eax, edi
je 0x4b8d0f
cmp dword [edi + 0xc], 0
jl 0x4b8d02
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x4b8d02
push eax
call fcn.004021d0
add esp, 4
mov dword [ebp - 0x40], eax
lea eax, [edi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4b8cf7
mov ecx, dword [edi]
mov edx, dword [ecx]
push edi
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x40]
add ecx, 0x10
mov dword [ebp - 0x38], ecx
jmp 0x4b8d0f
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0x38]
call fcn.00405e50
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0xb0]
call fcn.00404d60
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0xb8]
call fcn.00404d60
mov edx, dword [ebp - 0x38]
push edx
push 5
push esi
mov ecx, dword [ebp - 0x20]
add ecx, 4
call fcn.00401a50
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x38]
call fcn.00404d60
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x1c]
call fcn.00404d60
inc dword [ebp - 0x74]
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x58]
call fcn.00404d60
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0xc0]
call fcn.00404d60
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x28]
call fcn.00404d60
inc ebx
mov edi, dword [ebp - 0x20]
jmp 0x4b85aa
mov dword [0x5ed808], 1
mov eax, dword [ebp - 0x100]
push eax
mov ecx, dword [ebp - 0x7c]
push ecx
lea ecx, [edi + 0x24]
call fcn.00432140
lea ecx, [edi + 0x2f8]
call fcn.004940c0
lea ecx, [edi + 0x2f8]
call fcn.00494150
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xfc]
call fcn.00465ee0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00404d60
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x24]
call fcn.00404d60
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xe4]
call fcn.004b4d50
mov eax, dword [ebp - 0xa8]
wait
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret