Function at 0x41fd90
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x3c
mov esi, ecx
mov eax, dword [0x540010]
xor eax, ebp
mov dword [ebp - 0x10], eax
lea ebx, [ebp - 0x1c]
push dword [ebp + 0xc]
push dword [ebp + 8]
push ebx
call fcn.0043d9e0
add esp, 0xc
mov dword [ebp - 0x44], esi
lea edi, [esi + 0x130]
mov ecx, edi
call fcn.0041bcb0
cmp edi, ebx
je 0x4201b9
cmp dword [ebp - 0x14], 0
je 0x41fe0d
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax + 4]
mov esi, dword [ecx]
mov dword [esi + 4], edx
mov esi, dword [ecx]
mov dword [edx], esi
mov esi, dword [ebp - 0x44]
mov edx, dword [esi + 0x130]
mov dword [edx + 4], ecx
mov edx, dword [esi + 0x130]
mov dword [ecx], edx
mov dword [esi + 0x130], eax
mov dword [eax + 4], edi
mov eax, dword [ebp - 0x14]
add dword [esi + 0x138], eax
push 0x5330eb
call fcn.004fb1c0
add esp, 4
cmp eax, 0x7ffffff8
jae 0x4201c0
mov ebx, eax
lea eax, [ebp - 0x28]
cmp ebx, 0xa
jbe 0x41feec
mov esi, ebx
or esi, 7
inc esi
push esi
call fcn.004dfb05
add esp, 4
mov dword [ebp - 0x28], eax
or esi, 0x80000000
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], ebx
jmp 0x41feef
lea esi, [ebp - 0x15]
mov byte [esi + 4], 7
cmp ebx, 0x522ca8
ja 0x41fe71
cmp esi, 0x522ca8
ja 0x4201aa
mov dword [ebp - 0x19], 0x6e776f6e
mov dword [ebp - 0x1c], 0x6e6b6e75
mov byte [ebp - 0x15], 0
mov ecx, edi
push ebx
push 0
call fcn.0049c220
cmp byte [ebp - 0x11], 0
jns 0x41fe9e
push dword [ebp - 0x1c]
call fcn.004dfb35
add esp, 4
mov byte [ebp - 0x11], 7
cmp ebx, 0x522ca8
ja 0x41feb6
cmp esi, 0x522ca8
ja 0x4201aa
mov dword [ebp - 0x19], 0x6e776f6e
mov dword [ebp - 0x1c], 0x6e6b6e75
mov byte [ebp - 0x15], 0
mov ecx, edi
push ebx
push 1
call fcn.0049c220
cmp byte [ebp - 0x11], 0
jns 0x41ff8c
push dword [ebp - 0x1c]
call fcn.004dfb35
add esp, 4
jmp 0x41ff8c
mov byte [ebp - 0x1d], bl
lea esi, [eax + ebx]
cmp eax, 0x5330eb
ja 0x41ff05
cmp esi, 0x5330eb
ja 0x4201aa
mov ecx, dword [ebp - 0x44]
add ecx, 0x60
mov dword [ebp - 0x48], ecx
test ebx, ebx
je 0x41ff21
push ebx
push 0x5330eb
push eax
call fcn.004e3510
add esp, 0xc
mov byte [esi], 0
lea eax, [ebp - 0x28]
push eax
push edi
lea ebx, [ebp - 0x1c]
push ebx
call fcn.0043de00
add esp, 0xc
mov edi, dword [ebp - 0x48]
mov ecx, edi
push ebx
push 0xb
call fcn.0049c220
cmp byte [ebp - 0x11], 0
jns 0x41ff53
push dword [ebp - 0x1c]
call fcn.004dfb35
add esp, 4
cmp byte [ebp - 0x1d], 0
mov esi, dword [ebp + 8]
jns 0x41ff67
push dword [ebp - 0x28]
call fcn.004dfb35
add esp, 4
test esi, esi
je 0x41fe56
lea eax, [esi + 0x4c]
mov ecx, edi
push eax
push 0
call fcn.0049c220
add esi, 0xb0
mov ecx, edi
push esi
push 1
call fcn.0049c220
cmp dword [ebp + 0xc], 0
je 0x420130
xor eax, eax
mov dword [ebp - 0x14], eax
xorps xmm0, xmm0
movsd qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x20], eax
movsd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x2c], eax
movsd qword [ebp - 0x34], xmm0
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax + 0x6c]
lea esi, [ebp - 0x40]
mov byte [esi + 0xb], 7
cmp esi, str.banerid
ja 0x41ffd6
lea eax, [ebp - 0x39]
cmp eax, str.banerid
ja 0x4201aa
mov dword [ebp - 0x3d], 0x64697265
mov dword [ebp - 0x40], 0x656e6162
mov byte [ebp - 0x39], 0
push ebx
push esi
call fcn.0041d940
mov ebx, eax
cmp byte [ebp - 0x35], 0
jns 0x420002
push dword [ebp - 0x40]
call fcn.004dfb35
add esp, 4
test bl, bl
lea eax, [ebp - 0x1c]
je 0x420013
mov ecx, edi
push eax
push 2
call fcn.0049c220
mov eax, dword [ebp - 0x44]
mov edi, dword [eax + 0x6c]
push 0x10
call fcn.004dfb05
add esp, 4
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], 0x80000010
mov dword [ebp - 0x3c], 0xf
cmp eax, str.distr_yandexuid
ja 0x42004a
lea ecx, [eax + 0xf]
cmp ecx, str.distr_yandexuid
ja 0x4201aa
mov dword [eax + 0xb], 0x64697578
mov dword [eax + 8], 0x7865646e
mov dword [eax + 4], 0x61795f72
mov dword [eax], 0x74736964
mov byte [eax + 0xf], 0
mov ecx, edi
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.0041d940
mov ebx, eax
cmp byte [ebp - 0x35], 0
jns 0x420088
push dword [ebp - 0x40]
call fcn.004dfb35
add esp, 4
test bl, bl
mov ecx, dword [ebp - 0x48]
je 0x42009a
lea eax, [ebp - 0x28]
push eax
push 4
call fcn.0049c220
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax + 0x6c]
mov byte [ebp - 0x35], 9
cmp esi, str.yandexuid
ja 0x4200ba
lea eax, [ebp - 0x37]
cmp eax, str.yandexuid
ja 0x4201aa
mov dword [ebp - 0x3c], 0x69757865
mov dword [ebp - 0x40], 0x646e6179
mov word [ebp - 0x38], 0x64
lea edi, [ebp - 0x34]
push edi
push esi
call fcn.0041d940
mov ebx, eax
cmp byte [ebp - 0x35], 0
jns 0x4200eb
push dword [ebp - 0x40]
call fcn.004dfb35
add esp, 4
test bl, bl
je 0x4200fa
mov ecx, dword [ebp - 0x48]
push edi
push 3
call fcn.0049c220
cmp byte [ebp - 0x29], 0
lea ebx, [ebp - 0x1c]
jns 0x42010e
push dword [ebp - 0x34]
call fcn.004dfb35
add esp, 4
cmp byte [ebp - 0x1d], 0
jns 0x42011f
push dword [ebp - 0x28]
call fcn.004dfb35
add esp, 4
cmp byte [ebp - 0x11], 0
jns 0x420130
push dword [ebp - 0x1c]
call fcn.004dfb35
add esp, 4
sub esp, 0x10
movaps xmm0, xmmword [0x522980]
movups xmmword [esp], xmm0
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventW]
call esi
mov edi, dword [ebp - 0x44]
mov dword [edi + 0xc4], eax
sub esp, 0x10
movaps xmm0, xmmword [0x522980]
movups xmmword [esp], xmm0
call esi
mov dword [edi + 0xc8], eax
push ebx
call fcn.0050feb0
add esp, 4
lea esi, [edi + 0x100]
cmp byte [edi + 0x10b], 0
jns 0x420187
push dword [esi]
call fcn.004dfb35
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esi + 8], eax
movsd xmm0, qword [ebp - 0x1c]
movsd qword [esi], xmm0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004e0685
add esp, 0x3c
pop esi
pop edi
pop ebx
pop ebp
ret 8
push str....._third_partylibc_srcinclude__stringchar_traits.h:245:_assertion__std::__is_pointer_in_range___s1____s1____n____s2__failed:_char_traits::copy:_source_and_destination_ranges_overlap_n
push 0x521354
call fcn.0044d640
push str....._third_partylibc_srcincludelist:1455:_assertion_this___std::addressof___c__failed:_list::splice_iterator__list__called_with_this__list_n
jmp 0x4201af
lea ecx, [ebp - 0x28]
call fcn.004147a0
int3