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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57737d
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.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b656
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x4c], eax
push str.bnBtYnNhcg
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0
call fcn.0042cad0
test al, al
jne 0x44abc8
push 0xc
push str.bnBtYnNhcg
lea ecx, [ebp - 0x4c]
call fcn.0042cdf0
mov dword [ebp - 4], 1
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b660
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x48], eax
push str.YXBjX3JjXXFmbXByYXNy
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 2
call fcn.0042cad0
test al, al
jne 0x44ac0d
push 0x14
push str.YXBjX3JjXXFmbXByYXNy
lea ecx, [ebp - 0x48]
call fcn.0042cdf0
mov byte [ebp - 4], 3
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b66a
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x50], eax
push str.cWZtcHJhc3JdY3BwbXA
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.0042cad0
test al, al
jne 0x44ac4f
push 0x14
push str.cWZtcHJhc3JdY3BwbXA
lea ecx, [ebp - 0x50]
call fcn.0042cdf0
mov byte [ebp - 4], 5
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b674
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x3c], eax
push str.bWdiOyNqcw
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 6
call fcn.0042cad0
test al, al
jne 0x44ac91
push 0xc
push str.bWdiOyNqcw
lea ecx, [ebp - 0x3c]
call fcn.0042cdf0
mov byte [ebp - 4], 7
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b67e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x2c], eax
push str.UUZFY3JEbWpiY3BOX3JmXWNwcG1wXWFtYmM7I1YkbWdiOyNqcw
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
call fcn.0042cad0
test al, al
jne 0x44acd3
push 0x34
push str.UUZFY3JEbWpiY3BOX3JmXWNwcG1wXWFtYmM7I1YkbWdiOyNqcw
lea ecx, [ebp - 0x2c]
call fcn.0042cdf0
mov byte [ebp - 4], 9
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b688
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x30], eax
push str.T3NjcHdHbHJjcGRfYWNdY3BwbXBdYW1iYzsjViRtZ2I7I2pz
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xa
call fcn.0042cad0
test al, al
jne 0x44ad15
push 0x30
push str.T3NjcHdHbHJjcGRfYWNdY3BwbXBdYW1iYzsjViRtZ2I7I2pz
lea ecx, [ebp - 0x30]
call fcn.0042cdf0
mov byte [ebp - 4], 0xb
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b692
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x40], eax
push str.QW1BcGNfcmNHbHFyX2xhY11jcHBtcF1hbWJjOyNWJG1nYjsjanM
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xc
call fcn.0042cad0
test al, al
jne 0x44ad57
push 0x34
push str.QW1BcGNfcmNHbHFyX2xhY11jcHBtcF1hbWJjOyNWJG1nYjsjanM
lea ecx, [ebp - 0x40]
call fcn.0042cdf0
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x28]
mov dword [esi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0xe
push dword [eax]
lea eax, [ebp - 0x3c]
push eax
call fcn.0041f420
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 0x44adb2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b69c
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x58c2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xf
call fcn.0042cad0
test al, al
jne 0x44adf0
push 0
push 0x58c2f0
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
mov byte [ebp - 4], 0x10
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6a6
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x58c2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x11
call fcn.0042cad0
test al, al
jne 0x44ae32
push 0
push 0x58c2f0
lea ecx, [ebp - 0x14]
call fcn.0042cdf0
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [esi], eax
call fcn.00442cb0
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x28]
mov dword [esi], eax
call fcn.00442cb0
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.004538a0
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 0x44aeb8
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 0x44aed2
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 0x44aeec
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xd
mov eax, ebx
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44af0a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0
push eax
push 0x57f920
push 0x17
push 0
push 0x57f930
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, dword [ebp - 0x50]
test eax, eax
js 0x44b3f6
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 0x44b0b2
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0x15
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.0041f420
mov byte [ebp - 4], 0xd
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 0x44afb1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6b0
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x58c2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x16
call fcn.0042cad0
test al, al
jne 0x44afef
push 0
push 0x58c2f0
lea ecx, [ebp - 0x14]
call fcn.0042cdf0
mov byte [ebp - 4], 0x17
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6ba
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x58c2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x18
call fcn.0042cad0
test al, al
jne 0x44b031
push 0
push 0x58c2f0
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
push ecx
mov byte [ebp - 4], 0x19
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x10], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [edi], eax
call fcn.00442cb0
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x10], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0x1b
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.004538a0
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 0x44b0aa
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
jmp 0x44b548
lea eax, [ebp - 0x460]
push eax
push 0
push 0
push 2
push 0
call edi
test eax, eax
jns 0x44b1ea
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0x1c
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.0041f420
mov byte [ebp - 4], 0xd
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 0x44b121
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6c4
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x58c2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x1d
call fcn.0042cad0
test al, al
jne 0x44b15f
push 0
push 0x58c2f0
lea ecx, [ebp - 0x14]
call fcn.0042cdf0
mov byte [ebp - 4], 0x1e
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6ce
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x58c2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x1f
call fcn.0042cad0
test al, al
jne 0x44b1a1
push 0
push 0x58c2f0
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
push ecx
mov byte [ebp - 4], 0x20
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x10], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [edi], eax
call fcn.00442cb0
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x10], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0x22
jmp 0x44b075
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.00452e30
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.00452e30
mov edi, eax
lea eax, [ebp - 0x460]
push str..lnk
push eax
call ebx
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov ecx, dword [edx]
push dword [eax]
push edx
call dword [ecx + 0x50]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x24]
mov eax, dword [ecx]
push dword [edx]
push ecx
call dword [eax + 0x1c]
mov edx, dword [ebp - 0x38]
push 0
mov eax, dword [edx]
mov ecx, dword [eax + 0x44]
mov eax, dword [ebp + 8]
push dword [eax]
push edx
call ecx
mov ecx, dword [ebp - 0x38]
lea edx, [ebp - 0x28]
push edx
push 0x57f980
push ecx
mov eax, dword [ecx]
call dword [eax]
test eax, eax
js 0x44b2cb
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x258]
push 1
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x460]
push 1
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov byte [ebp - 0x1d], 0
or ebx, 0xffffffff
jmp 0x44b597
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0x23
push dword [eax]
lea eax, [ebp - 0x30]
push eax
call fcn.0041f420
mov byte [ebp - 4], 0xd
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 0x44b322
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6d8
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x58c2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x24
call fcn.0042cad0
test al, al
jne 0x44b360
push 0
push 0x58c2f0
lea ecx, [ebp - 0x14]
call fcn.0042cdf0
mov byte [ebp - 4], 0x25
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6e2
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x58c2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x26
call fcn.0042cad0
test al, al
jne 0x44b3a2
push 0
push 0x58c2f0
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
push ecx
mov byte [ebp - 4], 0x27
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x24], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00442cb0
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x28
mov dword [ebp - 0x24], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x29
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x30]
jmp 0x44b51b
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.0042c200
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
mov byte [ebp - 4], 0x2a
push dword [eax]
lea eax, [ebp - 0x40]
push eax
call fcn.0041f420
mov byte [ebp - 4], 0xd
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 0x44b44c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6ec
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push 0x58c2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x2b
call fcn.0042cad0
test al, al
jne 0x44b48a
push 0
push 0x58c2f0
lea ecx, [ebp - 0x14]
call fcn.0042cdf0
mov byte [ebp - 4], 0x2c
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x44b6f6
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x58c2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x2d
call fcn.0042cad0
test al, al
jne 0x44b4cc
push 0
push 0x58c2f0
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
push ecx
mov byte [ebp - 4], 0x2e
lea ecx, [esi - 0x10]
mov edi, esp
mov dword [ebp - 0x28], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [edi], eax
call fcn.00442cb0
mov ebx, eax
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0x28], edi
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x10]
mov dword [edi], eax
call fcn.00442cb0
add esp, 4
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x30
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x40]
push ecx
mov edx, ebx
mov ecx, eax
call fcn.004538a0
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 0x44b545
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 0x44b55f
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 0x44b579
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 0x44b593
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 0x1d], 1
mov edx, dword [ebp - 0x40]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44b5b1
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 0x44b5cb
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 0x44b5e5
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 0x44b5ff
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 0x44b616
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 0x44b62d
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 0x44b642
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.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
int3