Function at 0x4dbd80
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc8
mov edi, ecx
lea eax, [ecx + 0xc]
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov dword [ecx + 8], 4
xorps xmm0, xmm0
mov eax, dword [sym.imp.libLLVM_17.dll_vtable_for_llvm::raw_string_ostream]
add eax, 8
mov dword [esp + 0x9c], eax
mov ebx, dword [ebp + 0xc]
lea esi, [esp + 0xa0]
mov dword [esp + 4], ecx
jmp 0x4dbdea
mov eax, dword [esp + 0x78]
cmp dword [esp + 0x74], eax
mov eax, 0
sbb eax, dword [esp + 0x7c]
xorps xmm0, xmm0
jb 0x4dceaa
cmp ebx, 8
jb 0x4dceaa
lea eax, [ebp + 8]
mov edx, dword [eax]
mov ecx, esi
mov esi, dword [edx]
mov dword [esp + 0x70], esi
mov esi, dword [edx + 4]
add ebx, 0xfffffff8
add edx, 8
mov dword [eax + 4], ebx
mov dword [esp + 0x6c], edx
mov dword [eax], edx
xor eax, eax
mov dword [esp + 0x3c], esi
add esi, 7
setb al
mov dword [esp + 0x7c], eax
and esi, 0xfffffff8
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x88], 0
movups xmmword [esp + 0xa4], xmm0
mov byte [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 1
mov edi, dword [esp + 0x9c]
mov dword [esp + 0xa0], edi
lea eax, [esp + 0x80]
mov dword [esp + 0xc0], eax
push 0
push 0
push 0
call fcn.005507ce
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], esi
cmp ebx, esi
mov eax, 0
sbb eax, dword [esp + 0x7c]
jae 0x4dbf40
mov dword [esp + 0x44], str._corrupt_type__0x_x__datasz:_0x_x_
mov dword [esp + 0x40], 0x55c9a8
mov eax, dword [esp + 0x70]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x4c], eax
lea esi, [esp + 0xa0]
mov ecx, esi
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
mov edi, dword [esp + 4]
mov ecx, edi
push 1
push dword [esp + 0xc4]
call fcn.0045bfc0
mov ecx, dword [edi + 4]
lea ebx, [ecx + ecx*2]
shl ebx, 2
add ebx, dword [edi]
test byte [eax], 1
jne 0x4dc020
mov ecx, dword [eax + 8]
mov dword [ebx + 8], ecx
movsd xmm0, qword [eax]
movsd qword [ebx], xmm0
inc dword [edi + 4]
mov ebx, dword [esp + 0x74]
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x80], 1
je 0x4dbdd0
jmp 0x4dce96
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x98], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x1c], xmm0
mov byte [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 1
mov dword [esp + 0x18], edi
lea eax, [esp + 0x90]
mov dword [esp + 0x38], eax
lea ecx, [esp + 0x18]
push 0
push 0
push 0
call fcn.005507ce
mov esi, dword [esp + 0x70]
cmp esi, 0xc0010000
jg 0x4dc040
cmp esi, 0xc0008000
jg 0x4dc061
cmp esi, 0xc0000000
je 0x4dbfcc
cmp esi, 0xc0000002
jne 0x4dc2a0
xor ecx, ecx
cmp esi, 0xc0000000
sete cl
mov eax, str.x86_feature:
mov edx, str.aarch64_feature:
cmove eax, edx
lea ebx, [ecx*4 + 0xd]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
sub edx, ecx
cmp ebx, edx
jbe 0x4dc16e
lea ecx, [esp + 0x18]
push ebx
push eax
call fcn.005507d4
mov eax, dword [esp + 0x3c]
cmp eax, 4
je 0x4dc18a
jmp 0x4dc39a
mov ecx, dword [eax + 4]
mov esi, dword [eax + 8]
cmp ecx, 0xa
ja 0x4dc0a9
mov eax, ecx
add al, cl
mov byte [ebx], al
inc ebx
jmp 0x4dc0dc
test esi, esi
jg 0x4dc0f4
cmp esi, 0xc0010001
je 0x4dc13e
cmp esi, 0xc0010002
je 0x4dc079
jmp 0x4dc2a0
cmp esi, 0xc0008001
je 0x4dc13e
cmp esi, 0xc0008002
jne 0x4dc2a0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 7
ja 0x4dc1e2
lea ecx, [esp + 0x18]
push 8
push str.x86_ISA
call fcn.005507d4
mov ecx, dword [eax + 0x10]
mov edi, eax
add edi, 0x10
jmp 0x4dc202
cmp ecx, 0xfffffff0
jae 0x4dcf41
mov edi, ecx
or edi, 0xf
lea eax, [edi + 1]
push eax
mov dword [esp + 0x74], ecx
call sub.libc.dll_operator_new_unsigned_int_
mov ecx, dword [esp + 0x74]
add esp, 4
mov dword [ebx + 8], eax
add edi, 2
mov dword [ebx], edi
mov dword [ebx + 4], ecx
mov ebx, eax
mov edi, dword [esp + 4]
inc ecx
push ecx
push esi
push ebx
call sub.msvcrt.dll_memmove
add esp, 0xc
inc dword [edi + 4]
mov ebx, dword [esp + 0x74]
jmp 0x4dce7a
cmp esi, 1
je 0x4dc249
cmp esi, 2
jne 0x4dc2a0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 0x13
ja 0x4dc475
lea ecx, [esp + 0x18]
push 0x14
push str.no_copy_on_protected
call fcn.005507d4
mov eax, dword [esp + 0x3c]
test eax, eax
mov edi, dword [esp + 4]
jne 0x4dc49b
jmp 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 0xb
ja 0x4dc2b9
lea ecx, [esp + 0x18]
push 0xc
push str.x86_feature
call fcn.005507d4
mov ecx, dword [eax + 0x10]
mov edi, eax
add edi, 0x10
jmp 0x4dc2e0
push ebx
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esp + 0x28], ebx
mov eax, dword [esp + 0x3c]
cmp eax, 4
jne 0x4dc39a
mov eax, dword [esp + 0x6c]
mov ebx, dword [eax]
test ebx, ebx
je 0x4dc43b
cmp esi, 0xc0000000
jne 0x4dc532
test bl, 1
mov edi, dword [esp + 4]
je 0x4dc980
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dc946
lea ecx, [esp + 0x18]
push 3
push 0x55ff0c
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x4dc95d
jmp 0x4dcda1
mov dword [eax + 4], 0x20415349
mov dword [eax], 0x20363878
mov ecx, dword [esp + 0x28]
add ecx, 8
mov dword [esp + 0x28], ecx
lea eax, [esp + 0x18]
lea edi, [esp + 0x28]
xor ebx, ebx
cmp esi, 0xc0008002
sete bl
mov edx, str.used:
mov esi, str.needed:
cmove edx, esi
lea esi, [ebx*2 + 6]
mov ebx, dword [eax + 0xc]
sub ebx, ecx
cmp esi, ebx
jbe 0x4dc31c
mov ecx, eax
push esi
push edx
call fcn.005507d4
mov eax, dword [esp + 0x3c]
cmp eax, 4
je 0x4dc332
jmp 0x4dc39a
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 0xb
ja 0x4dc4b4
lea ecx, [esp + 0x18]
push 0xc
push str.stack_size:
call fcn.005507d4
mov eax, dword [esp + 0x3c]
cmp eax, 8
je 0x4dc4da
mov dword [esp + 0x44], str._corrupt_length:_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], eax
lea ecx, [esp + 0x18]
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
jmp 0x4dc529
mov dword [esp + 0x44], str._application_specific_type_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], esi
jmp 0x4dc3ae
mov dword [eax + 8], 0x20657275
mov dword [eax + 4], 0x74616566
mov dword [eax], 0x20363878
mov ecx, dword [esp + 0x28]
add ecx, 0xc
mov dword [esp + 0x28], ecx
lea eax, [esp + 0x18]
lea edi, [esp + 0x28]
xor ebx, ebx
cmp esi, 0xc0008001
sete bl
mov edx, str.used:
mov esi, str.needed:
cmove edx, esi
lea esi, [ebx*2 + 6]
mov ebx, dword [eax + 0xc]
sub ebx, ecx
cmp esi, ebx
jbe 0x4dc35b
mov ecx, eax
push esi
push edx
call fcn.005507d4
mov eax, dword [esp + 0x3c]
cmp eax, 4
je 0x4dc371
jmp 0x4dc39a
push esi
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [edi], esi
mov eax, dword [esp + 0x3c]
cmp eax, 4
jne 0x4dc39a
mov eax, dword [esp + 0x6c]
mov ebx, dword [eax]
test ebx, ebx
je 0x4dc43b
test bl, 1
jne 0x4dc570
mov edi, dword [esp + 4]
test bl, 2
jne 0x4dc673
jmp 0x4dc6de
push esi
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [edi], esi
mov eax, dword [esp + 0x3c]
cmp eax, 4
jne 0x4dc39a
mov eax, dword [esp + 0x6c]
mov ebx, dword [eax]
test ebx, ebx
je 0x4dc43b
test bl, 1
jne 0x4dc59d
mov edi, dword [esp + 4]
test bl, 2
jne 0x4dc76f
jmp 0x4dc7d2
mov dword [esp + 0x44], str._corrupt_length:_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], eax
lea ecx, [esp + 0x18]
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
mov eax, dword [esp + 0x38]
test byte [eax], 1
jne 0x4dc3f6
mov ecx, dword [eax + 8]
mov dword [esp + 0x10], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 8], xmm0
mov edi, dword [esp + 4]
lea ecx, [esp + 0x18]
call fcn.005507e6
test byte [esp + 0x90], 1
jne 0x4dce0a
jmp 0x4dce19
mov ebx, dword [eax + 4]
mov esi, dword [eax + 8]
cmp ebx, 0xa
mov edi, dword [esp + 4]
jbe 0x4dcddf
cmp ebx, 0xfffffff0
jae 0x4dcf48
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x10], eax
add edi, 2
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebx
mov edi, dword [esp + 4]
jmp 0x4dcdeb
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 5
ja 0x4dc45f
lea ecx, [esp + 0x18]
push 6
push str._None_
call fcn.005507d4
jmp 0x4dc529
mov word [eax + 4], 0x3e65
mov dword [eax], 0x6e6f4e3c
add dword [esp + 0x28], 6
jmp 0x4dc529
movups xmm0, xmmword [str.no_copy_on_protected]
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0x64657463
add dword [esp + 0x28], 0x14
mov eax, dword [esp + 0x3c]
test eax, eax
mov edi, dword [esp + 4]
je 0x4dcda1
mov dword [esp + 0x44], str.__corrupt_length:_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], eax
jmp 0x4dcd93
mov dword [eax + 8], 0x203a657a
mov dword [eax + 4], 0x6973206b
mov dword [eax], 0x63617473
add dword [esp + 0x28], 0xc
mov eax, dword [esp + 0x3c]
cmp eax, 8
jne 0x4dc279
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x40], str.0:x
mov dword [esp + 0x44], 5
lea edx, [esp + 0x60]
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], 1
mov dword [esp + 0x50], 0x55ffd4
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x58], eax
lea eax, [esp + 0x50]
mov dword [esp + 0x60], eax
lea ecx, [esp + 0x18]
lea eax, [esp + 0x40]
push eax
call fcn.00550804
mov edi, dword [esp + 4]
jmp 0x4dcda1
test bl, 1
mov edi, dword [esp + 4]
je 0x4dc9f4
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dc9ba
lea ecx, [esp + 0x18]
push 3
push 0x55ff14
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x4dc9d1
jmp 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 0xe
mov edi, dword [esp + 4]
ja 0x4dc5ca
lea ecx, [esp + 0x18]
push 0xf
push str.x86_64_baseline
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x4dc5f3
jmp 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
mov edi, dword [esp + 4]
ja 0x4dc61c
lea ecx, [esp + 0x18]
push 3
push 0x55ff51
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x4dc633
jmp 0x4dcda1
mov dword [eax + 0xb], 0x656e696c
mov dword [eax + 8], 0x6c657361
mov dword [eax + 4], 0x622d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x28], 0xf
and ebx, 0xfffffffe
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dc664
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
jne 0x4dc673
jmp 0x4dc6de
mov byte [eax + 2], 0x36
mov word [eax], 0x3878
add dword [esp + 0x28], 3
and ebx, 0xfffffffe
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dc760
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
jne 0x4dc76f
jmp 0x4dc7d2
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 2
je 0x4dc6de
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 8
ja 0x4dc69c
lea ecx, [esp + 0x18]
push 9
push str.x86_64_v2
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x4dc6bb
jmp 0x4dcda1
mov byte [eax + 8], 0x32
mov dword [eax + 4], 0x762d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x28], 9
and ebx, 0xfffffffd
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dc84c
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 4
je 0x4dc85f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 8
ja 0x4dc710
lea ecx, [esp + 0x18]
push 9
push str.x86_64_v3
call fcn.005507d4
and ebx, 0xfffffffb
jne 0x4dc72f
jmp 0x4dcda1
mov byte [eax + 8], 0x33
mov dword [eax + 4], 0x762d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x28], 9
and ebx, 0xfffffffb
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dca2e
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 8
jne 0x4dc868
jmp 0x4dcd7f
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 2
je 0x4dc7d2
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dc798
lea ecx, [esp + 0x18]
push 3
push 0x55ff55
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x4dc7af
jmp 0x4dcda1
mov byte [eax + 2], 0x37
mov word [eax], 0x3878
add dword [esp + 0x28], 3
and ebx, 0xfffffffd
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dc8b9
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 4
je 0x4dc8cc
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dc804
lea ecx, [esp + 0x18]
push 3
push 0x55ff59
call fcn.005507d4
and ebx, 0xfffffffb
jne 0x4dc81b
jmp 0x4dcda1
mov byte [eax + 2], 0x58
mov word [eax], 0x4d4d
add dword [esp + 0x28], 3
and ebx, 0xfffffffb
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dca46
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 8
jne 0x4dc8d5
jmp 0x4dca59
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 4
jne 0x4dc6e7
test bl, 8
je 0x4dcd7f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 8
ja 0x4dc895
lea ecx, [esp + 0x18]
push 9
push str.x86_64_v4
call fcn.005507d4
and ebx, 0xfffffff7
jne 0x4dcd54
jmp 0x4dcda1
mov byte [eax + 8], 0x34
mov dword [eax + 4], 0x762d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x28], 9
and ebx, 0xfffffff7
jne 0x4dcd54
jmp 0x4dcda1
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 4
jne 0x4dc7db
test bl, 8
je 0x4dca59
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dc8fe
lea ecx, [esp + 0x18]
push 3
push 0x55ff5d
call fcn.005507d4
and ebx, 0xfffffff7
jne 0x4dc915
jmp 0x4dcda1
mov byte [eax + 2], 0x4d
mov word [eax], 0x4d58
add dword [esp + 0x28], 3
and ebx, 0xfffffff7
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcb08
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 0x10
jne 0x4dca62
jmp 0x4dcb1b
mov byte [eax + 2], 0x49
mov word [eax], 0x5442
add dword [esp + 0x28], 3
and ebx, 0xfffffffe
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcb7d
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
je 0x4dcd7f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dcacf
lea ecx, [esp + 0x18]
push 3
push 0x55ff10
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x4dcd54
jmp 0x4dcda1
mov byte [eax + 2], 0x54
mov word [eax], 0x4249
add dword [esp + 0x28], 3
and ebx, 0xfffffffe
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcb95
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
je 0x4dcd7f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 4
ja 0x4dcaeb
lea ecx, [esp + 0x18]
push 5
push str.SHSTK
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x4dcd54
jmp 0x4dcda1
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 8
jne 0x4dc868
jmp 0x4dcd7f
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 8
jne 0x4dc8d5
test bl, 0x10
je 0x4dcb1b
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dca8b
lea ecx, [esp + 0x18]
push 3
push 0x55ff61
call fcn.005507d4
and ebx, 0xffffffef
jne 0x4dcaa2
jmp 0x4dcda1
mov byte [eax + 2], 0x4d
mov word [eax], 0x4d59
add dword [esp + 0x28], 3
and ebx, 0xffffffef
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcbad
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 0x20
jne 0x4dcb24
jmp 0x4dcbcc
mov byte [eax + 2], 0x43
mov word [eax], 0x4150
add dword [esp + 0x28], 3
and ebx, 0xfffffffd
jne 0x4dcd54
jmp 0x4dcda1
mov byte [eax + 4], 0x4b
mov dword [eax], 0x54534853
add dword [esp + 0x28], 5
and ebx, 0xfffffffd
jne 0x4dcd54
jmp 0x4dcda1
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 0x10
jne 0x4dca62
test bl, 0x20
je 0x4dcbcc
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 2
ja 0x4dcb45
lea ecx, [esp + 0x18]
push 3
push 0x55ff65
call fcn.005507d4
jmp 0x4dcb53
mov byte [eax + 2], 0x4d
mov word [eax], 0x4d5a
add dword [esp + 0x28], 3
and ebx, 0xffffffdf
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcbc2
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x4dcbcc
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 2
jne 0x4dc989
jmp 0x4dcd7f
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 2
jne 0x4dc9fd
jmp 0x4dcd7f
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 0x20
jne 0x4dcb24
jmp 0x4dcbcc
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, 0x40
je 0x4dcc25
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 3
ja 0x4dcbf2
lea ecx, [esp + 0x18]
push 4
push str.FXSR
call fcn.005507d4
jmp 0x4dcbfd
mov dword [eax], 0x52535846
add dword [esp + 0x28], 4
and ebx, 0xffffffbf
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcc86
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
test bl, bl
jns 0x4dcca0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 4
ja 0x4dcc4a
lea ecx, [esp + 0x18]
push 5
push str.XSAVE
call fcn.005507d4
jmp 0x4dcc59
mov byte [eax + 4], 0x45
mov dword [eax], 0x56415358
add dword [esp + 0x28], 5
and ebx, 0xffffff7f
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcc96
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x4dcca0
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test bl, bl
js 0x4dcc29
jmp 0x4dcca0
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test ebx, 0x100
je 0x4dcd12
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 7
ja 0x4dccc9
lea ecx, [esp + 0x18]
push 8
push str.XSAVEOPT
call fcn.005507d4
jmp 0x4dccdb
mov dword [eax + 4], 0x54504f45
mov dword [eax], 0x56415358
add dword [esp + 0x28], 8
and ebx, 0xfffffeff
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcd08
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x4dcd12
mov word [eax], 0x202c
add dword [esp + 0x28], 2
test ebx, 0x200
je 0x4dcd7f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 5
ja 0x4dcd3b
lea ecx, [esp + 0x18]
push 6
push str.XSAVEC
call fcn.005507d4
jmp 0x4dcd4c
mov word [eax + 4], 0x4345
mov dword [eax], 0x56415358
add dword [esp + 0x28], 6
and ebx, 0xfffffdff
je 0x4dcda1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
ja 0x4dcd75
lea ecx, [esp + 0x18]
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x4dcd7f
mov word [eax], 0x202c
add dword [esp + 0x28], 2
mov dword [esp + 0x44], str._unknown_flags:_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], ebx
lea ecx, [esp + 0x18]
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
mov eax, dword [esp + 0x38]
test byte [eax], 1
jne 0x4dcdd0
mov ecx, dword [eax + 8]
mov dword [esp + 0x10], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 8], xmm0
lea ecx, [esp + 0x18]
call fcn.005507e6
test byte [esp + 0x90], 1
jne 0x4dce0a
jmp 0x4dce19
mov ebx, dword [eax + 4]
mov esi, dword [eax + 8]
cmp ebx, 0xa
ja 0x4dc409
mov eax, ebx
add al, bl
mov byte [esp + 8], al
lea eax, [esp + 9]
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
lea ecx, [esp + 0x18]
call fcn.005507e6
test byte [esp + 0x90], 1
je 0x4dce19
push dword [esp + 0x98]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov ecx, edi
push 1
lea eax, [esp + 0xc]
push eax
call fcn.0045c360
mov ecx, dword [edi]
mov edx, dword [edi + 4]
lea edx, [edx + edx*2]
mov esi, dword [eax + 8]
mov dword [ecx + edx*4 + 8], esi
movsd xmm0, qword [eax]
movsd qword [ecx + edx*4], xmm0
mov dword [eax + 8], 0
mov dword [eax], 0
mov dword [eax + 4], 0
inc dword [edi + 4]
test byte [esp + 8], 1
je 0x4dce69
push dword [esp + 0x10]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebp + 8]
mov ebx, dword [eax + 4]
mov ecx, dword [esp + 0x78]
sub ebx, ecx
add dword [eax], ecx
mov dword [eax + 4], ebx
lea esi, [esp + 0xa0]
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x80], 1
je 0x4dbdd0
push dword [esp + 0x88]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x4dbdd0
test ebx, ebx
je 0x4dcf39
push 0x20
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], 0x21
mov dword [esp + 0x44], 0x1f
movups xmm0, xmmword [0x55fe5c]
movups xmmword [eax + 0xf], xmm0
movups xmm0, xmmword [str._corrupted_GNU_PROPERTY_TYPE_0_]
movups xmmword [eax], xmm0
mov byte [eax + 0x1f], 0
mov ecx, edi
push 1
lea eax, [esp + 0x44]
push eax
call fcn.0045c360
mov ecx, dword [edi]
mov edx, dword [edi + 4]
lea edx, [edx + edx*2]
mov esi, dword [eax + 8]
mov dword [ecx + edx*4 + 8], esi
movsd xmm0, qword [eax]
movsd qword [ecx + edx*4], xmm0
mov dword [eax + 8], 0
mov dword [eax], 0
mov dword [eax + 4], 0
inc dword [edi + 4]
test byte [esp + 0x40], 1
je 0x4dcf39
push dword [esp + 0x48]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, ebx
call fcn.00407790
lea ecx, [esp + 8]
call fcn.00407790
int3