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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd0
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 + 0x7c], eax
mov ebx, dword [ebp + 0xc]
mov dword [esp + 0x10], ecx
jmp 0x49cbb0
mov eax, dword [esp + 0x80]
cmp dword [esp + 0x78], eax
mov eax, 0
sbb eax, dword [esp + 0x84]
xorps xmm0, xmm0
jb 0x49dc15
cmp ebx, 8
jb 0x49dc15
lea eax, [ebp + 8]
mov ecx, dword [eax]
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
mov dword [esp + 0x70], edx
bswap edx
mov dword [esp + 0x74], edx
mov dword [esp + 0x3c], esi
bswap esi
add ebx, 0xfffffff8
add ecx, 8
mov dword [eax + 4], ebx
mov dword [esp + 0x6c], ecx
mov dword [eax], ecx
xor eax, eax
mov edi, esi
add edi, 3
setb al
mov dword [esp + 0x84], eax
and edi, 0xfffffffc
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x90], 0
movups xmmword [esp + 0xac], xmm0
mov byte [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 1
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xa8], eax
lea eax, [esp + 0x88]
mov dword [esp + 0xc8], eax
lea ecx, [esp + 0xa8]
push 0
push 0
push 0
call fcn.005507ce
mov dword [esp + 0x78], ebx
mov dword [esp + 0x80], edi
cmp ebx, edi
mov eax, 0
sbb eax, dword [esp + 0x84]
jae 0x49cd10
mov dword [esp + 0x44], str._corrupt_type__0x_x__datasz:_0x_x_
mov dword [esp + 0x40], 0x55c9a8
mov eax, dword [esp + 0x74]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], esi
lea esi, [esp + 0xa8]
mov ecx, esi
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
mov edi, dword [esp + 0x10]
mov ecx, edi
push 1
push dword [esp + 0xcc]
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 0x49ce00
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 + 0x78]
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x88], 1
je 0x49cb90
jmp 0x49d402
mov dword [esp + 0x38], esi
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0xa0], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 1
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x98]
mov dword [esp + 0x34], eax
lea esi, [esp + 0x14]
mov ecx, esi
push 0
push 0
push 0
call fcn.005507ce
mov eax, dword [esp + 0x74]
cmp eax, 0xc0010000
jg 0x49ce20
cmp eax, 0xc0008000
jg 0x49ce3f
cmp eax, 0xc0000000
je 0x49cda2
cmp eax, 0xc0000002
jne 0x49d02f
xor ecx, ecx
cmp dword [esp + 0x70], 0xc0
sete cl
mov eax, str.x86_feature:
mov edx, str.aarch64_feature:
cmove eax, edx
lea edi, [ecx*4 + 0xd]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
sub edx, ecx
cmp edi, edx
jbe 0x49cf34
mov ecx, esi
push edi
push eax
call fcn.005507d4
cmp dword [esp + 0x3c], 0x4000000
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
je 0x49cf59
jmp 0x49d2ac
mov ecx, dword [eax + 4]
mov esi, dword [eax + 8]
cmp ecx, 0xa
ja 0x49ce83
mov eax, ecx
add al, cl
mov byte [ebx], al
inc ebx
jmp 0x49ceb6
test eax, eax
jg 0x49cece
cmp eax, 0xc0010001
je 0x49cf06
cmp eax, 0xc0010002
je 0x49ce55
jmp 0x49d02f
cmp eax, 0xc0008001
je 0x49cf06
cmp eax, 0xc0008002
jne 0x49d02f
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 7
ja 0x49cfaf
mov ecx, esi
push 8
push str.x86_ISA
call fcn.005507d4
mov ecx, dword [eax + 0x10]
mov esi, eax
add esi, 0x10
jmp 0x49cfcd
cmp ecx, 0xfffffff0
jae 0x49dcac
mov edi, ecx
or edi, 0xf
lea eax, [edi + 1]
push eax
mov dword [esp + 0x78], ecx
call sub.libc.dll_operator_new_unsigned_int_
mov ecx, dword [esp + 0x78]
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 + 0x10]
inc ecx
push ecx
push esi
push ebx
call sub.msvcrt.dll_memmove
add esp, 0xc
inc dword [edi + 4]
mov ebx, dword [esp + 0x78]
jmp 0x49d3e6
cmp eax, 1
je 0x49d009
cmp eax, 2
jne 0x49d02f
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 0x13
ja 0x49d1f6
mov ecx, esi
push 0x14
push str.no_copy_on_protected
call fcn.005507d4
jmp 0x49d20c
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 0xb
ja 0x49d08a
mov ecx, esi
push 0xc
push str.x86_feature
call fcn.005507d4
mov ecx, dword [eax + 0x10]
mov esi, eax
add esi, 0x10
jmp 0x49d0af
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esp + 0x24], edi
cmp dword [esp + 0x3c], 0x4000000
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
jne 0x49d2ac
mov eax, dword [esp + 0x6c]
mov ebx, dword [eax]
test ebx, ebx
je 0x49d1be
bswap ebx
cmp dword [esp + 0x70], 0xc0
jne 0x49d416
test bl, 1
je 0x49d80e
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d7d6
mov ecx, esi
push 3
push 0x55ff0c
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x49d7ed
jmp 0x49d2cc
mov dword [eax + 4], 0x20415349
mov dword [eax], 0x20363878
mov ecx, dword [esp + 0x24]
add ecx, 8
mov dword [esp + 0x24], ecx
mov eax, esi
lea esi, [esp + 0x24]
xor ebx, ebx
cmp dword [esp + 0x70], 0x28000c0
sete bl
mov edx, str.used:
mov edi, str.needed:
cmove edx, edi
lea ebx, [ebx*2 + 6]
mov edi, dword [eax + 0xc]
sub edi, ecx
cmp ebx, edi
jbe 0x49d0e4
mov ecx, eax
push ebx
push edx
call fcn.005507d4
jmp 0x49d0f1
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 0xb
ja 0x49d22d
mov ecx, esi
push 0xc
push str.stack_size:
call fcn.005507d4
jmp 0x49d246
mov dword [esp + 0x44], str._application_specific_type_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], eax
mov ecx, esi
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
mov eax, dword [esp + 0x34]
test byte [eax], 1
jne 0x49d318
mov ecx, dword [eax + 8]
mov dword [esp + 8], ecx
movsd xmm0, qword [eax]
movsd qword [esp], xmm0
mov edi, dword [esp + 0x10]
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x98], 1
jne 0x49d374
jmp 0x49d383
mov dword [eax + 8], 0x20657275
mov dword [eax + 4], 0x74616566
mov dword [eax], 0x20363878
mov ecx, dword [esp + 0x24]
add ecx, 0xc
mov dword [esp + 0x24], ecx
mov eax, esi
lea esi, [esp + 0x24]
xor ebx, ebx
cmp dword [esp + 0x70], 0x18000c0
sete bl
mov edx, str.used:
mov edi, str.needed:
cmove edx, edi
lea ebx, [ebx*2 + 6]
mov edi, dword [eax + 0xc]
sub edi, ecx
cmp ebx, edi
jbe 0x49d153
mov ecx, eax
push ebx
push edx
call fcn.005507d4
jmp 0x49d160
push ebx
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi], ebx
mov edi, dword [esp + 0x10]
lea esi, [esp + 0x14]
cmp dword [esp + 0x3c], 0x4000000
mov eax, dword [esp + 0x38]
jne 0x49d2ac
mov eax, dword [esp + 0x6c]
mov ebx, dword [eax]
test ebx, ebx
je 0x49d1be
bswap ebx
test bl, 1
je 0x49d498
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 0xe
ja 0x49d44e
mov ecx, esi
push 0xf
push str.x86_64_baseline
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x49d477
jmp 0x49d2cc
push ebx
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi], ebx
mov edi, dword [esp + 0x10]
lea esi, [esp + 0x14]
cmp dword [esp + 0x3c], 0x4000000
mov eax, dword [esp + 0x38]
jne 0x49d2ac
mov eax, dword [esp + 0x6c]
mov ebx, dword [eax]
test ebx, ebx
je 0x49d1be
bswap ebx
test bl, 1
je 0x49d508
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d4d0
mov ecx, esi
push 3
push 0x55ff51
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x49d4e7
jmp 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 5
ja 0x49d1e0
mov ecx, esi
push 6
push str._None_
call fcn.005507d4
jmp 0x49d2cc
mov word [eax + 4], 0x3e65
mov dword [eax], 0x6e6f4e3c
add dword [esp + 0x24], 6
jmp 0x49d2cc
movups xmm0, xmmword [str.no_copy_on_protected]
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0x64657463
add dword [esp + 0x24], 0x14
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x49d2cc
mov dword [esp + 0x44], str.__corrupt_length:_0x_x_
jmp 0x49d2b4
mov dword [eax + 8], 0x203a657a
mov dword [eax + 4], 0x6973206b
mov dword [eax], 0x63617473
add dword [esp + 0x24], 0xc
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
cmp ecx, 0x4000000
jne 0x49d2ac
mov eax, dword [esp + 0x6c]
mov eax, dword [eax]
bswap eax
mov dword [esp + 0x40], str.0:x
mov dword [esp + 0x44], 5
lea ecx, [esp + 0x60]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], 1
mov dword [esp + 0x50], 0x55ffd4
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], 0
lea eax, [esp + 0x50]
mov dword [esp + 0x60], eax
mov ecx, esi
lea eax, [esp + 0x40]
push eax
call fcn.00550804
jmp 0x49d2cc
mov dword [esp + 0x44], str._corrupt_length:_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], eax
mov ecx, esi
lea eax, [esp + 0x40]
push eax
call fcn.005507fe
mov eax, dword [esp + 0x34]
test byte [eax], 1
jne 0x49d300
mov ecx, dword [eax + 8]
mov dword [esp + 8], ecx
movsd xmm0, qword [eax]
movsd qword [esp], xmm0
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x98], 1
jne 0x49d374
jmp 0x49d383
mov ebx, dword [eax + 4]
mov esi, dword [eax + 8]
cmp ebx, 0xa
ja 0x49d327
mov eax, ebx
add al, bl
mov byte [esp], al
lea eax, [esp + 1]
jmp 0x49d353
mov ebx, dword [eax + 4]
mov esi, dword [eax + 8]
cmp ebx, 0xa
mov edi, dword [esp + 0x10]
jbe 0x49d30b
cmp ebx, 0xfffffff0
jae 0x49dcb3
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 + 8], eax
add edi, 2
mov dword [esp], edi
mov dword [esp + 4], ebx
mov edi, dword [esp + 0x10]
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
lea esi, [esp + 0x14]
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x98], 1
je 0x49d383
push dword [esp + 0xa0]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov ecx, edi
push 1
lea eax, [esp + 4]
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], 1
je 0x49d3d2
push dword [esp + 8]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebp + 8]
mov ebx, dword [eax + 4]
mov ecx, dword [esp + 0x80]
sub ebx, ecx
add dword [eax], ecx
mov dword [eax + 4], ebx
lea esi, [esp + 0xa8]
mov ecx, esi
call fcn.005507e6
test byte [esp + 0x88], 1
je 0x49cb90
push dword [esp + 0x90]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x49cb90
test bl, 1
je 0x49d87e
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d846
mov ecx, esi
push 3
push 0x55ff14
call fcn.005507d4
and ebx, 0xfffffffe
jne 0x49d85d
jmp 0x49d2cc
mov dword [eax + 0xb], 0x656e696c
mov dword [eax + 8], 0x6c657361
mov dword [eax + 4], 0x622d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x24], 0xf
and ebx, 0xfffffffe
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d5c8
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
je 0x49d5db
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 8
ja 0x49d538
mov ecx, esi
push 9
push str.x86_64_v2
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x49d557
jmp 0x49d2cc
mov byte [eax + 2], 0x36
mov word [eax], 0x3878
add dword [esp + 0x24], 3
and ebx, 0xfffffffe
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d659
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
je 0x49d66c
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d582
mov ecx, esi
push 3
push 0x55ff55
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x49d599
jmp 0x49d2cc
mov byte [eax + 8], 0x32
mov dword [eax + 4], 0x762d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x24], 9
and ebx, 0xfffffffd
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d6e2
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 4
jne 0x49d5e4
jmp 0x49d6f5
mov byte [eax + 2], 0x37
mov word [eax], 0x3878
add dword [esp + 0x24], 3
and ebx, 0xfffffffd
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d74d
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 4
jne 0x49d675
jmp 0x49d760
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 2
jne 0x49d4a1
test bl, 4
je 0x49d6f5
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 8
ja 0x49d60b
mov ecx, esi
push 9
push str.x86_64_v3
call fcn.005507d4
and ebx, 0xfffffffb
jne 0x49d62a
jmp 0x49d2cc
mov byte [eax + 8], 0x33
mov dword [eax + 4], 0x762d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x24], 9
and ebx, 0xfffffffb
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d8b6
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 8
jne 0x49d6fe
jmp 0x49dbfc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 2
jne 0x49d511
test bl, 4
je 0x49d760
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d69c
mov ecx, esi
push 3
push 0x55ff59
call fcn.005507d4
and ebx, 0xfffffffb
jne 0x49d6b3
jmp 0x49d2cc
mov byte [eax + 2], 0x58
mov word [eax], 0x4d4d
add dword [esp + 0x24], 3
and ebx, 0xfffffffb
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d8ce
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 8
jne 0x49d769
jmp 0x49d8e1
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 4
jne 0x49d5e4
test bl, 8
je 0x49dbfc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 8
ja 0x49d729
mov ecx, esi
push 9
push str.x86_64_v4
call fcn.005507d4
and ebx, 0xfffffff7
jne 0x49dbd3
jmp 0x49d2cc
mov byte [eax + 8], 0x34
mov dword [eax + 4], 0x762d3436
mov dword [eax], 0x2d363878
add dword [esp + 0x24], 9
and ebx, 0xfffffff7
jne 0x49dbd3
jmp 0x49d2cc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 4
jne 0x49d675
test bl, 8
je 0x49d8e1
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d790
mov ecx, esi
push 3
push 0x55ff5d
call fcn.005507d4
and ebx, 0xfffffff7
jne 0x49d7a7
jmp 0x49d2cc
mov byte [eax + 2], 0x4d
mov word [eax], 0x4d58
add dword [esp + 0x24], 3
and ebx, 0xfffffff7
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d98c
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 0x10
jne 0x49d8ea
jmp 0x49d99f
mov byte [eax + 2], 0x49
mov word [eax], 0x5442
add dword [esp + 0x24], 3
and ebx, 0xfffffffe
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49d9fd
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
je 0x49dbfc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d953
mov ecx, esi
push 3
push 0x55ff10
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x49dbd3
jmp 0x49d2cc
mov byte [eax + 2], 0x54
mov word [eax], 0x4249
add dword [esp + 0x24], 3
and ebx, 0xfffffffe
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49da15
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 2
je 0x49dbfc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 4
ja 0x49d96f
mov ecx, esi
push 5
push str.SHSTK
call fcn.005507d4
and ebx, 0xfffffffd
jne 0x49dbd3
jmp 0x49d2cc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 8
jne 0x49d6fe
jmp 0x49dbfc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 8
jne 0x49d769
test bl, 0x10
je 0x49d99f
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d911
mov ecx, esi
push 3
push 0x55ff61
call fcn.005507d4
and ebx, 0xffffffef
jne 0x49d928
jmp 0x49d2cc
mov byte [eax + 2], 0x4d
mov word [eax], 0x4d59
add dword [esp + 0x24], 3
and ebx, 0xffffffef
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49da2d
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, 0x20
jne 0x49d9a8
jmp 0x49da4c
mov byte [eax + 2], 0x43
mov word [eax], 0x4150
add dword [esp + 0x24], 3
and ebx, 0xfffffffd
jne 0x49dbd3
jmp 0x49d2cc
mov byte [eax + 4], 0x4b
mov dword [eax], 0x54534853
add dword [esp + 0x24], 5
and ebx, 0xfffffffd
jne 0x49dbd3
jmp 0x49d2cc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 0x10
jne 0x49d8ea
test bl, 0x20
je 0x49da4c
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 2
ja 0x49d9c7
mov ecx, esi
push 3
push 0x55ff65
call fcn.005507d4
jmp 0x49d9d5
mov byte [eax + 2], 0x4d
mov word [eax], 0x4d5a
add dword [esp + 0x24], 3
and ebx, 0xffffffdf
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49da42
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x49da4c
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 2
jne 0x49d817
jmp 0x49dbfc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 2
jne 0x49d887
jmp 0x49dbfc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 0x20
jne 0x49d9a8
jmp 0x49da4c
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, 0x40
je 0x49daa1
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 3
ja 0x49da70
mov ecx, esi
push 4
push str.FXSR
call fcn.005507d4
jmp 0x49da7b
mov dword [eax], 0x52535846
add dword [esp + 0x24], 4
and ebx, 0xffffffbf
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49dafe
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
test bl, bl
jns 0x49db18
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 4
ja 0x49dac4
mov ecx, esi
push 5
push str.XSAVE
call fcn.005507d4
jmp 0x49dad3
mov byte [eax + 4], 0x45
mov dword [eax], 0x56415358
add dword [esp + 0x24], 5
and ebx, 0xffffff7f
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49db0e
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x49db18
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test bl, bl
js 0x49daa5
jmp 0x49db18
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test ebx, 0x100
je 0x49db86
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 7
ja 0x49db3f
mov ecx, esi
push 8
push str.XSAVEOPT
call fcn.005507d4
jmp 0x49db51
mov dword [eax + 4], 0x54504f45
mov dword [eax], 0x56415358
add dword [esp + 0x24], 8
and ebx, 0xfffffeff
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49db7c
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x49db86
mov word [eax], 0x202c
add dword [esp + 0x24], 2
test ebx, 0x200
jne 0x49db97
test ebx, ebx
jne 0x49dbfc
jmp 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 5
ja 0x49dbb6
mov ecx, esi
push 6
push str.XSAVEC
call fcn.005507d4
jmp 0x49dbc7
mov word [eax + 4], 0x4345
mov dword [eax], 0x56415358
add dword [esp + 0x24], 6
and ebx, 0xfffffdff
je 0x49d2cc
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, eax
cmp ecx, 1
ja 0x49dbf2
mov ecx, esi
push 2
push 0x55a0ac
call fcn.005507d4
jmp 0x49dbfc
mov word [eax], 0x202c
add dword [esp + 0x24], 2
mov dword [esp + 0x44], str._unknown_flags:_0x_x_
mov dword [esp + 0x40], 0x55ffc4
mov dword [esp + 0x48], ebx
jmp 0x49d2c0
test ebx, ebx
je 0x49dca4
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 0x49dca4
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
mov ecx, esp
call fcn.00407790
int3