Function at 0x44c4a0
Capabilities:
Create shortcut via ishelllink
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57e9f5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x458
push ebx
push esi
push edi
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x10], ecx
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cf9e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x4c], eax
push str.UklpfUCI7LBjQnAKh0
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0
call fcn.0042f410
test al, al
jne 0x44c508
push 0x13
push str.UklpfUCI7LBjQnAKh0
lea ecx, [ebp - 0x4c]
call fcn.0042f740
mov dword [ebp - 4], 1
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfa8
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x48], eax
push str.WGs3MRTsZoUiQs2Dmg2oMARFtMTsesQw
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 2
call fcn.0042f410
test al, al
jne 0x44c54d
push 0x22
push str.WGs3MRTsZoUiQs2Dmg2oMARFtMTsesQw
lea ecx, [ebp - 0x48]
call fcn.0042f740
mov byte [ebp - 4], 3
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfb2
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x50], eax
push str.Yno3vWBESFWCoW7GUIsRPR9FtKg0I
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.0042f410
test al, al
jne 0x44c58f
push 0x1d
push str.Yno3vWBESFWCoW7GUIsRPR9FtKg0I
lea ecx, [ebp - 0x50]
call fcn.0042f740
mov byte [ebp - 4], 5
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfbc
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x3c], eax
push str.aXVplcQYcDDUxMdGRw
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 6
call fcn.0042f410
test al, al
jne 0x44c5d1
push 0x13
push str.aXVplcQYcDDUxMdGRw
lea ecx, [ebp - 0x3c]
call fcn.0042f740
mov byte [ebp - 4], 7
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfc6
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x2c], eax
push str.TzIxkdBx6NdhE7hdF4YMK1dDBJC5GdWSsqqQEMbZPW1SmGytXxDFEXDFF4dDKw8UlGDo
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
call fcn.0042f410
test al, al
jne 0x44c613
push 0x45
push str.TzIxkdBx6NdhE7hdF4YMK1dDBJC5GdWSsqqQEMbZPW1SmGytXxDFEXDFF4dDKw8UlGDo
lea ecx, [ebp - 0x2c]
call fcn.0042f740
mov byte [ebp - 4], 9
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfd0
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x30], eax
push str.NzJGKTmZHcIzxOzeyg63UkAgRL1RXgGStF2QCk86aFEpyKlIPfYxYRkXS8qwChcq3Ow
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xa
call fcn.0042f410
test al, al
jne 0x44c655
push 0x45
push str.NzJGKTmZHcIzxOzeyg63UkAgRL1RXgGStF2QCk86aFEpyKlIPfYxYRkXS8qwChcq3Ow
lea ecx, [ebp - 0x30]
call fcn.0042f740
mov byte [ebp - 4], 0xb
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfda
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x40], eax
push str.YzJ6uaCBd0ORoGjUw4NTKlwJvHAJchGQ08sVwgaODEAlbCwxWCH1VGwalwHXClZHpTQ9H
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xc
call fcn.0042f410
test al, al
jne 0x44c697
push 0x45
push str.YzJ6uaCBd0ORoGjUw4NTKlwJvHAJchGQ08sVwgaODEAlbCwxWCH1VGwalwHXClZHpTQ9H
lea ecx, [ebp - 0x40]
call fcn.0042f740
push dword [ebp + 0xc]
mov byte [ebp - 4], 0xd
push ecx
mov ecx, dword [ebp - 0x3c]
mov esi, esp
mov dword [ebp - 0x44], esi
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x28]
mov dword [esi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0xe
push dword [eax]
lea eax, [ebp - 0x3c]
push eax
call fcn.00421ac0
mov byte [ebp - 4], 0xd
or ebx, 0xffffffff
mov edx, dword [ebp - 0x28]
add esp, 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c6f2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfe4
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x596844
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xf
call fcn.0042f410
test al, al
jne 0x44c730
push 0
push 0x596844
lea ecx, [ebp - 0x18]
call fcn.0042f740
mov byte [ebp - 4], 0x10
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cfee
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x596844
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x11
call fcn.0042f410
test al, al
jne 0x44c772
push 0
push 0x596844
lea ecx, [ebp - 0x14]
call fcn.0042f740
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x48]
push ecx
add eax, 0xfffffff0
mov esi, esp
mov dword [ebp - 0x44], esi
mov ecx, eax
mov dword [ebp - 0x44], eax
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [esi], eax
call fcn.00445630
mov edi, eax
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
mov dword [ebp - 0x34], esi
mov ecx, eax
mov dword [ebp - 0x34], eax
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x28]
mov dword [esi], eax
call fcn.00445630
add esp, 4
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x14
push ecx
lea ecx, [ebp - 0x14]
mov edx, edi
push ecx
lea ecx, [ebp - 0x3c]
push ecx
mov ecx, eax
call fcn.0045b100
mov edx, dword [ebp - 0x28]
add esp, 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c7f8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c812
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c82c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x18]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c846
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov dword [ebp - 0x38], 0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x15
push eax
push 0x5868c0
push 0x17
push 0
push 0x5868d0
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, dword [ebp - 0x50]
test eax, eax
js 0x44cd2d
mov edi, dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea eax, [ebp - 0x258]
push eax
push 0
push 0
push 0x10
push 0
call edi
test eax, eax
jns 0x44c9f2
mov ecx, dword [ebp + 0xc]
push ecx
push eax
push ecx
mov edi, esp
mov dword [ebp - 0x10], edi
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0x16
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.00421ac0
mov byte [ebp - 4], 0x15
add esp, 0x10
mov edx, dword [ebp - 0x1c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c8f1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44cff8
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x596844
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x17
call fcn.0042f410
test al, al
jne 0x44c92f
push 0
push 0x596844
lea ecx, [ebp - 0x14]
call fcn.0042f740
mov byte [ebp - 4], 0x18
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d002
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x596844
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x19
call fcn.0042f410
test al, al
jne 0x44c971
push 0
push 0x596844
lea ecx, [ebp - 0x18]
call fcn.0042f740
push ecx
mov byte [ebp - 4], 0x1a
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x10], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [edi], eax
call fcn.00445630
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0x10], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x14]
mov edx, ebx
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.0045b100
mov edx, dword [ebp - 0x1c]
or ebx, 0xffffffff
add esp, 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44c9ea
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
jmp 0x44ce7f
lea eax, [ebp - 0x460]
push eax
push 0
push 0
push 2
push 0
call edi
test eax, eax
jns 0x44cb2a
mov ecx, dword [ebp + 0xc]
push ecx
push eax
push ecx
mov edi, esp
mov dword [ebp - 0x10], edi
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0x1e
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.00421ac0
mov byte [ebp - 4], 0x15
add esp, 0x10
mov edx, dword [ebp - 0x1c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44ca61
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d00c
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x596844
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x1f
call fcn.0042f410
test al, al
jne 0x44ca9f
push 0
push 0x596844
lea ecx, [ebp - 0x14]
call fcn.0042f740
mov byte [ebp - 4], 0x20
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d016
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x596844
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x21
call fcn.0042f410
test al, al
jne 0x44cae1
push 0
push 0x596844
lea ecx, [ebp - 0x18]
call fcn.0042f740
push ecx
mov byte [ebp - 4], 0x22
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x10], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [edi], eax
call fcn.00445630
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x10], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0x24
jmp 0x44c9b5
mov edi, dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea eax, [ebp - 0x258]
push eax
call edi
mov edx, dword [ebp - 0x24]
lea ecx, [ebp - 0x258]
push dword [edx]
call fcn.0045a5a0
mov ebx, dword [sym.imp.SHLWAPI.dll_PathRenameExtensionW]
lea eax, [ebp - 0x258]
push str..lnk
push eax
call ebx
lea eax, [ebp - 0x460]
push eax
call edi
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x460]
push dword [eax]
call fcn.0045a5a0
mov edi, eax
lea eax, [ebp - 0x460]
push str..lnk
push eax
call ebx
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov edx, dword [ecx]
push dword [eax]
push ecx
call dword [edx + 0x50]
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x24]
mov ecx, dword [eax]
push dword [edx]
push eax
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x38]
push 0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x44]
mov ecx, dword [ebp + 8]
push dword [ecx]
push eax
call edx
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x28]
push edx
push 0x586920
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
js 0x44cc02
mov ecx, dword [ebp - 0x28]
lea edx, [ebp - 0x258]
push 1
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x18]
mov ecx, dword [ebp - 0x28]
lea edx, [ebp - 0x460]
push 1
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x18]
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov byte [ebp - 0x1d], 0
or ebx, 0xffffffff
jmp 0x44cece
mov ecx, dword [ebp + 0xc]
push ecx
push edi
push ecx
mov edi, esp
mov dword [ebp - 0x10], edi
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0x26
push dword [eax]
lea eax, [ebp - 0x30]
push eax
call fcn.00421ac0
mov byte [ebp - 4], 0x15
add esp, 0x10
mov edx, dword [ebp - 0x10]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cc59
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d020
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x596844
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x27
call fcn.0042f410
test al, al
jne 0x44cc97
push 0
push 0x596844
lea ecx, [ebp - 0x14]
call fcn.0042f740
mov byte [ebp - 4], 0x28
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d02a
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x596844
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x29
call fcn.0042f410
test al, al
jne 0x44ccd9
push 0
push 0x596844
lea ecx, [ebp - 0x18]
call fcn.0042f740
push ecx
mov byte [ebp - 4], 0x2a
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x24], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00445630
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x2b
mov dword [ebp - 0x24], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00445630
add esp, 4
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x2c
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x30]
jmp 0x44ce52
mov ecx, dword [ebp + 0xc]
push ecx
push eax
push ecx
mov edi, esp
mov dword [ebp - 0x10], edi
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00445630
add esp, 4
mov byte [ebp - 4], 0x2e
push dword [eax]
lea eax, [ebp - 0x40]
push eax
call fcn.00421ac0
mov byte [ebp - 4], 0x15
add esp, 0x10
mov edx, dword [ebp - 0x10]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cd83
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d034
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x596844
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x2f
call fcn.0042f410
test al, al
jne 0x44cdc1
push 0
push 0x596844
lea ecx, [ebp - 0x14]
call fcn.0042f740
mov byte [ebp - 4], 0x30
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x44d03e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x596844
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x31
call fcn.0042f410
test al, al
jne 0x44ce03
push 0
push 0x596844
lea ecx, [ebp - 0x18]
call fcn.0042f740
push ecx
mov byte [ebp - 4], 0x32
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x28], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00445630
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x33
mov dword [ebp - 0x28], edi
call fcn.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00445630
add esp, 4
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x34
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x40]
push ecx
mov edx, ebx
mov ecx, eax
call fcn.0045b100
mov edx, dword [ebp - 0x10]
or ebx, 0xffffffff
mov eax, ebx
add edx, 0xfffffff0
add esp, 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44ce7c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44ce96
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x18]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44ceb0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44ceca
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 0x1d], 1
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x44cedf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x40]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cef9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x30]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cf13
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cf2d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x3c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cf47
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x44cf5e
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x44]
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44cf75
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x34]
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x44cf8a
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp - 0x1d]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
push 0x80004005
call fcn.0042f720
int3