Function at 0x45aa60
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4d8200
mov eax, dword fs:[0]
push eax
sub esp, 0x17c
mov eax, dword [0x527534]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 0x134], ebx
push 0x4e1910
lea ecx, [ebp - 0x15c]
mov dword [ebp - 0x15c], 0x4ee16c
lea eax, [ebx + 0x28]
push ecx
push eax
mov dword [ebp - 0x158], eax
call fcn.00452af0
add esp, 0xc
mov eax, dword [ebx + 0x40]
add ebx, 0x40
mov dword [ebp - 4], 0
mov ecx, ebx
mov byte [ebp - 4], 1
call dword [eax + 8]
push 0
mov edi, eax
call fcn.004b9aa7
mov esi, dword [ebp + 0xc]
add esp, 4
mov dword [ebp - 0x110], eax
cmp esi, 9
ja 0x45b51f
movzx eax, byte [esi + 0x45b464]
jmp dword [eax*4 + 0x45b458]
mov eax, dword [ebp + 0x10]
cmp eax, 1
jne 0x45ba5e
mov ebx, dword [ebp - 0x134]
mov ecx, ebx
push 0
call fcn.0045eef0
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45bffd
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x130], eax
push 0x4ee58c
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x41
call fcn.004029a0
test al, al
jne 0x45b581
push 0xa
push 0x4ee58c
lea ecx, [ebp - 0x130]
call fcn.00404580
mov byte [ebp - 4], 0x42
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c007
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x120], eax
push 0x4ee5a4
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x43
call fcn.004029a0
test al, al
jne 0x45b5cc
push 0x16
push 0x4ee5a4
lea ecx, [ebp - 0x120]
call fcn.00404580
mov byte [ebp - 4], 0x44
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c011
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x124], eax
push 0x4ee5d4
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x45
call fcn.004029a0
test al, al
jne 0x45b617
push 9
push 0x4ee5d4
lea ecx, [ebp - 0x124]
call fcn.00404580
mov byte [ebp - 4], 0x46
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c01b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x128], eax
push 0x4ee5e8
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x47
call fcn.004029a0
test al, al
jne 0x45b662
push 0x18
push 0x4ee5e8
lea ecx, [ebp - 0x128]
call fcn.00404580
mov byte [ebp - 4], 0x48
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c025
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x12c], eax
push str.CheckForNotifications
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0x49
call fcn.004029a0
test al, al
jne 0x45b6ad
push 0xc
push str.CheckForNotifications
lea ecx, [ebp - 0x12c]
call fcn.00404580
mov byte [ebp - 4], 0x4a
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c02f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x118], eax
push 0x4ee638
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x4b
call fcn.004029a0
test al, al
jne 0x45b6f8
push 0x17
push 0x4ee638
lea ecx, [ebp - 0x118]
call fcn.00404580
mov byte [ebp - 4], 0x4c
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c039
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x114], eax
push 0x4ee668
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x4d
call fcn.004029a0
test al, al
jne 0x45b743
push 0x38
push 0x4ee668
lea ecx, [ebp - 0x114]
call fcn.00404580
mov byte [ebp - 4], 0x4e
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c043
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10c], eax
push 0x4ee6dc
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x4f
call fcn.004029a0
test al, al
jne 0x45b78e
push 0x1a
push 0x4ee6dc
lea ecx, [ebp - 0x10c]
call fcn.00404580
mov byte [ebp - 4], 0x50
call fcn.00403070
mov ecx, eax
test ecx, ecx
je 0x45c04d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x110], eax
push 0
push 0
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x51
call fcn.00404580
push 0x4ee714
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x52
call fcn.004049f0
push ecx
mov eax, esp
mov dword [ebp - 0x154], esp
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x53
push ecx
lea ecx, [ebp - 0x120]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov dword [ebp - 0x150], esp
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x54
push ecx
lea ecx, [ebp - 0x128]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov dword [ebp - 0x14c], esp
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0x55
push ecx
lea ecx, [ebp - 0x118]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov ecx, esp
mov dword [ebp - 0x148], esp
push 0
mov byte [ebp - 4], 0x56
call fcn.004049f0
push ecx
mov eax, esp
mov dword [ebp - 0x144], esp
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x57
push ecx
lea ecx, [ebp - 0x10c]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x110]
push ecx
lea ecx, [ebp - 0x11c]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push 0
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x53
call fcn.00464f10
mov edx, dword [ebp - 0x11c]
or esi, 0xffffffff
mov byte [ebp - 4], 0x5a
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b8c8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x110]
mov eax, esi
mov byte [ebp - 4], 0x5b
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b8e9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x10c]
mov eax, esi
mov byte [ebp - 4], 0x5c
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b90a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x114]
mov eax, esi
mov byte [ebp - 4], 0x5d
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b92b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x118]
mov eax, esi
mov byte [ebp - 4], 0x5e
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b94c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x12c]
mov eax, esi
mov byte [ebp - 4], 0x5f
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b96d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x128]
mov eax, esi
mov byte [ebp - 4], 0x60
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b98e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x124]
mov eax, esi
mov byte [ebp - 4], 0x61
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b9af
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x120]
mov eax, esi
mov byte [ebp - 4], 0x62
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45b9d0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x130]
mov byte [ebp - 4], 0x63
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x45b9ef
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
call dword [0x4df63c]
push eax
lea ecx, [ebp - 0x108]
call fcn.00456ed0
cmp eax, 2
jne 0x45ba0f
mov ecx, ebx
call fcn.00456690
lea ecx, [ebp - 0x108]
call fcn.004651a0
push 0x4e1978
lea eax, [ebp - 0x15c]
mov dword [ebp - 4], 0x95
push eax
push dword [ebp - 0x158]
call fcn.00452af0
add esp, 0xc
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004afed2
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 2
jne 0x45bd00
mov ebx, dword [ebp - 0x134]
mov ecx, ebx
push 1
call fcn.0045eef0
push 0x4ee748
lea ecx, [ebp - 0x120]
call fcn.004049f0
push 0x4ee760
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x64
call fcn.004049f0
push 0x4ee790
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x65
call fcn.004049f0
push 0x4ee7a4
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0x66
call fcn.004049f0
push 0x4ee7d8
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x67
call fcn.004049f0
push 0x4ee84c
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x68
call fcn.004049f0
push 0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x69
call fcn.004049f0
push 0x4ee884
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x6a
call fcn.004049f0
push ecx
mov eax, esp
mov dword [ebp - 0x154], esp
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x6b
push ecx
lea ecx, [ebp - 0x124]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov dword [ebp - 0x150], esp
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x6c
push ecx
lea ecx, [ebp - 0x12c]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov ecx, esp
mov dword [ebp - 0x14c], esp
push 0
mov byte [ebp - 4], 0x6d
call fcn.004049f0
push ecx
mov ecx, esp
mov dword [ebp - 0x148], esp
push 0
mov byte [ebp - 4], 0x6e
call fcn.004049f0
push ecx
mov eax, esp
mov dword [ebp - 0x144], esp
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x6f
push ecx
lea ecx, [ebp - 0x114]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x70
lea ecx, [ebp - 0x10c]
push ecx
lea ecx, [ebp - 0x110]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push 0
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x6b
call fcn.00464f10
mov edx, dword [ebp - 0x110]
or esi, 0xffffffff
mov byte [ebp - 4], 0x72
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bbf2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x10c]
mov eax, esi
mov byte [ebp - 4], 0x73
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bc13
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x114]
mov eax, esi
mov byte [ebp - 4], 0x74
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bc34
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x118]
mov eax, esi
mov byte [ebp - 4], 0x75
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bc55
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x12c]
mov eax, esi
mov byte [ebp - 4], 0x76
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bc76
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x128]
mov eax, esi
mov byte [ebp - 4], 0x77
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bc97
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x124]
mov eax, esi
mov byte [ebp - 4], 0x78
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45bcb8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x120]
mov byte [ebp - 4], 0x79
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x45bcd7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
call dword [0x4df63c]
push eax
lea ecx, [ebp - 0x108]
call fcn.00456ed0
cmp eax, 2
jne 0x45ba0f
mov ecx, ebx
call fcn.0045eaf0
jmp 0x45ba0f
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov ecx, eax
call fcn.0040e510
mov esi, dword [ebp - 0x110]
test eax, eax
jne 0x45bd27
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
push esi
mov ecx, eax
call fcn.004118b0
mov eax, esi
sub esi, eax
cmp esi, 0x93a80
jbe 0x45bf59
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
push 0
mov ecx, eax
call fcn.004118b0
mov ebx, dword [ebp - 0x134]
mov ecx, ebx
push 0
call fcn.0045eef0
push 0x4ee8b8
lea ecx, [ebp - 0x11c]
call fcn.004049f0
push 0x4ee8d0
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x7a
call fcn.004049f0
push 0x4ee900
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x7b
call fcn.004049f0
push 0x4ee914
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x7c
call fcn.004049f0
push 0x4ee948
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x7d
call fcn.004049f0
push 0x4ee964
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0x7e
call fcn.004049f0
push str.This_option_allows_you_to_transfer_your_license_for_use_on_a_different_computer_that_you_own._Press_Yes_if_you_want_to_transfer_your_license._Press_No_if_you_want_to_keep_YTD_Video_Downloader_on_this_computer.
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x7f
call fcn.004049f0
push 0x4eea3c
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x80
call fcn.004049f0
push 0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x81
call fcn.004049f0
push 0x4ee994
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x82
call fcn.004049f0
push ecx
mov eax, esp
mov dword [ebp - 0x154], esp
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x83
push ecx
lea ecx, [ebp - 0x130]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov dword [ebp - 0x150], esp
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x84
push ecx
lea ecx, [ebp - 0x124]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov dword [ebp - 0x14c], esp
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x85
push ecx
lea ecx, [ebp - 0x12c]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov ecx, esp
mov dword [ebp - 0x148], esp
push 0
mov byte [ebp - 4], 0x86
call fcn.004049f0
push ecx
mov eax, esp
mov dword [ebp - 0x144], esp
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x87
push ecx
lea ecx, [ebp - 0x114]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x88
lea ecx, [ebp - 0x10c]
push ecx
lea ecx, [ebp - 0x110]
push ecx
push eax
mov ecx, edi
call fcn.0044f2b0
push 0
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x83
call fcn.00464f10
lea ecx, [ebp - 0x110]
call fcn.00402340
lea ecx, [ebp - 0x10c]
call fcn.00402340
lea ecx, [ebp - 0x114]
call fcn.00402340
lea ecx, [ebp - 0x118]
call fcn.00402340
lea ecx, [ebp - 0x12c]
call fcn.00402340
lea ecx, [ebp - 0x128]
call fcn.00402340
lea ecx, [ebp - 0x124]
call fcn.00402340
lea ecx, [ebp - 0x120]
call fcn.00402340
lea ecx, [ebp - 0x130]
call fcn.00402340
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x93
call fcn.00402340
jmp 0x45b9ef
mov ecx, dword [ebp - 0x134]
push 1
call fcn.0045eef0
jmp 0x45ba1a
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
push 0x80004005
call fcn.00402980
nop
add ebx, dword [edi - 0x5ee5ffbb]
inc ebp
add byte [edi], bl
test eax, 0x1000045
add dword [edx], eax
add al, byte [ecx]
add dword [edx], eax
add al, byte [ecx]
int3